Сценарии администрирования#

Для системного администрирования сервиса OneWork требуется доступ:

  • по SSH к хостам развертывания сервиса

  • к UI компонента ssd-admin-service (типовой URL: <HOST_2>:58080).

Интерактивный мониторинг и администрирование компонентов OneWork основываются на экосистеме фреймворка Spring, в первую очередь на веб-сервисе Spring Boot Admin и компоненте Spring Actuator.

OneWork предоставляет функциональность для следующих сценариев администрирования:

Перезапуск сервиса#

Если экземпляр компонента перестал быть доступен, необходимо перезапустить соответствующую systemd службу.

# systemctl restart <service-name>
systemctl restart ssd-adapter-sonar.service

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

# systemctl status <service-name>
systemctl status service-adapter-sonar.service

Обновление конфигурации сервиса#

Также spring-boot-actuator позволяет без перезапуска приложения вносить изменения в контекст Spring.

Для этого после редактирования целевых .yml файлов конфигураций вы можете сделать следующее:

  • обратиться к соответствующему служебному endpoint API компонента:

    POST <корневой_URL_API_компонента>/actuator/refresh 
    # например, http://172.27.252.42:28888/core-data/actuator/refresh
    
  • вызвать обновление контекста из UI ssd-admin-service. Для этого выполните следующие действия:

    • Перейдите в раздел компонента Анализ | Окружение и нажмите кнопку Обновление контекста.

      Обновление контекста из UI ssd-admin-service

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

      Подтверждения обновления контекста из UI ssd-admin-service

    • Удостоверьтесь, что компонент OneWork работает, в логах отображена информация о перезагрузке, и настройки окружения соответствуют обновленной конфигурации.

      Пример логов при перезагрузке контекста:

      # загрузка обновленной конфигурации с конфиг-сервера
      2022-09-06 10:12:02.453  INFO 81687 --- [qtp115945887-55] o.s.b.context.config.ConfigDataLoader    : Fetching config from server at : http://ssd-cloud:18888
      2022-09-06 10:12:02.475  INFO 81687 --- [qtp115945887-55] o.s.b.context.config.ConfigDataLoader    : Located environment: name=service-adapter-sonar, profiles=[mtp], label=null, version=null, state=null
      2022-09-06 10:12:02.539  INFO 81687 --- [qtp115945887-55] s.p.s.a.common.AbstractServiceAdapter    : Adapter modes: [SNR]
      
      # де-регистрация компонента в Eureka
      2022-09-06 10:12:02.680  INFO 81687 --- [qtp115945887-55] com.netflix.discovery.DiscoveryClient    : Shutting down DiscoveryClient ...
      2022-09-06 10:12:05.682  INFO 81687 --- [qtp115945887-55] com.netflix.discovery.DiscoveryClient    : Unregistering ...
      2022-09-06 10:12:05.688  INFO 81687 --- [qtp115945887-55] com.netflix.discovery.DiscoveryClient    : DiscoveryClient_SERVICE-ADAPTER-SONAR/pkles-gt0011484.novalocal:service-adapter-sonar:28804 - deregister  status: 200
      2022-09-06 10:12:05.691  INFO 81687 --- [qtp115945887-55] com.netflix.discovery.DiscoveryClient    : Completed shut down of DiscoveryClient
      2022-09-06 10:12:05.694  INFO 81687 --- [qtp115945887-55] o.s.c.n.eureka.InstanceInfoFactory       : Setting initial instance status as: STARTING
      2022-09-06 10:12:05.695  INFO 81687 --- [qtp115945887-55] com.netflix.discovery.DiscoveryClient    : Initializing Eureka in region default
      ...
      2022-09-06 10:12:05.714  INFO 81687 --- [qtp115945887-55] com.netflix.discovery.DiscoveryClient    : Discovery Client initialized at timestamp 1662448325714 with initial instances count: 11
      2022-09-06 10:12:05.717  INFO 81687 --- [qtp115945887-55] o.s.c.n.e.s.EurekaServiceRegistry        : Unregistering application SERVICE-ADAPTER-SONAR with eureka with status DOWN
      2022-09-06 10:12:05.717  INFO 81687 --- [qtp115945887-55] com.netflix.discovery.DiscoveryClient    : Saw local status change event StatusChangeEvent [timestamp=1662448325717, current=DOWN, previous=STARTING]
      
      # повторная регистрация компонента
      2022-09-06 10:12:05.717  INFO 81687 --- [qtp115945887-55] o.s.c.n.e.s.EurekaServiceRegistry        : Registering application SERVICE-ADAPTER-SONAR with eureka with status UP
      2022-09-06 10:12:05.717  INFO 81687 --- [qtp115945887-55] com.netflix.discovery.DiscoveryClient    : Saw local status change event StatusChangeEvent [timestamp=1662448325717, current=UP, previous=DOWN]
      2022-09-06 10:12:05.717  INFO 81687 --- [DiscoveryClient-InstanceInfoReplicator-0] com.netflix.discovery.DiscoveryClient    : Saw local status change event StatusChangeEvent [timestamp=1662448325717, current=DOWN, previous=UP]
      2022-09-06 10:12:05.717  WARN 81687 --- [DiscoveryClient-InstanceInfoReplicator-0] c.n.discovery.InstanceInfoReplicator     : Ignoring onDemand update due to rate limiter
      2022-09-06 10:12:05.717  INFO 81687 --- [DiscoveryClient-InstanceInfoReplicator-0] com.netflix.discovery.DiscoveryClient    : DiscoveryClient_SERVICE-ADAPTER-SONAR/pkles-gt0011484.novalocal:service-adapter-sonar:28804: registering service...
      2022-09-06 10:12:05.728  INFO 81687 --- [DiscoveryClient-InstanceInfoReplicator-0] com.netflix.discovery.DiscoveryClient    : DiscoveryClient_SERVICE-ADAPTER-SONAR/pkles-gt0011484.novalocal:service-adapter-sonar:28804 - registration status: 204