Чек-лист валидации установки EVTP#
Проверьте работу АРМ управления Apache Flink:
на узле Job Manager EVTP в файле
/opt/Apache/flink/conf/flint-conf.yamlнайдите значение параметраrest.bind-port;в браузере перейдите на страницу
http://<адрес узла JM EVTP>:<порт из параметра rest.bind-port>. Откроется пользовательский интерфейс управления.
Убедитесь, что сервис Zookeeper работает корректно:
Выполните команду:
telnet <адрес узла zookeeper> 2181Введите
ruokи нажмите клавишу Enter. Корректно работающий узел ответитimokи закроет соединение (данная проверка работает только в случае plain text соединения. Если же Zookeeper настроен на TLS соединение, то ответа от Zookeeper-а не будет).
Проверьте работу сервисов ZooKeeper:
на каждом из серверов ZooKeeper EVTP выполните команду:
systemctl list-unit-files | grep -e zookeeperпроверьте содержимое конфигурации сервиса с помощью команды:
cat /etc/systemd/system/zookeeper.serviceВ частности, проверьте, что исполняемые команды в параметрах
ExecStartиExecStopссылаются на существующие файлы.
Проверьте работу сервисов Kafka — на каждом из серверов EVTP выполните команду:
systemctl list-unit-files | grep -e flinkПроверьте содержимое конфигурации сервиса с помощью команд:
cat /etc/systemd/system/flink_jobmanager.service cat /etc/systemd/system/flink_taskmanager.service
В частности, проверьте, что исполняемые команды в параметрах ExecStart и ExecStop ссылаются на существующие файлы.
Дополнительно состояние сервисов flink можно проверить командами:
systemctl status flink_jobmanager
systemctl status link_taskmanager
Убедитесь, что в лог-файлах узлов EVTP присутствует запись об интеграции с системой аудита. Для этого на узле выполните команду:
cat /opt/Apache/flink-logs/*standalonesession*.log | grep audit
и убедитесь, что вхождение строки есть;
bash Loading audit service: ru.sbt.ss.audit.flink.FlinkHttpAuditService
Проверьте наличие и значения (если они приведены) настроек подключения к системе аудита в файле conf/flink-conf.yaml:
параметры отвечающие за наcтройки аудита начинаются с: audit.service.
После установки EVTP производится настройка мониторинга на кластера EVTP. Проверка подключения мониторинга осуществляется специалистом сопровождения мониторинга с ролью Metrix monitoring admin на host, на котором установлен мониторинг, в каталоге, содержащем файлы конфигурации коллектора метрик. Необходимо проверить:
что связь с EVTP настроена. Для этого в файле <имя домена>-flink-metrics.properties необходимо проверить наличие параметров:
no_edFlinkTaskManagersJmx=___getJmxInputConfigFromStr___<список хост:порт для подключения к task менеджерам Flink через JMX>no_edFlinkJobManagersJmx=___getJmxInputConfigFromStr___<список хост:порт для подключения к job менеджерам Flink через JMX>Например:no_edFlinkTaskManagersJmx=___getJmxInputConfigFromStr___10.25.68.8:8790no_edFlinkJobManagersJmx=___getJmxInputConfigFromStr___10.25.68.9:8789что запущен коллектор. Для этого выполните команду:
ps aux | grep "<имя домена>-flink-metrics.properties"
В ответе должна прийти строка с параметрами запуска.
Пример команды:
ps aux | grep "Domain-flink-metrics.properties"
Пример ответа:
wfadmin <pid> 10.1 8.1 4983936 655956 ? Sl <date>:41 java -Djava.security.egd=file:/dev/./urandom -Dlogback.configurationFile=path/to/logback.xml -Xms128M -Xmx1G -classpath path/to/lib/* ru.sbt.fpss.monitoring.collector.Main -c ./path/to/flink-metrics-application.conf -m ./config/flink-metrics.conf -d /path/to/Domain-flink-metrics.properties -l /path/to/logback-Domain-flink-metrics.xml
wfadmin 23863 0.0 0.0 113100 1260 pts/40 S+ 12:47 0:00 grep --color=auto Domain-flink-metrics.properties
что в логах присутствуют вхождения логов записи метрик. Для этого:
В файле logback-[имя домена]-flink-metrics.xml найдите имя файла логов для данного кластера EVTP. В appender(s) file в теге
<file></file>присутствует имя файла логов, например:
<appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>/path/to/Domain-flink-metrics.log</file>
В файле логов (Domain-flink-metrics.log) произведите поиск логов записи метрик. Для этого выполните команду:
>cat Domain-flink-metrics.log | grep "<SINK>" | grep -v 'metricSize=[0,1]'
...
Дополнительные параметры (ограничения):
только количество строк в логах, удовлетворяющих поиску (а не текст логов):
>cat *flink-metrics.log | grep "<SINK>" | grep -v 'metricSize=[0,1]' | wc -l
>3596
только за конкретный период времени логов
>cat *kafka-metrics.log | grep "<SINK>" | grep -v 'metricSize=[0,1]' | grep "2022-10-17 13:50:01"
>2022-10-17 13:38:01.231 [MetricCollector-akka.actor.default-dispatcher-12] INFO ru.sbt.fpss.monitoring.collector.controller.flow.FlowBuilder - Success<SINK>[collectorId=<collectorId>,collectorName=KafkaMetricsPrometheus,host=<host>,class=FlowBuilder,flowId=<flowId>,flowName=KafkaProcessCpuLoadToInfluxDb,componentName=PrometheusPushGatewayOutput,processName=MetricOutput,metricSize=3]=List(Metric(Segment(Seg).Federation(Fed).Domain(Domain_promet).Kafka.Cluster(KafkaMetricsPrometheus).Broker(<host>).ProcessCpuLoad,Gauge,2022-10-17T10:38:01.213132Z,HashMap(description -> Загрузка CPU в процентах, unit -> %),Map(Value_Double -> 0.9181969949916527)), Metric(Segment(Seg).Federation(Fed).Domain(Domain_promet).Kafka.Cluster(KafkaMetricsPrometheus).Broker(<host>).ProcessCpuLoad,Gauge,2022-10-17T10:38:00.633296Z,HashMap(description -> Загрузка CPU в процентах, unit -> %),Map(Value_Double -> 0.9991673605328892)), Metric(LivenessProbe.Collector(KafkaMetricsPrometheus).Instance(<collectorId>).Flow(KafkaProcessCpuLoadToInfluxDb).Instance(<flowId>).IsAlive,Gauge,2022-10-17T10:38:00.981297Z,HashMap(description -> Liveness-проба Потока (1 - статус успеха)),Map(Value_String -> 1))) with result='true'
>2022-10-17 13:38:01.935 [MetricCollector-akka.actor.default-dispatcher-9] INFO ru.sbt.fpss.monitoring.collector.controller.flow.FlowBuilder - Success<SINK>[collectorId=<collectorId>,collectorName=KafkaMetricsPrometheus,host=<host>,class=FlowBuilder,flowId=<flowId>,flowName=KafkaTopicBytesInPerSecCountToInfluxDb,componentName=PrometheusPushGatewayOutput,processName=MetricOutput,metricSize=47] with result='true'
Результат положительного ответа на команду приведен выше (это либо ненулевое количество строк, либо сами строки с результатами поиска).
При наличии логов компонента в системе Platform V Monitor (LOGA) проверка считается успешной.
Проверить интеграцию с системой управления ключами и сертификатами. Если произведена настройка хранения или выпуска сертификатов в HashiCorp Vault/Secret Management System, необходимо авторизоваться в системе управления ключами и сертификатами, проверить правильность указанных путей хранения ключей и сертификатов, а также их наличие. При запуске EVTP, если скрипты установки отработали без ошибок, дополнительная проверка данной интеграции не требуется.