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

Запуск 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]

    Восстановление из ранее созданного бэкапа. Флаг 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