Настройка точек распространения

Описание

Точки распространения — это узлы или определенные места в инфраструктуре, через которые распространяются обновления или выполняются задачи автоматизации

Примечание

Они играют ключевую роль в развертывании конфигураций и управлении большим количеством устройств

Основные возможности точек распространения:

  • Эффективность: параллельное выполнение задач на нескольких узлах помогает ускорить процесс развертывания

  • Масштабируемость: возможность обрабатывать большое количество узлов без потери производительности

Подключение точки распространения

Для подключения точки распространения к серверу RuDesktop выполните следующие шаги:

1. Создание точки распространения в веб-интерфейсе

Создайте точку распространения на странице Точки распространения в веб-интерфейсе

2. Настройка главного сервера

Чтобы подключить точку распространения к главному серверу с использованием установленного Redis и Postgres, необходимо предоставить внешнее подключение к этим службам

Для этого выполните следующие действия:

Чтобы открыть доступ к Redis и защитить его паролем, отредактируйте файл конфигурации, который находится по пути /etc/rudesktop/redis.conf

В файле найдите строку, начинающуюся с bind, и укажите IP-адрес сервера, например:

bind 127.0.0.1 192.168.10.10 -::1

И добавьте пароль

requirepass <ваш_пароль>

Подсказка

Не забудьте заменить <ваш_пароль> на актуальный и сложный пароль

Важно

Настройка requirepass потребует пароля для всех подключений, что усилит безопасность Redis-сервера

В файле /etc/default/rudesktop определите переменную, которая используется для указания адреса Redis:

REDIS_URL='redis://:<ваш_пароль>@127.0.0.1:32459'

Также вы можете развернуть Redis и Postgres отдельно от главного сервера RuDesktop по инструкциям и подключить главный сервер и точку распространения к ним

3. Настройка точки распространения

  1. Добавьте репозиторий

    mkdir -p /usr/share/keyrings/
    wget -qO - https://storage.rudesktop.ru/repos/stable2.9/rudesktop.gpg | sudo gpg --dearmor -o /usr/share/keyrings/rudesktop.gpg
    echo "deb [signed-by=/usr/share/keyrings/rudesktop.gpg] https://storage.rudesktop.ru/repos/stable2.9 stable2.9 non-free" | sudo tee /etc/apt/sources.list.d/rudesktop.list
    apt-get update -y
    
  2. Установите сервер RuDesktop с переменной INSTALL_MODE=executor на узле:

    INSTALL_MODE=executor apt install rudesktop-server -y
    
  3. Откройте файл по пути /etc/default/rudesktop и добавьте следующее:

    SETUP_SERVER='Адрес главного сервера'
    
    REDIS_URL='Адрес и порт Redis'
    
    POSTGRES_HOST='Адрес БД'
    POSTGRES_PORT='Порт БД'
    POSTGRES_DB='Имя БД'
    POSTGRES_USER='Пользователь БД'
    POSTGRES_PASSWORD='Пароль БД'
    

    Важно

    • SETUP_SERVER — укажите адрес главного сервера, например 192.168.10.10

    • REDIS_URL — укажите адрес и порт Redis, если необходимо с паролем, например redis://:password@192.168.10.10:32459

    • POSTGRES — укажите настройки Postgres

  4. Выполните команду:

    rude setup_server --skip-relay Адрес_главного_сервера
    
  5. Проверьте доступность Redis (не обязательно):

    Важно

    Для того чтобы выполнить команду, на узле необходимо установить пакет redis-tools

    redis-cli -h 192.168.10.10 -p 32459
    

    Поскольку для Redis установлен пароль, использование пароля напрямую в командной строке может представлять угрозу безопасности

    Это связано с тем, что команды, выполненные в терминале, могут сохраняться в истории или быть видимыми другим пользователям системы через список процессов

    Поэтому рекомендуется выполнить авторизацию безопасным способом

    AUTH <ваш_пароль>
    

    Если в ответ возвращается OK, это указывает на успешную авторизацию

    После успешной авторизации введите команду PING. Если ответом является PONG, это означает, что узел успешно установил соединение с Redis

  6. Перезагрузите узел командой:

    rude restart
    
  7. Запустите задачу и убедитесь, что политики запустились на точке распространения, для этого перейдите на страницу Очередь задач и в колонке Точка распространения должно быть наименование узла