Документация NovikovTV Help

Установка и деплой

Начало работы

  1. Установить Ansible (работает только в Linux. В Windows нужно использовать WSL, например, Ubuntu 22.04).

  2. Убедиться, что версия Python выше 2.7.

  3. Установить pip, если он ещё не установлен:

    apt install python3-pip
  4. Установить Ansible и passlib:

    pip3 install ansible passlib
  5. Для настройки PostgreSQL дополнительно установить коллекцию:

    ansible-galaxy collection install community.postgresql --force

Конфигурация

  1. Клонировать репозиторий:

    git clone https://github.com/asianetsievskaya/ansible.git
  2. Перейти в директорию:

    cd ansible/ubuntu/
  3. Отредактировать файл inventory.ini, указав IP-адрес, пользователя и пароль.

Формат строки:

master ansible_user=root ansible_host=82.146.54.149 ansible_password=H2Zb9JxZoTLvkpvskW5T

Где:

  • master — произвольное имя хоста

  • ansible_host — IP-адрес или домен сервера

  • ansible_user — имя пользователя для подключения (обычно root)

  • ansible_password — пароль пользователя

Запуск

Для запуска настройки сервера использовать команду:

ansible-playbook -i inventory.ini <имя плейбука>.yml

Доступны два плейбука:

  • server-init.yml (базовая настройка)

  • server-init-with-postgresql.yml (с настройкой PostgreSQL)

Результат

Пароль пользователя admin будет:

  • Выведен в консоль, например:

    TASK [create_admin_user : Print admin's password] ************************************************* ok: [master] => { "msg": "Password for admin: jtZBsDXvzvmlHdU1X03M" }
  • Сохранён в файлы:

    • /home/<admin_username>/password.txt

    • /home/<admin_username>/password-postgresql.txt (если установлен PostgreSQL)

Вывод в консоль

Будет что-то вроде:

PLAY [Ubuntu servers init] *********************************************************************** TASK [Gathering Facts] **************************************************************************** ok: [master] TASK [apt_base_setup : Apt update] **************************************************************** changed: [master] TASK [apt_base_setup : Apt upgrade] *************************************************************** ok: [master] ... TASK [ssh_config : Disabling password authentication in sshd_config] ***************************** changed: [master] RUNNING HANDLER [ssh_config : Restart sshd] ******************************************************** changed: [master] PLAY RECAP **************************************************************************************** master : ok=18 changed=10 unreachable=0 failed=0 skipped=0
30 April 2025