#elasticsearch #elastic-stack #elasticsearch-7 #elasticsearch-template #ilm
#elasticsearch #эластичный стек #elasticsearch-7 #elasticsearch-шаблон #ilm
Вопрос:
У меня установлены обе версии Elasticsearch
и Logstash
в версии 7.9.1-1
. Вот политика, которую я создал:
ПОМЕСТИТЕ _ilm/policy/test-policy
{
"policy": {
"phases": {
"hot": {
"actions": {
"rollover": {
"max_age": "2d"
}
}
}
}
}
}
И соответствующий ему шаблон:
ПОМЕСТИТЕ _template/test-template
{
"index_patterns": ["test-*"],
"settings": {
"number_of_shards": 1,
"number_of_replicas": 1,
"index.lifecycle.name": "test-policy",
"index.lifecycle.rollover_alias": "test-read_n_write"
}
}
И, наконец, начальный псевдоним:
ПОСТАВИТЬ тест-000001
{
"aliases": {
"test-read_n_write":{
"is_write_index": true
}
}
}
После первого ролловера я хотел бы, чтобы псевдоним указывал на вновь созданный индекс (т. Е. test-000002
) Только для операций чтения и записи — вместо того, чтобы просто записывать в самый последний и выполнять поиск по нескольким индексам с test-read_n_write
помощью псевдонима.
Могу ли я сделать это с помощью автоматического ролловера?
Комментарии:
1. Вам все еще нужен старый индекс или вы больше никогда не будете читать из него?
2. Однако я не понимаю, почему у вас два разных псевдонима…
sslvpntraffic-write
иtest-read_n_write
можете ли вы более подробно объяснить, что они делают?3. Сложный вопрос, поскольку весь смысл ILM двоякий: 1) разрешить запись в последний индекс 2) разрешить чтение из всех исторических индексов
4. Вы можете достичь всего, чего пожелаете, просто, возможно, не с помощью одной команды. Определенно, этим можно управлять самостоятельно, используя
_aliases
конечную точку. Вы полностью свободны в выборе того, на что должны указывать ваши псевдонимы.5. Не обязательно, поскольку ваш ролловер будет происходить каждые два дня, вы можете запланировать обновление псевдонима примерно в то же время (но после ролловера)