Шаг 5. Конфигурирование CDC (опциональный)#
Конфигурирование CDC I2I (ignite-to-ignite)#
При конфигурировании CDC I2I создаются:
конфигурационный файл
configcustomIgniteConfiguration.xml;файлы старта (
startCDC.sh) и остановки (stopCDC.sh) CDC;файл с JVM-опциями
config/cdc-jvm.opts.
Для использования CDC-I2I добавьте параметры в файл inventory.yml; создание файла описано в разделе «Предварительная подготовка на управляющем хосте».
Общие параметры CDC I2I#
Укажите общие параметры в отправляющем и в принимающем кластере:
# Укажите перечень кешей для межкластерной репликации.
datagrid_cdc_caches:
- "NameCache1"
- "NameCache2"
- "NameCache3"
# В конфигурацию региона данных добавьте свойство `cdcEnabled: True`.
datagrid_defaultdataRegionConfigurations: "{{ datagrid_defaultdataRegionConfigurations | combine({'cdcEnabled': True}) }}"
Параметры для CDC I2I через толстый клиент#
Настройте кластер, который отправляет данные:
# Настройте отправку данных межкластерной репликации.
datagrid_cdc_deploy_transmitter: yes
# Укажите имя экземпляра CDC.
datagrid_cdc_igniteInstanceName: "cdc_cluster_1"
# Укажите локальный порт для связи с кластером, на который нужно передать данные.
datagrid_cdc_localPort: "47600"
# Укажите адреса серверов принимающего кластера (передаются в класс `TcpDiscoverySpi`).
datagrid_cdc_remote:
- "xx.xx.xx.x:47500..47520"
- "xx.xx.xx.y:47500..47520"
Настройте кластер, который принимает данные:
# Настройте прием данных межкластерной репликации.
datagrid_cdc_deploy_receiver: yes
# Укажите имя экземпляра CDC.
datagrid_cdc_igniteInstanceName: "cdc_cluster_2"
# Укажите адреса кластера, который принимает данные (передаются в класс `TcpDiscoverySpi`).
# Обязательно добавьте адрес сервера, с которого передаются данные, и имя порта, которое указано в `datagrid_cdc_localPort`.
datagrid_TcpDiscoverySpi_addresses:
- "xx.xx.xx.x:47500..47520"
- "xx.xx.xx.y:47500..47520"
- "xx.xx.xx.z:47600..47620"
Дополнительные параметры для CDC I2I через тонкий клиент#
Настройте кластер, который отправляет данные:
# Настройте отправку данных межкластерной репликации.
datagrid_cdc_deploy_transmitter: yes
# Укажите имя экземпляра CDC.
datagrid_cdc_igniteInstanceName: "cdc_cluster_1"
datagrid_cdc_thin_client: yes
# Укажите адреса серверов принимающего кластера.
datagrid_cdc_addresses:
- "xx.xx.xx.x"
- "xx.xx.xx.y"
- "xx.xx.xx.z"
# Имя порта должно совпадать с именем порта принимающего кластера.
datagrid_cdc_client_port: "10800"
Настройте кластер, который принимает данные:
# Настройте прием данных межкластерной репликации.
datagrid_cdc_deploy_receiver: yes
# Укажите имя экземпляра CDC.
datagrid_cdc_igniteInstanceName: "cdc_cluster_2"
# Укажите доступ для тонких клиентов.
datagrid_ClientConnectorConfiguration_thinClientEnabled: yes
# Имя порта принимающего кластера должно совпадать с именем порта передающего кластера.
datagrid_ClientConnectorConfiguration_port: "10800"
Дополнительные параметры для работы по SSL#
Настройте кластер, который отправляет данные:
# Включите CDC с SSL (значение по умолчанию зависит от переменной `datagrid_use_ssl`).
datagrid_cdc_client_use_ssl: "yes"
# Укажите имя кластера, на который нужно передать данные.
datagrid_cdc_client_cluster_name: "cluster_2"
# Укажите тип кластера, на который нужно передать данные.
datagrid_cdc_client_cluster_type: "DEV"
# Укажите логин клиента с кластера, на который нужно передать данные.
datagrid_cdc_client_login: "datagrid_client"
# Укажите пароль клиента с кластера, на который нужно передать данные.
datagrid_cdc_client_pass: "qwe123"
# Укажите путь к контейнеру с ключом клиента.
datagrid_cdc_client_local_keystore: "{{ inventory_dir }}/путь/к/контейнеру"
# Укажите пароль от контейнера с ключом клиента.
datagrid_cdc_client_ssl_keystore_password: "qwe123"
# Укажите путь к контейнеру с доверенными сертификатами УЦ.
datagrid_cdc_client_local_truststore: "{{ inventory_dir }}/путь/к/контейнеру"
# Укажите пароль к контейнеру с доверенными сертификатами УЦ.
datagrid_cdc_client_ssl_truststore_password: "qwe123"
Настройте кластер, который принимает данные:
# Проверьте работу кластера по SSL. Для этого установите значение `yes`.
datagrid_use_ssl: yes
# Имя и тип должны совпадать с настройками, указанными в первом кластере в параметрах CDC.
# Укажите имя кластера DataGrid.
datagrid_cluster_name: "cluster_2"
# Укажите тип кластера Ignite (`DEV`, `IFT`, `NT`, `PSI`, `PROM`, `PROD`).
datagrid_cluster_type: "DEV"
Конфигурирование CDC K2I (kafka-to-ignite)#
При конфигурировании CDC K2I создаются:
конфигурационный файл
configCustomIgniteConfiguration.xmlдля DataGrid;конфигурационный файл
config/cdc-kafka.propertiesдля подключения к Kafka;файлы старта (
startCDC.sh) и остановки (stopCDC.sh) CDC на кластере, отправляющем данные;файл с JVM-опциями
config/cdc-jvm.opts.
Для использования CDC-K2I добавьте параметры в файл inventory.yml; создание файла описано в разделе «Предварительная подготовка на управляющем хосте».
Общие параметры CDC K2I#
Предварительно создайте топики в Kafka:
from_cluster_1— для передачи данных;metaData_from_cluster_1— для передачи метаданных.
Укажите общие параметры в отправляющем и в принимающем кластере:
# Укажите перечень кешей для межкластерной репликации.
datagrid_cdc_caches:
- "NameCache1"
- "NameCache2"
- "NameCache3"
# В конфигурацию региона данных добавьте свойство `cdcEnabled: True`.
datagrid_defaultdataRegionConfigurations: "{{ datagrid_defaultdataRegionConfigurations | combine({'cdcEnabled': True}) }}"
Параметры для CDC K2I через толстый клиент#
Настройте кластер, отправляющий данные:
# Настройте отправку данных межкластерной репликации.
datagrid_cdc_deploy_transmitter: yes
# Включите отправку данных через Kafka.
datagrid_cdc_use_kafka: yes
# Настройке время ожидания подключения к кластеру DataGrid.
datagrid_cdc_joinTimeout: "10000"
# Укажите JMX порт для CDC.
datagrid_cdc_jmx_port: 1095
# Укажите имя топика для передачи данных межкластерной репликации.
datagrid_cdc_cdcStreamer_kafkaTopic: "from_cluster_1"
# Укажите количество частей для Kafka.
datagrid_cdc_cdcStreamer_kafkaParts: 10
# Укажите адрес и порт для подключения к Kafka.
datagrid_cdc_kafka_properties_bootstrap_servers:
- "xx.xx.xx.xx:9093"
Настройте кластер, который принимает данные:
# Настройте прием данных межкластерной репликации.
datagrid_cdc_deploy_receiver: yes
# Укажите адреса серверов Kafka для получения данных межкластерной репликации.
datagrid_cdc_kafka_properties_bootstrap_servers:
- "xx.xx.xx.xx:9093"
# Укажите адрес серверов кластера DataGrid для получения данных межкластерной репликации.
datagrid_cdc_k2i_clients:
"xx.xx.x.xx":
from: 0
to: 10
threadCount: 2
# Укажите JMX-порт для подключения через `jconsole`.
datagrid_cdc_k2i_jmx_port: 1096
# Укажите имя топика для приема данных межкластерной репликации.
datagrid_cdc_k2iStreamer_kafkaTopic: "from_cluster_1"
Дополнительные параметры для работы CDC K2I через тонкий клиент#
Настройте кластер, который принимает данные:
# Настройте конфигурирование передачи данных через тонкий клиент.
datagrid_cdc_thin_client: yes
# Укажите адреса серверов принимающего кластера.
datagrid_cdc_addresses:
- "xx.xx.xx.x"
- "xx.xx.xx.y"
- "xx.xx.xx.z"
# Укажите порт подключения тонкого клиента.
datagrid_cdc_client_port: "10800"
Дополнительные параметры для работы с Kafka по SSL#
Настройте отправляющий и принимающий кластеры:
# Укажите подключение к Kafka по SSL.
datagrid_cdc_kafka_use_ssl: yes
# Укажите путь к контейнеру с ключом.
datagrid_cdc_kafka_local_keystore: "{{ inventory_dir }}/путь/к/контейнеру"
# Укажите путь к контейнеру с доверенными сертификатами УЦ.
datagrid_cdc_kafka_local_truststore: "{{ inventory_dir }}/путь/к/контейнеру"
# Укажите пароль от контейнера с ключом клиента.
datagrid_cdc_kafka_ssl_keystore_password: "qwe123"
# Укажите пароль от контейнера с доверенными сертификатами.
datagrid_cdc_kafka_ssl_truststore_password: "qwe123"
Дополнительные параметры для работы с DataGrid по SSL#
Настройте кластер, который принимает данные:
# Укажите логин клиента DataGrid принимающего кластера.
datagrid_cdc_client_login: "ise_client"
# Укажите пароль клиента DataGrid принимающего кластера.
datagrid_cdc_client_pass: "ise_client_password"
# Укажите путь к контейнеру с ключом клиента.
datagrid_cdc_client_local_keystore: "{{ inventory_dir }}/путь/к/контейнеру"
# Укажите пароль от контейнера с ключом клиента.
datagrid_cdc_client_ssl_key_pass: "{{ datagrid_ssl_client_keystore_password }}"
# Укажите путь к контейнеру с доверенными сертификатами УЦ.
datagrid_cdc_client_local_truststore: "{{ inventory_dir }}/путь/к/контейнеру"
# Укажите пароль для контейнера с доверенными сертификатами.
datagrid_cdc_client_ssl_trust_pass: "{{ datagrid_ssl_truststore_password }}"