Шаг 2. Настройка сетевого взаимодействия между серверами (обязательный)#

Для настройки взаимодействия между серверами одного кластера DataGrid используйте переменные datagrid_TcpDiscoverySpi_addresses или datagrid_addresses. Задайте переменные в файле с описанием конфигурации inventory.yml:

# Укажите IP-адреса серверов с портами для `org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder`.
# Пример 1:
datagrid_TcpDiscoverySpi_addresses:
  - "x.x.x.x:47500..47520"
  - "x.x.x.y:47500..47520"
# Пример 2:
datagrid_addresses:
 - "x.x.x.x"
 - "x.x.x.y"

Настройка защищенного сетевого взаимодействия между серверами#

Для настройки защищенного сетевого взаимодействия между серверами одного кластера DataGrid используйте переменную datagrid_use_ssl и параметр datagrid_users_isTemporary_for_everyone — он отвечает за то, является ли пароль временным (по умолчанию является).

Задайте переменную в файле с описанием конфигурации inventory.ymldatagrid_use_ssl: yes. И задайте параметр в файле для работы с авторизацией DataGrid 7.ssl_authentication.ymldatagrid_users_isTemporary_for_everyone: no.

Внимание

При каждом применении DataGrid Ansible Role генерируются самоподписанные сертификаты, создаются java-контейнеры с сертификатами на управляющем сервере и переносятся на каждый сервер кластера DataGrid.

Для использования собственных сертификатов или выключения генерации самоподписанных сертификатов в файле с описанием конфигурации inventory.yml, задайте переменные:

datagrid_local_ssl_truststore: "{{ inventory_dir }}/путь/к/контейнеру"
datagrid_ssl_truststore_password: "change-it"

datagrid_local_ssl_keystore: "{{ inventory_dir }}/путь/к/контейнеру"
datagrid_ssl_keystore_password: "change-it" # Пароль от хранилища ключей (keystore).

datagrid_local_client_keystore: "{{ inventory_dir }}/путь/к/контейнеру"
datagrid_ssl_client_keystore_password: "change-it" # Пароль от хранилища ключей (keystore).

datagrid_local_admin_keystore: "{{ inventory_dir }}/путь/к/контейнеру"
datagrid_ssl_admin_keystore_password: "change-it" # Пароль от хранилища ключей (keystore).

datagrid_local_grantadmin_keystore: "{{ inventory_dir }}/путь/к/контейнеру"
datagrid_ssl_grantadmin_keystore_password: "change-it" # Пароль от хранилища ключей (keystore).

При использовании готовых сертификатов добавьте в структуру пользователей DataGrid. Подробнее об этом написано в разделе «Выполнение задач с привилегированными правами (root-доступом)».

Создание новых кешей#

В процессе установки внутри конфигурации можно сформировать новые кеши с необходимыми опциями. Для этого в файле с описанием конфигурации inventory.yml опишите нужный параметр. Например, для получения различных настроек для кеша my_SQLcache опишите параметр datagrid_cacheConfiguration в конфигурационном файле:

datagrid_cacheConfiguration:
     my_SQLcache:
       sqlSchema: "public"
       cacheMode: "PARTITIONED"
       atomicityMode: "TRANSACTIONAL"
       backups: "0"
       statisticsEnabled: "true"
      expiryPolicy:
         expirePolicyFactory: "javax.cache.expiry.CreatedExpiryPolicy"
         duration:
          - "HOURS"
          - "2"
      queryEntities:
        myTable:
          keyType: "java.util.UUID"
          keyFieldName: "ID"
          valueType: "valueType_myTable"
          fields:
            ID: "java.util.UUID"
            column1: "java.lang.Boolean"
            column2: "java.lang.String"
            column3: "java.lang.String"
            column4: "java.lang.String"
          indexes:
            my_SQLcache_myTable_idx:
              fields:
                column2: "true"
              inlineSize: "34"

Также при создании кешей можно привязать имя к определенному региону данных (data region), используя параметр dataRegionName.

Пример конфигурации кеша

datagrid_cacheConfiguration:
   ExampleCache:
     backups: "1"
     atomicityMode: "ATOMIC"
     dataRegionName: "default" ## Или имя из примера ниже — `for_general_app`.
     expiryPolicy:
         expirePolicyFactory: "javax.cache.expiry.TouchedExpiryPolicy"
         duration:
           - "MINUTES"
           - "10"