Запуск и остановка Программы ============================ Программа не имеет графического интерфейса и запускается автоматически после запуска сервера. Все компоненты Программы оформлены в виде системных служб, имеют отдельные файлы конфигурации и имеют возможность автоматического запуска при старте сервера и автоматической остановки при его выключении. При необходимости любой из сервисов/модулей можно остановить и запустить заново. Описание ручного запуска/остановки модулей приведено в описании каждого модуля. Prostore -------- Запуск ~~~~~~ Описание процесса запуска Prostore приведено в документации сервиса: https://prostore.datamart.ru/docs_prostore/maintenance/maintenance.html СМЭВ QL Сервер -------------- .. Подключаем файл с запуском СМЭВ QL Сервер .. include:: ../../modules/smev-ql/doc/smev_ql_start.rst СМЭВ3-адаптер ------------- .. Подключаем файл с запуском СМЭВ3-адаптер .. include:: ../../modules/smev3-adapter/doc/smev3_adapter_start.rst CSV-Uploader ------------- .. Подключаем файл с запуском CSV-Uploader .. include:: ../../modules/csv-uploader/doc/csv_uploader_start.rst ПОДД-адаптера - Модуль исполнения запросов ------------------------------------------ Описание настроек модуля приведено в "Руководстве администратора". .. Подключаем файл с запуском ПОДД-адаптер - Модуль исполнения запросов .. include:: ../../modules/podd-adapter-query/doc/podd_adapter_query_start.rst ПОДД-адаптер – Модуль MPPR -------------------------- Описание настроек модуля приведено в "Руководстве администратора". .. Подключаем файл с запуском ПОДД-адаптер – Модуль MPPR .. include:: ../../modules/podd-adapter-mppr/doc/podd_adapter_mppr_start.rst ПОДД-адаптер-Модуль MPPW ------------------------ Описание настроек модуля приведено в "Руководстве администратора". .. Подключаем файл с запуском ПОДД-адаптер-Модуль MPPW .. include:: ../../modules/podd-adapter-mppw/doc/podd_adapter_mppw_start.rst ПОДД-адаптер – Модуль импорта данных табличных параметров --------------------------------------------------------- Описание настроек модуля приведено в "Руководстве администратора". .. Подключаем файл с запуском ПОДД-адаптер – Модуль импорта данных табличных параметров .. include:: ../../modules/podd-adapter-import-tp/doc/podd_adapter_import_tp_start.rst ПОДД-адаптер – Модуль группировки данных табличных параметров ------------------------------------------------------------- Описание настроек модуля приведено в "Руководстве администратора". .. Подключаем файл с запуском ПОДД-адаптер – Модуль группировки данных табличных параметров .. include:: ../../modules/podd-adapter-import-tp/doc/podd_adapter_import_tp_start.rst ПОДД-адаптер – ПОДД-адаптер – Wrapper ------------------------------------- Описание настроек модуля приведено в "Руководстве администратора". .. Подключаем файл с запуском ПОДД-адаптер – Wrapper .. include:: ../../modules/podd-avro-defragmentator/doc/podd_avro_defragmentator_start.rst DATA-uploader – Модуль исполнения асинхронных заданий ----------------------------------------------------- Описание настроек модуля приведено в "Руководстве администратора". .. Подключаем файл с запуском Data-uploader – Модуль исполнения асинхронных заданий .. include:: ../../modules/data-uploader/doc/data_uploader_start.rst REST-uploader – Модуль асинхронной загрузки данных из сторонних источников -------------------------------------------------------------------------- .. Подключаем файл с запуском REST-uploader – Модуль асинхронной загрузки данных из сторонних источников .. include:: ../../modules/rest-uploader/doc/rest_uploader_start.rst Добавление поставщика данных ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Для добавления поставщика данных должен генерироваться токен авторизации, который передается поставщику. Генерация токена осуществляется по следующим шагам: 1. Открыть web-страницу https://jwt.io/ 2. Выбрать алгоритм HS256; 3. Ввести в payload следующие поля: .. code-block:: { "sub": "1234567890", "iss": "John Doe" } где: - sub - идентификатор поставщика данных, для которого сформирован токен; - iss - кем сформирован токен. Подпись токена формируется методом получения хеш-функции SHA-256 с секретом. Для этого нужно в ``verify signature`` в поле ``your-256-bit-secret`` ввести значение из ``test-secret`` настроек сервиса :term:`REST-uploader`. Для добавления идентификатора поставщика данных в Базу данных Redis необходимо в структуре ``set``, содержащую идентификаторы поставщика данных, выполнить операцию SADD: .. code-block:: SADD ids ProviderID где: - ids - ключ, по которому осуществляется доступ к набору элементов; - ProviderID - идентификатор поставщика данных. В случае, когда ожидание ответа на запрос превысило указанное количество времени, необходимо сделать повторный запрос. В случае возникновения ошибок при обработке файлов сотрудникам, загружаюмщим данные необходимо изучить возврат REST-uploader. Если ошибка внутренняя, то нужно обратиться к администратору Витрины. Администратор изучит логи REST-uploader / Data-uploader. ПОДД-адаптер-Модуль подписки ---------------------------- Описание настроек модуля приведено в "Руководстве администратора". .. Подключаем файл с запуском ПОДД-адаптер-Модуль подписки .. include:: ../../modules/podd-adapter-replicator/doc/podd_adapter_replicator_start.rst BLOB-адаптер ------------ Описание настроек модуля приведено в "Руководстве администратора". .. Подключаем файл с запуском BLOB-адаптер .. include:: ../../modules/blob-adapter/doc/blob_adapter_start.rst Сервис формирования документов ------------------------------ Описание настроек модуля приведено в "Руководстве администратора". .. Подключаем файл с запуском Сервис формирования документов .. include:: ../../modules/printable-form-service/doc/printable_form_service_start.rst ETL --- Apache Airflow ~~~~~~~~~~~~~~ :term:`Apache Airflow` представляет собой набор контейнеров, управляемых :term:`Docker`. Описание запуска и остановки :term:`Apache Airflow` приведено в файле ``docker-compose.yml``. Запуск """""" Для запуска :term:`Apache Airflow` перейдите в директорию с файлом ``docker-compose.yml``, созданным при установке :term:`Apache Airflow`. Например:: cd ~/direct Выполните команду:: docker-compose start Остановка """"""""" Для остановки :term:`Apache Airflow` перейдите в директорию с файлом ``docker-compose.yml``, созданным при установке :term:`Apache Airflow`. В папке, где расположен файл ``docker-compose.yaml`` выполните команду:: docker-compose stop Apache Spark ~~~~~~~~~~~~ :term:`Apache Spark` представляет собой контейнер, управляемый :term:`Docker`. Описание запуска и остановки :term:`Apache Spark` приведено в файле ``docker-compose.yml`` директории :term:`Apache Spark`. Запуск """""" Для запуска :term:`Apache Spark` перейдите в директорию с файлом ``docker-compose.yml``, созданным при установке :term:`Apache Spark`. Например:: cd ~/direct Выполните команду:: docker-compose start Для запуска отдельно мастера и воркера :term:`Apache Spark` можно использовать команды :term:`Docker`: Пример команды:: docker start spark-master docker start spark-worker-1 Остановка """"""""" Для остановки :term:`Apache Spark` перейдите в директорию с файлом ``docker-compose.yml``, созданным при установке :term:`Apache Spark`. В папке, где расположен файл ``docker-compose.yaml`` выполните команду:: docker-compose stop Для остановки отдельно мастера и воркера Apache Spark можно использовать команды :term:`Docker`: Пример команды:: docker stop spark-master docker stop spark-worker-1 Apache Hadoop ~~~~~~~~~~~~~ :term:`Apache Hadoop` представляет собой набор контейнеров, управляемых :term:`Docker`. Описание запуска и остановки :term:`Apache Hadoop` приведено в файле ``docker-compose.yml`` директории :term:`Apache Hadoop`. Запуск """""" Для запуска :term:`Apache Hadoop` перейдите в директорию с файлом ``docker-compose.yml``, созданным при установке :term:`Apache Hadoop`. Например:: cd ~/direct Выполните команду:: docker-compose start Для запуска отдельно каждого контейнера Apache Hadoop можно использовать команды :term:`Docker`: Пример команды:: docker start namenode docker start datanode docker start resourcemanager docker start nodemanager docker start historyserver Остановка """"""""" Для остановки :term:`Apache Hadoop` перейдите в директорию с файлом ``docker-compose.yml``, созданным при установке :term:`Apache Hadoop`. В папке, где расположен файл ``docker-compose.yaml`` выполните команду:: docker-compose stop Для остановки отдельно каждого контейнера Apache Hadoop можно использовать команды :term:`Docker`: Пример команды:: docker stop namenode docker stop datanode docker stop resourcemanager docker stop nodemanager docker stop historyserver Tarantool (Vynil) ~~~~~~~~~~~~~~~~~ Tarantool (Vynil) представляет собой контейнер, управляемый :term:`Docker`. Описание запуска и остановки Tarantool (Vynil) приведено в файле ``docker-compose.yml`` директории *Tarantool*. Запуск """""" Для запуска Tarantool (Vynil) перейдите в директорию с файлом ``docker-compose.yml``, созданным при установке Tarantool (Vynil). Например:: cd ~/direct Выполните команду:: docker-compose start Для запуска отдельно каждого контейнера Tarantool (Vynil) можно использовать команды :term:`Docker`: Пример команды:: docker start tarantool1 docker start tarantool2 Остановка """"""""" Для остановки Tarantool (Vynil) перейдите в директорию с файлом ``docker-compose.yml``, созданным при установке Tarantool (Vynil). В папке, где расположен файл ``docker-compose.yaml`` выполните команду:: docker-compose stop Для остановки отдельно каждого контейнера Tarantool (Vynil) можно использовать команды :term:`Docker`: Пример команды:: docker stop tarantool1 docker stop tarantool2 REST-адаптер ------------ :term:`REST-адаптер` представляет собой контейнер, управляемый :term:`Docker`. Для запуска и остановки :term:`REST-адаптер` используются команды :term:`Docker`. Запуск :term:`REST-адаптер` выполняется путём запуска :term:`Docker` командой:: docker start rest-adapter Остановка :term:`REST-адаптер` выполняется путём остановки :term:`Docker` командой:: docker stop rest-adapter Counter-provider - Сервис генерации уникального номера ------------------------------------------------------ Описание настроек модуля приведено в "Руководстве администратора". .. Подключаем файл с запуском Counter-provider .. include:: ../../modules/counter-provider/doc/counter_provider_start.rst Установка коннектора Kafka-Postgres ----------------------------------- 1. Скопировать файлы ``kafka-postgres-writer-0.3.0.jar``, ``kafka-postgres-reader-0.3.0.jar``, ``kafka-postgres-avro-0.3.0.jar`` из дистрибутива и загрузить в папку **/kafka-postgres-connector**. 2. Скопировать конфигурационные файлы KAFKA-POSTGRES-WRITER `application.yaml` и KAFKA-POSTGRES-READER `application.yaml` в папку *kafka-postgres-connector/config* Конфигурационный файл KAFKA-POSTGRES-WRITER `application.yaml`: .. code-block:: yaml logging: level: ru.datamart.kafka: ${LOG_LEVEL:DEBUG} org.apache.kafka: ${KAFKA_LOG_LEVEL:INFO} http: port: ${SERVER_PORT:8096} vertx: pools: eventLoopPoolSize: ${VERTX_EVENT_LOOP_SIZE:12} workersPoolSize: ${VERTX_WORKERS_POOL_SIZE:32} verticle: query: instances: ${QUERY_VERTICLE_INSTANCES:12} insert: poolSize: ${INSERT_WORKER_POOL_SIZE:32} insertPeriodMs: ${INSERT_PERIOD_MS:1000} batchSize: ${INSERT_BATCH_SIZE:500} consumer: poolSize: ${KAFKA_CONSUMER_WORKER_POOL_SIZE:32} maxFetchSize: ${KAFKA_CONSUMER_MAX_FETCH_SIZE:10000} commit: poolSize: ${KAFKA_COMMIT_WORKER_POOL_SIZE:1} commitPeriodMs: ${KAFKA_COMMIT_WORKER_COMMIT_PERIOD_MS:1000} client: kafka: consumer: checkingTimeoutMs: ${KAFKA_CHECKING_TIMEOUT_MS:10000} responseTimeoutMs: ${KAFKA_RESPONSE_TIMEOUT_MS:10000} consumerSize: ${KAFKA_CONSUMER_SIZE:10} closeConsumersTimeout: ${KAFKA_CLOSE_CONSUMER_TIMEOUT:15000} property: bootstrap.servers: ${KAFKA_BOOTSTRAP_SERVERS:kafka.host:9092} group.id: ${KAFKA_CONSUMER_GROUP_ID:postgres-query-execution} auto.offset.reset: ${KAFKA_AUTO_OFFSET_RESET:earliest} enable.auto.commit: ${KAFKA_AUTO_COMMIT:false} auto.commit.interval.ms: ${KAFKA_AUTO_INTERVAL_MS:1000} datasource: postgres: database: ${POSTGRES_DB_NAME:test} user: ${POSTGRES_USERNAME:dtm} password: ${POSTGRES_PASS:dtm} hosts: ${POSTGRES_HOSTS:localhost:5432} poolSize: ${POSTGRES_POOLSIZE:10} preparedStatementsCacheMaxSize: ${POSTGRES_CACHE_MAX_SIZE:256} preparedStatementsCacheSqlLimit: ${POSTGRES_CACHE_SQL_LIMIT:2048} preparedStatementsCache: ${POSTGRES_CACHE:true} Конфигурационный файл KAFKA-POSTGRES-READER `application.yaml`: .. code-block:: yaml logging: level: ru.datamart.kafka: ${LOG_LEVEL:DEBUG} org.apache.kafka: ${KAFKA_LOG_LEVEL:INFO} http: port: ${SERVER_PORT:8094} vertx: pools: eventLoopPoolSize: ${VERTX_EVENT_LOOP_SIZE:12} workersPoolSize: ${VERTX_WORKERS_POOL_SIZE:32} verticle: query: instances: ${QUERY_VERTICLE_INSTANCES:12} datasource: postgres: database: ${POSTGRES_DB_NAME:test} user: ${POSTGRES_USERNAME:dtm} password: ${POSTGRES_PASS:dtm} hosts: ${POSTGRES_HOSTS:localhost:5432} poolSize: ${POSTGRES_POOLSIZE:10} preparedStatementsCacheMaxSize: ${POSTGRES_CACHE_MAX_SIZE:256} preparedStatementsCacheSqlLimit: ${POSTGRES_CACHE_SQL_LIMIT:2048} preparedStatementsCache: ${POSTGRES_CACHE:true} fetchSize: ${POSTGRES_FETCH_SIZE:1000} kafka: client: property: key.serializer: org.apache.kafka.common.serialization.ByteArraySerializer value.serializer: org.apache.kafka.common.serialization.ByteArraySerializer Arenadata Cluster Manager (ADCM) -------------------------------- Запуск ~~~~~~ Arenadata Cluster Manager (ADCM) представляет собой контейнер, управляемый :term:`Docker`. Для запуска и остановки Arenadata Cluster Manager (ADCM)используются команды :term:`Docker`. Для запуска Arenadata Cluster Manager (ADCM) выполните следующие команды: 1. Запустите :term:`Docker` :: docker start adcm 2. Подключитесь через браузер к веб-интерфейсу по адресу :: http://:8000. 3. Авторизуйтесь в веб-интерфейсе. Остановка ~~~~~~~~~ Остановка Arenadata Cluster Manager (ADCM) выполняется путём остановки :term:`Docker` командой:: docker stop adcm Arenadata Streaming (ADS) ------------------------- Компонент запускается автоматически при установке как два ``systemd`` сервиса: *Kafka* и *Zookeeper*. Включен автозапуск сервисов при перезапуске сервера. Запуск и остановка через консоль ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Для ручной остановки и запуска необходимо подключиться по SSH на сервер и с правами ``sudo`` использовать штатную функцию ``systemctl``. .. attention:: Сервис **Kafka** всегда необходимо запускать после сервиса **Zookeeper**. Например:: sudo systemctl stop kafka sudo systemctl stop zookeeper sudo systemctl start zookeeper sudo systemctl start kafka Запуск и остановка сервисов ADS через ADCM ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Графический пользовательский интерфейс Arenadata Cluster Manager (ADCM) предоставляет возможность независимо выполнять операции запуска, остановки и перезапуска для сервисов *Kafka* и *Zookeeper*. Zookeeper """"""""" Запуск ^^^^^^ 1. Авторизуйтесь в Arenadata Cluster Manager (ADCM). 2. Нажмите вкладку **Cluster**. 3. Перейдите в пункт кластер ADS. 4. В левом меню, выберите пункт **Services**. 5. В таблице со списком сервисов *ADS*, в строке *Zookeeper*, нажмите значок **Actions** и нажмите кнопку **Start** (см. :numref:`img_typical_ag_image5`). 6. Подтвердите действие, для этого нажмите кнопку **Run**. .. _img_typical_ag_image5: .. figure:: /_static/img/typical/ag/image5.png :align: center :alt: Запуск сервиса Zookeeper через ADCM Запуск сервиса Zookeeper через ADCM Остановка ^^^^^^^^^ 1. Авторизуйтесь в Arenadata Cluster Manager (ADCM). 2. Перейдите в пункт кластер ADS. 3. В левом меню, выберите пункт **Services**. 4. В таблице со списком сервисов *ADS*, в строке *Zookeeper*, нажмите значок **Actions** и нажмите кнопку **Stop** (см. :numref:`img_typical_ag_image5`). Перезапуск """""""""" Для перезапуска Zookeeper в Arenadata Cluster Manager (ADCM), выполните следующие действия: 1. Авторизуйтесь в Arenadata Cluster Manager (ADCM). 2. Перейдите в пункт кластер ADS. 3. В левом меню, выберите пункт **Services**. 4. В таблице со списком сервисов *ADS*, в строке *Zookeeper*, нажмите значок **Actions** и нажмите кнопку **Restart** (см. :numref:`img_typical_ag_image5`). Kafka """"" Запуск ^^^^^^ 1. Авторизуйтесь в Arenadata Cluster Manager (ADCM). 2. Перейдите в пункт кластер ADS. 3. В левом меню, выберите пункт **Services**. 4. В таблице со списком сервисов *ADS*, в строке *Kafka*, нажмите значок **Actions** и нажмите кнопку **Start** (см. :numref:`img_typical_ag_image5`). Остановка """"""""" 1. Авторизуйтесь в Arenadata Cluster Manager (ADCM). 2. Перейдите в пункт кластер ADS. 3. В левом меню, выберите пункт **Services**. 4. В таблице со списком сервисов *ADS*, в строке *Kafka*, нажмите значок **Actions** и нажмите кнопку **Stop** (см. :numref:`img_typical_ag_image5`). Перезапуск """""""""" Для перезапуска Kafka в Arenadata Cluster Manager (ADCM), выполните следующие действия: 1. Авторизуйтесь в Arenadata Cluster Manager (ADCM). 2. Перейдите в пункт кластер ADS. 3. В левом меню, выберите пункт **Services**. 4. В таблице со списком сервисов *ADS*, в строке *Kafka*, нажмите значок **Actions** и нажмите кнопку **Restart** (см. :numref:`img_typical_ag_image5`). Запуск и остановка Arenadata Streaming (ADS) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Запуск и остановка Arenadata Streaming (ADS) осуществляется через Arenadata Cluster Manager (ADCM) (см. :numref:`img_typical_ag_image6`). Запуск """""" Для запуска Arenadata Cluster Manager (ADCM), выполните следующие действия: 1. Авторизуйтесь в Arenadata Cluster Manager (ADCM). 2. Перейдите в пункт кластер ADS. 3. Нажмите кнопку **Run actions** и выберите в контекстном меню пункт **Start** (см. :numref:`img_typical_ag_image6`). .. _img_typical_ag_image6: .. figure:: /_static/img/typical/ag/image6.png :align: center :alt: Запуск Arenadata Streaming (ADS) в ADCM Запуск Arenadata Streaming (ADS) в ADCM Остановка """"""""" .. attention:: Остановка Arenadata Streaming (ADS) приведет к остановке сервисов *Zookeeper* и *Kafka*. Для остановки Arenadata Cluster Manager (ADCM), выполните следующие действия: 1. Авторизуйтесь в Arenadata Cluster Manager (ADCM). 2. Перейдите в пункт кластер ADS. 3. Нажмите кнопку **Run actions** и выберите в контекстном меню пункт **Stop** (см. :numref:`img_typical_ag_image6_1`). .. _img_typical_ag_image6_1: .. figure:: /_static/img/typical/ag/image6_1.png :align: center :alt: Остановка Arenadata Streaming (ADS) в ADCM Остановка Arenadata Streaming (ADS) в ADCM