chef-backend-ctl
Кластер HA бэкенда Chef Infra Server включает утилиту командной строки chef-backend-ctl. Этот инструмент командной строки используется для управления кластером HA бэкенда Chef Infra Server, запуска и остановки отдельных служб и просмотра логов Chef Infra Server.
backup
Используйте подкоманду backup для резервного копирования данных узла в кластере HA бэкенда. Эта команда обычно выполняется на узле-фолловере. Используйте опцию --force для выполнения этой команды на всех узлах в кластере HA бэкенда. Резервная копия создается в формате tar.gz и находится в /var/opt/chef-backup/.
Синтаксис
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl backup (options)
Опции
Эта подкоманда имеет следующие опции:
--with-externalИспользуется для указания того, что данные внешней базы данных PostgreSQL должны быть удалены.
Примеры
Резервное копирование узла в кластере HA бэкенда
Из узла-фолловера выполните следующую команду:
chef-backend-ctl backup
create-cluster
Используйте подкоманду create-cluster для инициализации состояния кластера, включая хранилище данных PostgreSQL, и для загрузки первого узла в кластере HA бэкенда или для помощи в восстановлении всего кластера HA бэкенда.
Синтаксис
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl create-cluster (options)
Опции
Эта подкоманда имеет следующие опции:
--elasticsearch-wait-timeМаксимальное время (в секундах) ожидания запуска Elasticsearch. Значение по умолчанию:
30.--etcd-wait-timeМаксимальное время (в секундах) ожидания запуска etcd. Значение по умолчанию:
30.--quorum-loss-recovery-
Сбрасывает идентификатор кластера в etcd для данного узла.
Если узлы в кластере HA бэкенда недоступны, etcd может не смочь сформировать кластер. Если etcd не может сформировать кластер, перестройте кластер. Сначала сбросьте идентификатор кластера на активном узле, перестройте узлы, которые будут частью кластера, а затем снова присоедините перестроенные узлы к кластеру с помощью подкоманды
chef-backend-ctl join-cluster. -
-y,--yes Не запрашивать подтверждение.
Примеры
Нет.
cleanse
Подкоманда cleanse используется для сброса состояния машины в кластере HA бэкенда Chef Infra Server до состояния, в котором она находилась до первого запуска подкоманды reconfigure. Эта команда уничтожит все данные, конфигурационные файлы и логи. Программное обеспечение, установленное на диск установкой пакета, останется; запустите chef-backend-ctl reconfigure повторно для воссоздания исходных данных и конфигурационных файлов.
Синтаксис
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl cleanse
Опции
Эта подкоманда имеет следующие опции:
--with-externalИспользуется для указания того, что данные внешней базы данных PostgreSQL должны быть удалены.
Примеры
Нет.
статус-кластера
Используйте подкоманду cluster-status для получения списка всех доступных узлов, их роли (лидер, фолловер) и статуса PostgreSQL и Elasticsearch.
Синтаксис
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl cluster-status (options)
Опции
Эта подкоманда имеет следующие опции:
--jsonВозвращает информацию о состоянии кластера в формате JSON.
Примеры
Возврат данных состояния кластера в формате JSON
chef-backend-ctl cluster-status --json
demote
Используйте подкоманду demote для понижения текущего лидера в кластере HA бэкенда, после чего новый лидер выбирается из группы доступных фолловеров в кластере HA бэкенда. Эта команда:
- Завершается с кодом выхода
0, если исходный лидер был понижен, и новый лидер был успешно выбран. - Возвращает сообщение об ошибке и ненулевой код выхода, если выборы лидера предотвращены из-за отключения failover (для кластера или узла) или если новый лидер не был выбран в течение разрешенного времени.
Синтаксис
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl demote
Примеры
Нет.
force-leader
Используйте подкоманду force-leader для принудительного назначения узла, с которого выполняется команда, лидером в кластере HA бэкенда, если лидер еще не избран.
Эту команду следует запускать только если:
- Похоже, что в кластере бэкенда нет избранного и доступного лидера
- Все узлы в кластере HA бэкенда находятся в здоровом состоянии; если один (или несколько) узлов не находятся в здоровом состоянии, сначала удалите нездоровые узлы, перестройте их и затем снова присоедините к кластеру
Эта команда:
-
Выполнит подкоманду
chef-backend-ctl cluster-statusдля определения наличия лидера.Предупреждение
Узлы в кластере HA бэкенда могут быть невидимы друг для друга, когда они находятся в сетевых разрывах. Это может помешать проверке статуса кластера обнаружить существование лидера. Если узлы находятся в сетевых разрывах, чтобы предотвратить эту ситуацию, сначала выполнитеchef-backend-ctl cluster-status, а затем проверьте ожидаемое количество узлов в кластере HA бэкенда, которые находятся в здоровом состоянии иwaiting_for_leaderперед запуском этой команды. Завершается с кодом выхода
0, если узел, с которого выполняется команда, становится лидером.Возвращает сообщение об ошибке и ненулевой код выхода, если лидер уже существует.
Синтаксис
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl force-leader
Примеры
Нет.
gather-logs
Используйте подкоманду gather-logs для сбора файлов журналов для машины в кластере HA бэкенда Chef Infra Server в архив tar, который содержит все важные файлы журналов и системную информацию.
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl gather-logs
gen-sample-backend-config
Используйте подкоманду gen-sample-backend-config для генерации вывода, который содержит все настройки кластера HA бэкенда вместе со значениями по умолчанию. Используйте эту подкоманду для получения значений publish_address и vip_interface перед загрузкой нового узла для кластера HA бэкенда.
Предупреждение
etcd, elasticsearch, leaderl, и postgresql—генерируются автоматически бэкендом и должны настраиваться только под руководством специалистов Chef. Настройки конфигурации конкретных служб должны быть идентичны на всех узлах в кластере HA бэкенда, если не указано иное.Синтаксис
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl gen-sample-backend-config
Пример вывода
Следующий пример показывает результаты выполнения подкоманды chef-backend-ctl gen-sample-backend-config. Настройки и вывод будут различаться в зависимости от конфигурации. Настройки elasticsearch, etcd, leaderl, и postgresql генерируются автоматически и не должны изменяться:
fqdn = 'be1'
hide_sensitive = true
ip_version = 'ipv4'
publish_address = '10.0.2.15'
vip = '10.0.2.15'
vip_interface = 'eth0'
etcd.client_port = 2379
etcd.enable = true
etcd.log_directory = '/var/log/chef-backend/etcd'
etcd.peer_port = 2380
etcd.log_rotation.file_maxbytes = 104857600
etcd.log_rotation.num_to_keep = 10
postgresql.archive_command = ''
postgresql.archive_mode = 'off'
postgresql.archive_timeout = 0
postgresql.checkpoint_completion_target = 0.5
postgresql.checkpoint_timeout = '5min'
postgresql.checkpoint_warning = '30s'
postgresql.data_dir = '/var/opt/chef-backend/postgresql/9.5/data'
postgresql.db_superuser = 'chef_pgsql'
postgresql.effective_cache_size = '496MB'
postgresql.enable = true
postgresql.hot_standby = 'on'
postgresql.keepalives_count = 2
postgresql.keepalives_idle = 60
postgresql.keepalives_interval = 15
postgresql.log_directory = '/var/log/chef-backend/postgresql/9.5'
postgresql.log_min_duration_statement = -1
postgresql.max_connections = 350
postgresql.max_replication_slots = 12
postgresql.max_wal_senders = 12
postgresql.max_wal_size = 64
postgresql.md5_auth_cidr_addresses = '["samehost", "samenet"]'
postgresql.min_wal_size = 5
postgresql.port = 5432
postgresql.replication_user = 'replicator'
postgresql.shared_buffers = '248MB'
postgresql.shmall = 4194304
postgresql.shmmax = 17179869184
postgresql.username = 'chef_pgsql'
postgresql.wal_keep_segments = 32
postgresql.wal_level = 'hot_standby'
postgresql.wal_log_hints = 'on'
postgresql.work_mem = '8MB'
postgresql.log_rotation.file_maxbytes = 104857600
postgresql.log_rotation.num_to_keep = 10
elasticsearch.data_dir = '/var/opt/chef-backend/elasticsearch/data'
elasticsearch.enable = true
elasticsearch.heap_size = 248
elasticsearch.java_opts = ''
elasticsearch.log_directory = '/var/log/chef-backend/elasticsearch'
elasticsearch.new_size = 32
elasticsearch.plugins_directory = '/var/opt/chef-backend/elasticsearch/plugins'
elasticsearch.port = 9200
elasticsearch.scripts_directory = '/var/opt/chef-backend/elasticsearch/scripts'
elasticsearch.temp_directory = '/var/opt/chef-backend/elasticsearch/'
elasticsearch.log_rotation.file_maxbytes = 104857600
elasticsearch.log_rotation.num_to_keep = 10
leaderl.control_worker_timeout_seconds = 30
leaderl.db_timeout = 2000
leaderl.enable = true
leaderl.health_check_interval_seconds = 2
leaderl.leader_ttl_seconds = 10
leaderl.log_directory = '/var/log/chef-backend/leaderl'
leaderl.status_internal_update_interval_seconds = 5
leaderl.status_post_update_interval_seconds = 10
leaderl.log_rotation.file_maxbytes = 104857600
leaderl.log_rotation.max_messages_per_second = 1000
leaderl.log_rotation.num_to_keep = 10
leaderl.etcd_pool.cull_interval_seconds = 60
leaderl.etcd_pool.http_timeout_ms = 5000
leaderl.etcd_pool.ibrowse_options = '{inactivity_timeout, infinity}'
leaderl.etcd_pool.init_count = 10
leaderl.etcd_pool.max_age_seconds = 60
leaderl.etcd_pool.max_connection_duration_seconds = 300
leaderl.etcd_pool.max_count = 10
ssl.certificate = nil
ssl.certificate_key = nil
ssl.ciphers = (a list of ciphers, not shown)
ssl.company_name = 'YouCorp'
ssl.country_name = 'US'
ssl.data_dir = '/var/opt/chef-backend/ssl/'
ssl.duration = 3650
ssl.key_length = 2048
ssl.organizational_unit_name = 'Operations'
gen-server-config
Используйте подкоманду gen-server-config для генерации вывода для файла конфигурации /etc/opscode/chef-server.rb. Эту команду можно выполнить с любого узла в кластере HA бэкенда, но ее необходимо выполнять отдельно для каждого узла, входящего в группу фронтенда. Эта команда:
- Завершается с кодом выхода
0, если файлchef-server.rbсоздан успешно. - Возвращает сообщение об ошибке и ненулевой код выхода, если узел не был загружен или подключен, или если не указан FQDN.
Синтаксис
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl gen-server-config FQDN
Настройка фронтенда
-
На любом узле в кластере HA бэкенда выполните следующую команду для каждого узла в группе фронтенда:
chef-backend-ctl gen-server-config FQDN -f chef-server.rb.fqdnгде
FQDN— FQDN машины фронтенда. Сгенерированный файлchef-server.rbбудет содержать все необходимые значения для подключения и загрузки любого фронтенд-сервера Chef Infra Server к кластеру HA бэкенда. На каждой машине фронтенда установите пакет
chef-server-core(версия 12.4.0 или выше).На каждой машине фронтенда скопируйте сгенерированный файл
chef-server.rb.fqdn в/etc/opscode/chef-server.rb.-
На каждой машине фронтенда, с правами root, выполните следующую команду:
chef-server-ctl reconfigure
Пример вывода
Следующий пример показывает результаты выполнения подкоманды chef-backend-ctl gen-server-config. Настройки и вывод будут различаться в зависимости от конфигурации. Эти настройки следует изменять осторожно:
fqdn "frontend1.chef-demo.com"
postgresql['external'] = true
postgresql['vip'] = '192.0.2.0'
postgresql['db_superuser'] = 'chef_pgsql'
postgresql['db_superuser_password'] = '...6810e52a01e562'
opscode_solr4['external'] = true
opscode_solr4['external_url'] = 'http://192.0.2.0:9200'
opscode_erchef['search_provider'] = 'elasticsearch'
opscode_erchef['search_queue_mode'] = 'batch'
bookshelf['storage_type'] = :sql
rabbitmq['enable'] = false
rabbitmq['management_enabled'] = false
rabbitmq['queue_length_monitor_enabled'] = false
opscode_expander['enable'] = false
dark_launch['actions'] = false
opscode_erchef['nginx_bookshelf_caching'] = :on
opscode_erchef['s3_url_expiry_window_size'] = '50%'
Примечание
opscode_solr4, postgresql, и rabbitmq.help
Используйте подкоманду help для вывода списка всех доступных команд chef-backend-ctl.
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl help
join-cluster
Используйте подкоманду join-cluster для настройки узла как члена кластера HA бэкенда, как равного узлу по указанному PEER_NODE_IP IP-адресу. Эта команда запрашивает существующий кластер для определения необходимой конфигурационной информации. Если опции --publish-address и --vip-interface не указаны и указаны в chef-backend.rb, команда предложит список элементов для выбора.
Эта команда вернёт сообщение об ошибке и ненулевой код выхода когда:
- Опция
--secrets-file-pathуказана, существует непустой файл секретов по адресу/etc/chef-backend/secrets.json, и пользователь отказывается его перезаписывать. - Опция
--secrets-file-pathуказана, но не указывает на допустимый файл и/или файл по адресу/etc/chef-backend/secrets.jsonпуст или не существует. - Указанный в опции
--publish-addressIP-адрес не существует на узле. - Интерфейс, указанный в опции
--vip-interfaceне существует на узле. - Любой IP-адрес на узле уже зарегистрирован в кластере HA бэкенда.
- Узел уже настроен для кластера HA бэкенда, и опция
--recoveryне указана. - Опция
--recoveryуказана, но не найдено ни одного существующего установленного приложения. -
--publish-addressи/или--vip-interfaceуказаны, но существует непустой файлchef-backend.rb. (Эта команда не перезапишет файлchef-backend.rb. )
При успешном выполнении эта команда сгенерирует файл chef-backend.rb по адресу /etc/chef-backend/chef-backend.rb с автоматически добавленными значениями для publish_address, vip_interface, и vip.
Синтаксис
Этот подкоманда имеет следующий синтаксис:
chef-backend-ctl join-cluster PEER_NODE_IP (options)
где PEER_NODE_IP — IP-адрес узла-партнера в кластере, к которому необходимо подключиться.
Параметры
Этот подкоманда имеет следующие параметры:
-
-i INTERFACE,--vip-interface INTERFACE -
Сеть интерфейс, к которому будет привязан VIP бэкенда в случае, если этот узел станет лидером. Если не указано, и если не указано в
chef-backend.rb, эта команда предложит выбрать из списка доступных интерфейсов на узле.Примечание
Этот параметр следует использовать только при первом подключении узла к кластеру HA бэкенда. -
-p IP_ADDRESS,--publish-address IP_ADDRESS -
IP-адрес, опубликованный в кластере HA бэкенда. Этот IP-адрес должен быть доступен всем узлам в кластере HA бэкенда. Если не указано, и если не указано в
chef-backend.rb, эта команда предложит выбрать из списка IP-адресов, которые в настоящее время привязаны к узлу.Примечание
Этот параметр следует использовать только при первом подключении узла к кластеру HA бэкенда. --recovery-
Принудительно подсоединить этот узел к кластеру HA бэкенда, если его удалили с помощью команд
chef-backend-ctl remove-nodeилиchef-backend-ctl bootstrap --with-quorum-recovery.Примечание
Этот параметр будет работать с существующим файломchef-backend.rb, что означает, что параметры--vip-interfaceи--publish-addressне следует указывать. (Они уже определены в файлеchef-backend.rb). -
-s PATH,--secrets-file-path PATH Путь к файлу
secrets.jsonна узле инициализации. Значение по умолчанию:/etc/chef-backend/secrets.json.-
-y,--yes Не запрашивать подтверждение.
Примеры
Нет.
promote
Используйте подкоманду promote для повышения статуса указанного узла до лидера кластера HA бэкенда. Эта команда:
- Завершится с кодом выхода
0, когда лидер кластера HA бэкенда будет заменён указанным узлом. - Возвратит сообщение об ошибке и ненулевой код выхода, если указанный узел уже является лидером, потому что отказ по резервированию отключён (для кластера или узла), или если новый лидер не может быть повышен за отведённое время.
Синтаксис
Этот подкоманда имеет следующий синтаксис:
chef-backend-ctl promote NODE
Примеры
Нет.
reconfigure
Используйте подкоманду reconfigure для перенастройки машины в кластере HA бэкенда Chef Infra Server. Эта подкоманда также перезапустит все службы, для которых настройка service_name['enabled'] установлена в значение true.
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl reconfigure
удаление-узла
Используйте подкоманду remove-node для удаления указанного узла из кластера HA бэкенда, удаляя статус узла из etcd и удаляя его из кластера etcd. Эта команда полезна, когда узел собираются заменить или если команда join-cluster завершилась неудачно.
Эта команда не может быть запущена с узла, который необходимо удалить; сам узел должен быть выключен или все службы должны быть остановлены (через команду chef-backend-ctl stop). Если узел все еще работает или доступен для кластера HA бэкенда, эта команда вернёт сообщение об ошибке и ненулевой код выхода.
Синтаксис
Этот подкоманда имеет следующий синтаксис:
chef-backend-ctl remove-node NODE_NAME
Параметры
Эта подкоманда имеет следующие параметры:
-
-y,--yes Не запрашивать подтверждение.
Примеры
Нет.
восстановление
Используйте подкоманду restore для восстановления резервной копии, созданной подкомандой chef-backend-ctl backup. Эта команда должна быть выполнена на лидере узла в кластере HA бэкенда. Эта команда удалит все существующие данные и заменит их данными из архива резервной копии.
Синтаксис
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl restore PATH (options)
где PATH — путь к файлу tar.gz, созданному подкомандой chef-backend-ctl backup.
Параметры
Эта подкоманда имеет следующие параметры:
-
-d DIRECTORY,--staging-dir DIRECTORY Путь к пустой папке, которая будет использоваться во время операции восстановления. Эта папка должна иметь достаточно свободного места для расширения всех данных в архиве резервной копии.
-
-y,--yes Не запрашивать подтверждение.
Примеры
Восстановление данных на лидере бэкенда
На узле лидера запустите следующую команду:
chef-backend-ctl restore /var/opt/chef-backup/backup_file.tgz
установить-отказ-кластера
Используйте подкоманду set-cluster-failover для включения или выключения резервного копирования в кластере HA бэкенда.
Синтаксис
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl set-cluster-failover STATE
где STATE может быть одним из on, off, true, false, enabled, или disabled.
установить-отказ-узла
Используйте подкоманду set-node-failover для включения или выключения резервного копирования для узла в кластере HA бэкенда.
Синтаксис
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl set-node-failover STATE
где STATE может быть одним из on, off, true, false, enabled, или disabled.
показать-настройку
Подкоманда show-config используется для просмотра настроек, которые будут сгенерированы подкомандой reconfigure. Эта команда наиболее полезна на ранних этапах развертывания, чтобы убедиться, что всё построено правильно перед установкой.
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl show-config
статус
Используйте подкоманду status для отображения статуса всех служб, доступных узлу в кластере HA бэкенда. Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl status
и вернёт статус всех служб. Статус можно получить для отдельных служб, указав имя службы как часть команды:
chef-backend-ctl status SERVICE_NAME
Например, полный вывод:
chef-backend-ctl status
аналогичен:
Service Local Status Time in State Distributed Node Status
elasticsearch running (pid 6661) 1d 5h 59m 41s state: green; nodes online: 3/3
etcd running (pid 6742) 1d 5h 59m 39s health: green; healthy nodes: 3/3
leaderl running (pid 6788) 1d 5h 59m 35s leader: 1; waiting: 0; follower: 2; total: 3
postgresql running (pid 6640) 1d 5h 59m 43s leader: 1; offline: 0; syncing: 0; synced: 2
что отображает статус здорового кластера HA бэкенда. Три первые столбца—Service, Local Status, и Time in State — обобщают локальное состояние. Столбец Distributed Node Status показывает:
- Кластер из трёх узлов
- Все узлы здоровы и онлайн
- Выбран лидер с двумя ведомыми (как для статуса лидер/ведомый для службы
leaderl, так и для статуса лидер/синхронизирован для службыpostgresql)
Простой вывод:
chef-backend-ctl status --simple
аналогичен:
run: elasticsearch: (pid 6661) 106983s; run: log: (pid 6667) 106983s
run: etcd: (pid 6742) 106981s; run: log: (pid 6630) 106984s
run: leaderl: (pid 6788) 106976s; run: log: (pid 6739) 106982s
run: postgresql: (pid 6640) 106984s; run: log: (pid 6653) 106983s
который отображает состояние служб, идентификаторы процессов и время активности (в секундах). Простой вывод полезен, если один (или несколько) узел(ей) в кластере HA бэкенда выведен(ы) из строя или находятся в ухудшенном состоянии.
удаление
Подкоманда uninstall используется для удаления приложения Chef Infra Server с машины в кластере HA бэкенда, но без удаления данных. Эта подкоманда остановит все службы (включая диспетчер процессов runit).
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl uninstall
Примечание
uninstall, выполните подкоманду reconfigure (поскольку подкоманда start отключена командой uninstall).Подкоманды служб
Эта команда имеет встроенный диспетчер процессов, который гарантирует, что все необходимые службы находятся в нужном состоянии в любое время. Диспетчер запускает два процесса на каждую службу и предоставляет следующие подкоманды для управления службами: hup, int, kill, once, restart, service-list, start, status, stop, tail, и term.
Предупреждение
hup, int, kill, once, restart, service-list, start, stop, tail, и term.hup
Используйте подкоманду hup для отправки сигнала SIGHUP всем службам на машине в кластере отказоустойчивости сервера Chef Infra. Эту команду также можно выполнить для отдельной службы, указав имя службы в команде.
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl hup SERVICE_NAME
где SERVICE_NAME представляет имя любой службы, которая перечислена после выполнения подкоманды service-list.
int
Используйте подкоманду int для отправки сигнала SIGINT всем службам на машине в кластере отказоустойчивости сервера Chef Infra. Эту команду также можно выполнить для отдельной службы, указав имя службы в команде.
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl int SERVICE_NAME
где SERVICE_NAME представляет имя любой службы, которая перечислена после выполнения подкоманды service-list.
kill
Используйте подкоманду kill для отправки сигнала SIGKILL всем службам на машине в кластере отказоустойчивости сервера Chef Infra. Эту команду также можно выполнить для отдельной службы, указав имя службы в команде.
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl kill SERVICE_NAME
где SERVICE_NAME представляет имя любой службы, которая перечислена после выполнения подкоманды service-list.
once
Наблюдатель для машины в кластере отказоустойчивости сервера Chef Infra настроен на перезапуск любой службы, которая завершается сбоем, если только эта служба не запросила изменение своего состояния. Подкоманда once используется для того, чтобы указать наблюдателю не пытаться перезапускать ни одну службу, которая завершается сбоем.
Эта команда полезна при устранении неполадок в конфигурации, которые мешают запуску службы. Запустите подкоманду once и подкоманду status для поиска служб в состоянии остановки и/или для определения, какие службы имеют проблемы. Эту команду также можно выполнить для отдельной службы, указав имя службы в команде.
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl once SERVICE_NAME
где SERVICE_NAME представляет имя любой службы, которая перечислена после выполнения подкоманды service-list.
restart
Используйте подкоманду restart для перезапуска всех включенных служб на машине в кластере отказоустойчивости сервера Chef Infra или для перезапуска отдельной службы, указав её имя в команде.
Предупреждение
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl restart SERVICE_NAME
где SERVICE_NAME представляет имя любой службы, которая перечислена после выполнения подкоманды service-list. При успешном перезапуске службы вывод должен быть похожим на:
ok: run: service_name: (pid 12345) 1s
service-list
Используйте подкоманду service-list для отображения списка всех доступных служб на машине в кластере отказоустойчивости сервера Chef Infra. Служба, которая включена, помечена звёздочкой (*).
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl service-list
start
Используйте подкоманду start для запуска всех включенных служб на машине в кластере отказоустойчивости сервера Chef Infra. Эту команду также можно выполнить для отдельной службы, указав имя службы в команде.
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl start SERVICE_NAME
где SERVICE_NAME представляет имя любой службы, которая перечислена после выполнения подкоманды service-list. При успешном запуске службы вывод должен быть похожим на:
ok: run: service_name: (pid 12345) 1s
Наблюдатель для машины в кластере отказоустойчивости сервера Chef Infra настроен на ожидание семь секунд, чтобы служба ответила на команду наблюдателя. Если вы видите вывод, содержащий упоминание о таймауте, это означает, что сигнал был отправлен процессу, но сам процесс ещё не выполнил его. В целом, процессы, которые превысили время ожидания, не представляют большой проблемы, если они вообще не реагируют на сигналы. Если процесс не отвечает, используйте команду, например, подкоманду kill для остановки процесса, исследуйте причину (если необходимо), а затем используйте подкоманду start для её повторного включения.
stop
Используйте подкоманду stop для остановки всех включенных служб в кластере отказоустойчивости сервера Chef Infra. Эту команду также можно выполнить для отдельной службы, указав имя службы в команде.
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl stop SERVICE_NAME
где SERVICE_NAME представляет имя любой службы, которая перечислена после выполнения подкоманды service-list. При успешной остановке службы вывод должен быть похожим на:
ok: diwb: service_name: 0s, normally up
Например:
chef-backend-ctl stop
вернёт что-то похожее на:
ok: down: etcd: 393s, normally up
ok: down: postgresql: 388s, normally up
tail
Используйте подкоманду tail для слежения за всеми логами всех служб на машине в кластере отказоустойчивости сервера Chef Infra. Эту команду также можно выполнить для отдельной службы, указав имя службы в команде.
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl tail SERVICE_NAME
где SERVICE_NAME представляет имя любой службы, которая перечислена после выполнения подкоманды service-list.
term
Используйте подкоманду term для отправки сигнала SIGTERM всем службам на машине в кластере отказоустойчивости сервера Chef Infra. Эту команду также можно выполнить для отдельной службы, указав имя службы в команде.
Эта подкоманда имеет следующий синтаксис:
chef-backend-ctl term SERVICE_NAME
где SERVICE_NAME представляет имя любой службы, которая перечислена после выполнения подкоманды service-list.
© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/ctl_chef_backend/