Aller au contenu principal

Search Engine Pool

1. Introduction

This group of servers is dedicated to databases and has high hardware resources. Search engine servers are relatively resource-intensive in terms of RAM and CPU, hence the use of Intel i5 processors and 16GB to 32GB of RAM.
Elasticsearch is primarily used as data nodes and executes searches on its data, while the management of the Elasticsearch cluster is handled by the masters pool.

2. Roles

Elasticsearch deploys multiple nodes and classifies them into groups based on their functions. Among them, we can mention:

  • Master Nodes: Cluster management
    The master nodes of Elasticsearch coexist in a sidecar with the Kubernetes masters.

  • Data Nodes: Data management

search-engine-side-car

3. Networking

Search engine servers are managed by Kubernetes and are only accessible from the box-network.

infra

Position in the cluster:

infra

4. Volumes

This group is connected to the shared volume of the cluster to store their backups.

infra

5. High Availability

infra

6. Security

  • iptables managed by Kubernetes
  • Istio to be installed for internal TLS communications

7. Applications

  • Elasticsearch
  • Redis to be installed

8. Installation

The installation is automated by the framework. The configuration is based on declarative (Inventory). Volumes and nodes are created based on the configuration for each host in the group vars.

        elasticsearch:
vars:
eck:
version: 8.5.2
namespace: elastic-system
app_templates:
- name: local-storage
- name: eck-crds
- name: eck-operator
- name: eck-es
- name: kibana
# - name: eck-local-storage
hosts:
webserver-1:
role: kubectl
master-1:
role: master
volumes:
- name: elasticsearch-masters-1
size: 10Gi
master-2:
role: master
volumes:
- name: elasticsearch-masters-2
size: 10Gi
master-3:
role: master
volumes:
- name: elasticsearch-masters-3
size: 10Gi
gateway-1:
role: data
volumes:
- name: elasticsearch-data-1
size: 50Gi
gateway-2:
role: data
volumes:
- name: elasticsearch-data-2
size: 50Gi
$ play playbook-se-install