Описание конфигурационных ключей и флагов#

Запуск sowa-config и работа с конфигурационными файлами и ресурсами должны происходить под учетной записью sowacfg. Для учетной записи необходимо назначить пароль, т.к. по умолчанию он отсутствует.

Для запуска необходимо выполнить команду под пользователем sowacfg:

sowa-config

использовав при этом один из следующих ключей (или их комбинацию):

  1. -c | --config config_file [--clean] [--log-type=arg] [--log-level=arg] [–quiet] [--environment=file]  [--test-config]

    Конфигурирование ранее созданного профиля согласно указанной конфигурации (config_file - путь к файлу с конфигурацией. Имя профиля указано в значении параметра profile). Флаг --clean указывает на необходимость конфигурирования «с нуля» (удаляет каталог с результирующими конфигурационными артефактами SOWA). После успешного конфигурирования, параметр профиля «configured» поменяет свое значение на «true».

  2. --check-permissions [--quiet]

    Проверка правильности выдачи прав на команды и директории для пользователя, под которым запускается конфигуратор.

  3. --add-profile profile_name [--log-type=arg] [--log-level=arg] [--quiet]

    В систему добавляется профиль с указанным именем, как объект администрирования. Конфигурирование профиля не производится (флаг configured == false).

  4. --del-profile profile_name [--clean] [--log-type=arg] [--log-level=arg] [--quiet]

    Удаление из системы профиля с заданным именем. Удаление запущенного профиля невозможно. Флаг –clean указывает на необходимость удалить пользовательские ресурсы данного профиля.

  5. --show-profiles [--log-type=arg] [--log-level=arg] [--quiet]

    Вывод списка доступных для конфигурирования профилей и их параметров.

  6. --show-upstreams profile_name [--log-type=arg] [--log-level=arg] [--quiet]

    Вывод списка используемых upstream для профиля.

  7. --change-upstreams profile_name service_id config_file [--log-type=arg] [--log-level=arg] [--quiet]

    Изменение upstream для выбранного сервиса.

  8. --show-certificates profile_name (service_id) [--log-type=arg] [--log-level=arg] [--quiet]

    1. Вывод всех сертификатов конкретного профиля (группировка по сертификатам):

      [user@user]$ sowa-config --show-certificates profile
      Services "service_main_proxy_1:4444, service_http_mq_proxy_1:4456, service_http_mq_proxy_2:4457, service_http_mq_proxy_3:4458,
        service_http_mq_proxy_4:4459" use certificate "certs/cert.pem":
          subject= /C=XX/ST=XXXXXXXX region/L=XXXXXXXX/O=XXXXXXXX/CN=XXXXXXXX XXXXXXXX/emailAddress=XXXXXXXX@mycompany.ru
          notBefore=XXX XX XX:XX:XX XXXX GMT
          notAfter=XXX XX XX:XX:XX XXXX GMT
          serial=XXXXXXXXXXXXXXXX
          issuer= /C=XX/ST=XXXXXXXX region/L=XXXXXXXX/O=XXXXXXXX/CN=XXXXXXXX XXXXXXXX/emailAddress=XXXXXXXX@mycompany.ru
      
    2. Вывод сертификатов для конкретного сервиса, конкретного профиля (на вход принимается имя профиля, ID сервиса):

      [user@user]$ sowa-config --show-certificates profile
      Service "service_main_proxy_1" use certificates:
        "sbtopbs0006.pem":
          subject= /CN=XXXXXXXX
          notBefore=XXX XX XX:XX:XX XXXX GMT
          notAfter=XXX XX XX:XX:XX XXXX GMT
          serial=XXXXXXXXXXXXXXXX
          issuer= /CN=XXXXXXXX
       
        "client.pem":
          subject= /DC=XX/DC=XX/DC=XX/CN=XX Test Issuing CA 2
          notBefore=XXX XX XX:XX:XX XXXX GMT
          notAfter=XXX XX XX:XX:XX XXXX GMT
          serial=XXXXXXXXXXXXXXXX
          issuer= /CN=Test Root CA 2
       
          subject= /CN=Test Root CA 2
          notBefore=XXX XX XX:XX:XX XXXX GMT
          notAfter=XXX XX XX:XX:XX XXXX GMT
          serial=XXXXXXXXXXXXXXXX
          issuer= /CN=Test Root CA 2
      
  9. --status profile_name [--quiet]

    Вывод состояния указанного профиля (запущен/остановлен, наличие ошибок).

  10. -r | --run profile_name [--debug] [--log-type=arg] [--log-level=arg] [--host=arg] [--port=art] [--quiet]

    Запуск указанного профиля, согласно добавленной конфигурации. Запуск несконфигурированного профиля невозможен. После запуска профиля, параметр «process» принимает значение pid запущенного процесса.

  11. -s | --stop profile_name [--log-type=arg] [--log-level=arg] [–quiet] [--force] [--kill]

    Остановка указанного профиля.

  12. --quit profile_name [--log-type=arg] [--log-level=arg] [--quiet]

    Отключение SOWA без разрыва активных соединений.

  13. --reload profile_name [--log-type=arg] [--log-level=arg] [--quiet]

    Перезагрузка SOWA с указанным профилем без разрыва активных соединений. Существующий конфигурационный файл будет прочитан заново, для применения текущих изменений.

  14. --restart profile_name [--log-type=arg] [--log-level=arg] [--quiet]

    Остановка и запуск указанного профиля. Данный ключ не включает в себя флаг –debug напрямую. Если ранее профиль был запущен с флагом –debug, то и ключ –restart отработает в таком же режиме.

  15. --recovery arg [--log-type=arg] [--log-level=arg] [--quiet]

    Восстановление из ранее созданного backup. Флаг arg может принимать следующие значения:

    • system — восстановление системных файлов;

    • config — восстановление конфигурационных файлов;

    • controller — восстановление директории контроллера.

    Процедура резервного копирования описана в разделе «Резервное копирование».

  16. --stopall [--log-type=arg] [--log-level=arg] [--quiet]

    Остановка всех профилей.

  17. --runall [--log-type=arg] [--log-level=arg] [--quiet]

    Запуск всех профилей, остановленных с помощью ключа –stopall.

  18. -h | --help

    Вызов справки.

  19. --compile-config [--log-type=arg] [--environment=file] file_name compile_file_name

    Получение конфигурационного файла с отработанными вложениями. File_name указывает путь к исходному конфигурационному файлу, compile_file_name определяет путь для сохранения скомпилированного конфигурационного файла.

  20. --set-healthcheck profile_name 'response_status' 'response_body'

    Установка статуса ответа и тела ответа для встроенного healthcheck-сервиса профиля.

  21. -v | --version

    Вывод номера и версии программы.

  22. --quiet

    Не запрашивать ввод информации пользователем.

  23. -t | --test-config

    Проверка конфигурационного файла.

    Команда:

    sowa-config -c test1.yml --test-config
    

    Результат:

    Profile "test1" can be successfully configured.
    

    Команда:

    sowa-config -c test2.yml --test-config
    

    Результат:

    nginx: [emerg] host not found in upstream "some.random.host:9999" in /sowarun/tmp/test2/system/sowa.conf:123
    nginx: configuration file /sowarun/tmp/test2/system/sowa.conf test failed
    Failed to configure profile: Failed to check profile configuration file
    
  24. --clean

    Очистка от предыдущих конфигурационных артефактов.

  25. --log-type arg

    Указание типа логирования для конфигуратора. Флаг arg может принимать следующие значения:

    • file — логирование осуществляется в каталог /sowalogs/<profile_name>;

    • syslog — логирование осуществляется в системный файл. При использовании типа логирования syslog возможно также использовать следующие ключи:

      • –host arg — адрес хоста для логирования в syslog;

      • –port arg — номер порта для логирования.

    По умолчанию тип логирования syslog используется на порту localhost:514.

    О правилах установки типа логирования для конфигурационного файла можно ознакомиться в разделе «Базовая конфигурация».

  26. --log-level arg

    Указание уровня логирования для конфигуратора. Флаг arg может принимать следующие значения:

    • debug;

    • info — используется по умолчанию;

    • warning;

    • error;

    • critical.

    О правилах установки уровня логирования для конфигурационного файла можно ознакомиться в разделе «Базовая конфигурация».

  27. --debug

    Запуск SOWA в режиме отладки.

  28. -e |  --environment [ENVFILE [ENVFILE ...]]

    В значении флага указывается путь к файлу(ам) среды с параметрами.

    sowa-config -c path_to_profile/profile.yml -e path_to_listValue/list_value
    
  29. -m | --manifest [MANIFEST_FILE]

    В значении флага указывается путь к файлу с манифестом профиля

    sowa-config -c path_to_profile/profile.yml -e path_to_listValue/list_value -m path_to_manifest/manifest.yml
    
  30. --update-agent-status

    Отображение статуса сервиса update-agent:

    sowa-config --update-agent-status
    
  31. --update-agent-enable

    Запуск сервиса update-agent:

    sowa-config --update-agent-enable
    
  32. --update-agent-disable

    Остановка сервиса update-agent:

    sowa-config --update-agent-disable