3.8. Кластеризация¶
Кластеризация Сервера безопасности реализуется путем кластеризации БД Elasticsearch.
Настройка выполнена на примере 3-х узлов, при этом настроен кворум: 2 узла минимум.
3.8.1. Настройка Elasticsearch¶
Файл /etc/elasticsearch/elasticsearch.yml
содержащий
настройки для узла es-c1:
path.data: /data/elastic/data
path.logs: /data/elastic/logs
network.host: 0.0.0.0
http.port: 11111
cluster.name: cluster-tvdis
network.publish_host: es-c1
node.name: es-c1
node.master: true
node.data: true
discovery.zen.minimum_master_nodes: 2
discovery.zen.ping.unicast.hosts: ["es-c1", "es-c2", "es-c3"]
При этом об IP-адресах всех узлов es-c[123] должны быть записи в DNS
или в файле /etc/hosts
.
Далее выполнить команду:
service elasticsearch restart
Далее необходимо развернуть базу с помощью tvdisa-init,
действуя по инструкции как для одиночной инсталяции tvdis, например,
начиная с init data.json
в Build, install and configure TVDIS.
3.8.2. Диагностика¶
Диагностика, позволяющая выявить источник проблем, проводится в следующей последовательности:
Если ранее на машине была другая база es (например, некластерная), то её необходимо удалить:
service elasticsearch stop rm -rf /data/elastic/data/ mkdir /data/elastic/data/ chown elasticsearch /data/elastic/data/ service elasticsearch restart
Java имеет свойство переходить на ipv6.
Если с этим возникают проблемы, то необходимо указать принудительное использование
IPv4
. В файле/etc/elasticsearch/jvm.options
пропишите:-Djava.net.preferIPv4Stack=true
Проверить, какой протокол «слушает» Elasticsearch:
`netstat -tunlp | grep java`
Проверить статус кластера:
**`curl -XGET 'http://localhost:11111/_cluster/health?pretty`**
Для успешной кластеризации должны отображаться пакеты на порту 9300 (обмен между серверами).