Хмарний сервер для Elasticsearch в Європі: пошук в ЄС
Elasticsearch є основою повнотекстового пошуку, аналітики журналів та стеків спостереження в сучасних застосунках. Для бізнесу, що обробляє дані про європейських користувачів, де знаходиться цей пошуковий індекс - і хто контролює інфраструктуру - має пряме відношення до дотримання GDPR та часу відповіді на запити.
Чому резиденція даних в ЄС важлива для Elasticsearch
Індекси Elasticsearch зазвичай містять контент, створений користувачами, журнали поведінки та дані документів, повязані з особами - все це персональні дані відповідно до GDPR. Розміщення на сервері ЄС від компанії ЄС означає, що ваш пошуковий індекс ніколи не залишає юрисдикцію ЄС.
Мережева близькість також важлива для пошуку. Кластер Elasticsearch у Центральній Європі відповідає на запити від застосунку в Берліні за 2-5 мс. Той же кластер у центрі обробки даних США додає 80-120 мс на запит.
Мінімальні характеристики для Elasticsearch
- Малий (dev/журналювання, до 50 ГБ індексу) - 4 vCPU, 16 ГБ RAM, 200 ГБ NVMe SSD
- Середній (виробничий пошук, 50-500 ГБ) - 8 vCPU, 32 ГБ RAM, 1 ТБ NVMe SSD
- Великий (аналітика, мульти-ТБ індекс) - 16+ vCPU, 64 ГБ RAM, 2+ ТБ NVMe SSD
Купа JVM повинна бути встановлена на 50% доступної RAM, а ОС повинна зберігати інші 50% для кешу файлової системи.
Рекомендована конфігурація DCXV
Хмарні сервери DCXV забезпечують сховище NVMe зі стабільними IOPS, що дозволяє злиттям сегментів Elasticsearch відповідати графіку:
- 8 vCPU, 32 ГБ RAM, 1 ТБ NVMe - вузол виробничого пошукового кластера
- 16 vCPU, 64 ГБ RAM, 2 ТБ NVMe - стек аналітики журналів або спостереження
Для виробничого кластера розгорніть 3 вузли в приватній мережі DCXV. Зв’яжіться з sales@dcxv.com для обговорення топології кластера.
Команди швидкого налаштування
# Встановлення Elasticsearch 8.x на Ubuntu 22.04
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/elasticsearch-keyring.gpg] https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-8.x.list
sudo apt update && sudo apt install -y elasticsearch
sudo systemctl start elasticsearch && sudo systemctl enable elasticsearch # Налаштування купи JVM - 50% RAM (ніколи не перевищуйте 31 ГБ)
# /etc/elasticsearch/jvm.options.d/heap.options
-Xms16g
-Xmx16g
# Відключення свопу (критично для JVM)
sudo swapoff -a
echo 'vm.swappiness=1' | sudo tee -a /etc/sysctl.conf
echo 'vm.max_map_count=262144' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p Очікувані показники продуктивності
На вузлі DCXV 8 vCPU / 32 ГБ RAM / NVMe з Elasticsearch 8.x:
- Пропускна здатність індексування (bulk API) - 15 000-30 000 docs/s
- Запити за секунду (простий запит) - 500-1 500 QPS
- P99 затримка запиту (теплий кеш) - менше 10 мс
Висновок
Elasticsearch на хмарному сервері ЄС зберігає ваш пошуковий індекс під юрисдикцією ЄС, забезпечуючи пошук з малою затримкою. Встановіть купу JVM на 50% RAM та відключіть своп.




