Hot-Warm-Cold архитектура
Тема дорожной карты · Elasticsearch
Архитектура горячих, тёплых и холодных уровней (hot-warm-cold) в Elasticsearch — это стратегия многоуровневого хранения, распределяющая индексы по узлам в зависимости от возраста данных и частоты обращений к ним, одновременно оптимизируя затраты на кластер и его производительность. Горячие узлы используют быстрые NVMe SSD и хранят самые свежие, активно записываемые и запрашиваемые индексы; тёплые узлы применяют более медленные жёсткие диски или менее производительные SSD для индексов, которые больше не принимают записи, но ещё используются в редких запросах; холодные узлы используют наиболее дешёвое доступное хранилище (или замороженный уровень с частично монтируемыми снапшотами) для исторических данных с редким обращением. Принадлежность узла к уровню настраивается в elasticsearch.yml через node.attr.data: hot, node.attr.data: warm или node.attr.data: cold, а политики ILM управляют автоматической миграцией индекса с одного уровня на другой в зависимости от возраста или размера. В архитектуре горячих, тёплых и холодных уровней Elasticsearch также поддерживает замороженный уровень, где индексы полностью хранятся в репозитории снапшотов и частично загружаются в память по требованию, что кардинально снижает стоимость хранения многолетних исторических данных. Интерфейс Index Lifecycle Management в Kibana предоставляет визуальный редактор для проектирования политик ILM с уровнями hot-warm-cold без необходимости вручную писать JSON.
Как это работает
Hot-Warm-Cold архитектура: cluster health (/_cluster/health — green/yellow/red), shard allocation (rebalancing, awareness, exclusion), Snapshot + Restore (на S3, GCS, MinIO, NFS) для бэкапов, Cross-cluster Search (query нескольких кластеров), Hot-Warm-Cold tiered архитектура (свежие данные на fast SSD, старые на cheap HDD/object store). На масштабе ES Frozen tier + searchable snapshots позволяют держать месяцы логов по cloud-storage ценам.
Когда применять
Snapshots с первого дня — backup ваш единственный выход из data corruption. Rack/zone awareness для HA — shards на multiple failure domains. Мониторьте pending_tasks — растущая очередь = master перегружен. Для long-retention logs — tiered storage (hot/warm/cold), цена — доля от all-SSD.
Типичные ошибки
Ловушки Hot-Warm-Cold архитектура: нет snapshot стратегии (один плохой диск = данных нет); cluster split-brain (избегайте: 3+ master ноды, quorum-based); игнор yellow health (один rolling restart делает red); вручную двигают shards (кластер rebalance обратно, если не excluded).