
เบเปเบญเบเบเบทเป Igor Sidorenko, เบเปเบญเบเปเบเบฑเบเบซเบปเบงเบซเบเปเบฒเบเปเบฒเบเบงเบดเบเบฒเบเบฒเบเปเบเบเบตเบกเบเปเบฅเบดเบซเบฒเบเบเบตเปเบฎเบฑเบเบชเบฒเปเบเบเบชเปเบฒเบเบเบทเปเบเบเบฒเบ Domklik เบเบฑเบเบซเบกเบปเบเปเบเบเบฒเบเปเบฎเบฑเบเบงเบฝเบ.
เบเปเบญเบเบขเบฒเบเปเบเปเบเบเบฑเบเบเบฐเบชเบปเบเบเบฒเบเบเบญเบเบเปเบญเบเปเบเบเบฒเบเบเบฑเปเบเบเปเบฒเบเบฒเบเปเบเบฑเบเบฎเบฑเบเบชเบฒเบเปเปเบกเบนเบเบเบตเปเปเบเบเบขเบฒเบเปเบ Elasticsearch. เบเบงเบเปเบฎเบปเบฒเบเบฐเปเบเบดเปเบเบงเปเบฒเบเบฒเบเบเบฑเปเบเบเปเบฒเปเบเปเบ nodes เบกเบตเบเบงเบฒเบกเบฎเบฑเบเบเบดเบเบเบญเบเบเปเปเบเบฒเบเปเบเบเบขเบฒเบ shards, ILM เบกเบตเปเบเบเบชเปเบฒเบเปเบฅเบฐเปเบฎเบฑเบเบงเบฝเบเปเบเบงเปเบ.
เบเบนเปเบเบตเปเปเบฎเบฑเบเบงเบฝเบเบเบฑเบเปเบกเปเบเปเบญเบเปเบกเปเบเบงเบดเบเบตเบเบฒเบเบซเบเบถเปเบเบซเบผเบทเบเบฒเบเบญเบทเปเบเบเบตเปเบเบฐเปเบเบตเบเบเบฑเบเบเบฑเบเบซเบฒเบเบฒเบเปเบเบฑเบเบฎเบฑเบเบชเบฒเปเบเปเบฅเบเบฐเบเบฒเบงเบชเปเบฒเบฅเบฑเบเบเบฒเบเบงเบดเปเบเบฒเบฐเบเปเปเปเบ. เบเบตเปเปเบเบฑเบเบเบงเบฒเบกเบเบดเบเปเบเบเบชเบฐเปเบเบฒเบฐเปเบ Elasticsearch เปเบเบฒเบฐเบงเปเบฒเบเบฒเบเบเปเบฒเบเบฒเบเบเบญเบ curator เปเบเป woeful. เปเบเบฎเบธเปเบ 6.6, เบเบฒเบเบเปเบฒเบเบฒเบเบเบญเบ ILM เบเบฒเบเบปเบเบเบถเปเบ. เบกเบฑเบโเบเบฐโเบเบญเบโเบเปเบงเบ 4 เปเบฅโเบเบฐโ:
- เบฎเปเบญเบโเบเบฑเบเบเบฐเบเบตเบเบณเบฅเบฑเบเบเบทเบเบเบฑเบเบเบธเบ เปเบฅเบฐเบชเบญเบเบเบฒเบกเบขเปเบฒเบเบเบดเบเบเบฑเบ.
- เบญเบปเบเบญเบธเปเบ - เบเบฑเบเบเบฐเบเบตเบเปเปเปเบเปเบเบฑเบเบเบธเบเบญเบตเบเบเปเปเปเบ, เปเบเปเบเบฑเบเบเบทเบเบชเบญเบเบเบฒเบก.
- เปเบขเบฑเบ - เบเบฑเบเบเบฐเบเบตเบเปเปเปเบเปเบเบฑเบเบเบธเบเบญเบตเบเบเปเปเปเบเปเบฅเบฐเบเปเปเบเปเบญเบเบเบทเบเบชเบญเบเบเบฒเบก. เบเปเปเบกเบนเบเบเบงเบเบเบฐเบเบฑเบเบชเบฒเบกเบฒเบเบเบปเปเบเบซเบฒเปเบเป, เปเบเปเบเบฒเบเบชเบญเบเบเบฒเบกเบญเบฒเบเบเบฐเบเปเบฒเบเบงเปเบฒ.
- เบฅเบถเบ - เบเบฑเบเบเบฐเบเบตเบเปเปเบเปเบฒเปเบเบฑเบเบญเบตเบเบเปเปเปเบ เปเบฅเบฐเบชเบฒเบกเบฒเบเบฅเบถเบเปเบเปเบขเปเบฒเบเบเบญเบเปเบ.
เบกเบญเบเปเบซเป
- Elasticsearch Data Hot: 24 processors, 128 GB of memory, 1,8 TB SSD RAID 10 (8 nodes).
- Elasticsearch Data Warm: 24 processors, 64 GB of memory, 8 TB NetApp SSD Policy (4 nodes).
- Elasticsearch Data Cold: 8 processors, 32 GB of memory, 128 TB HDD RAID 10 (4 nodes).
เปเบเบปเปเบฒเบซเบกเบฒเบ
เบเบฒเบเบเบฑเปเบเบเปเบฒเปเบซเบผเบปเปเบฒเบเบตเปเปเบกเปเบเบเบธเบเบเบปเบ, เบกเบฑเบเบเบฑเบเบซเบกเบปเบเปเบกเปเบเบเบถเปเบเบเบฑเบเบเปเบญเบเบซเบงเปเบฒเบเปเบ nodes, เบเปเบฒเบเบงเบเบเบญเบเบเบฑเบเบชเบฐเบเบต, เบเบฑเบเบเบถเบ, เปเบฅเบฐเบญเบทเปเบเป. เบชเปเบฒเบฅเบฑเบเบเบงเบเปเบฎเบปเบฒเบเบตเปเปเบกเปเบ 2-3 TB เบเบญเบเบเปเปเบกเบนเบเบเปเปเบกเบทเป.
- 5 เบกเบทเป - เปเบฅเบเบฐเบฎเปเบญเบ (8 เบเบปเปเบเบเป / 1 replica).
- 20 เบกเบทเป - เปเบฅเบเบฐเบญเบปเบเบญเบธเปเบ ( 4 เบซเบผเบฑเบ / 1 replica).
- 90 เบงเบฑเบ - เปเบฅเบเบฐเปเบขเบฑเบ ( 4 เบซเบผเบฑเบ / 1 replica).
- 120 เบกเบทเป - เบฅเบถเบเปเบฅเบเบฐ.
เบเบฑเปเบเบเปเบฒ Elasticsearch
เปเบเบทเปเบญเปเบเบเบขเบฒเบ shards เบฅเบฐเบซเบงเปเบฒเบ nodes, เบเปเบฒเบเบเปเบญเบเบเบฒเบเบเบฝเบเปเบเปเบซเบเบถเปเบเบเบปเบงเบเปเบฒเบเบปเบเบเบฒเบ:
- เบฎเปเบญเบ- nodes:
~]# cat /etc/elasticsearch/elasticsearch.yml | grep attr # Add custom attributes to the node: node.attr.box_type: hot - เบญเบปเบเบญเบธเปเบ- nodes:
~]# cat /etc/elasticsearch/elasticsearch.yml | grep attr # Add custom attributes to the node: node.attr.box_type: warm - เปเบขเบฑเบ- nodes:
~]# cat /etc/elasticsearch/elasticsearch.yml | grep attr # Add custom attributes to the node: node.attr.box_type: cold
เบเบฒเบเบเบฑเปเบเบเปเบฒ Logstash
เบเบฑเบเปเบปเบเบเบตเปเปเบฎเบฑเบเบงเบฝเบเปเบเบงเปเบ เปเบฅเบฐเบเบงเบเปเบฎเบปเบฒเบเบฐเบเบดเบเบฑเบเปเปเบฒเบเบตเปเบเบตเปเปเบเบงเปเบ? เปเบซเปเปเบฅเบตเปเบกเบเบปเปเบเบเปเบงเบเบเบฒเบเปเบญเบปเบฒเบเบฑเบเบเบถเบเปเบเบปเปเบฒเปเบเปเบ Elasticsearch. เบกเบตเบชเบญเบเบงเบดเบเบต:
- Logstash เบเบถเบเบเปเปเบกเบนเบเบเบฑเบเบเบถเบเบเบฒเบ Kafka. เบชเบฒเบกเบฒเบเปเบญเบปเบฒเบชเบฐเบญเบฒเบเบซเบผเบทเปเบเบเบขเบนเปเบเปเบฒเบเบเบญเบเบเบปเบ.
- เบเบฒเบเบชเบดเปเบเบเบฒเบเบขเปเบฒเบเบเบฝเบเบเบปเบงเบกเบฑเบเปเบญเบเบเบฑเบ Elasticsearch, เบชเปเบฒเบฅเบฑเบเบเบปเบงเบขเปเบฒเบ, เปเบเบทเปเบญเบเปเบกเปเบเปเบฒเบ APM.
เปเบซเปเปเบเบดเปเบเบเบปเบงเบขเปเบฒเบเบเบญเบเบเบฒเบเบเบฑเบเบเบฒเบเบเบฑเบเบชเบฐเบเบตเบเปเบฒเบ Logstash. เบกเบฑเบเบชเปเบฒเบเบเบฑเบเบชเบฐเบเบตเปเบฅเบฐเบเปเบฒเปเบเป เปเบฅเบฐเบเบตเปเบชเบญเบเบเปเบญเบเบเบฑเบ .
k8s-ingress.conf
input {
kafka {
bootstrap_servers => "node01, node02, node03"
topics => ["ingress-k8s"]
decorate_events => false
codec => "json"
}
}
filter {
ruby {
path => "/etc/logstash/conf.d/k8s-normalize.rb"
}
if [log] =~ "[warn]" or [log] =~ "[error]" or [log] =~ "[notice]" or [log] =~ "[alert]" {
grok {
match => { "log" => "%{DATA:[nginx][error][time]} [%{DATA:[nginx][error][level]}] %{NUMBER:[nginx][error][pid]}#%{NUMBER:[nginx][error][tid]}: *%{NUMBER:[nginx][error][connection_id]} %{DATA:[nginx][error][message]}, client: %{IPORHOST:[nginx][error][remote_ip]}, server: %{DATA:[nginx][error][server]}, request: "%{WORD:[nginx][error][method]} %{DATA:[nginx][error][url]} HTTP/%{NUMBER:[nginx][error][http_version]}", (?:upstream: "%{DATA:[nginx][error][upstream][proto]}://%{DATA:[nginx][error][upstream][host]}:%{DATA:[nginx][error][upstream][port]}/%{DATA:[nginx][error][upstream][url]}", )?host: "%{DATA:[nginx][error][host]}"(?:, referrer: "%{DATA:[nginx][error][referrer]}")?" }
remove_field => "log"
}
}
else {
grok {
match => { "log" => "%{IPORHOST:[nginx][access][host]} - [%{IPORHOST:[nginx][access][remote_ip]}] - %{DATA:[nginx][access][remote_user]} [%{HTTPDATE:[nginx][access][time]}] "%{WORD:[nginx][access][method]} %{DATA:[nginx][access][url]} HTTP/%{NUMBER:[nginx][access][http_version]}" %{NUMBER:[nginx][access][response_code]} %{NUMBER:[nginx][access][bytes_sent]} "%{DATA:[nginx][access][referrer]}" "%{DATA:[nginx][access][agent]}" %{NUMBER:[nginx][access][request_lenght]} %{NUMBER:[nginx][access][request_time]} [%{DATA:[nginx][access][upstream][name]}] (?:-|%{IPORHOST:[nginx][access][upstream][addr]}:%{NUMBER:[nginx][access][upstream][port]}) (?:-|%{NUMBER:[nginx][access][upstream][response_lenght]}) %{DATA:[nginx][access][upstream][response_time]} %{DATA:[nginx][access][upstream][status]} %{DATA:[nginx][access][request_id]}" }
remove_field => "log"
}
}
}
output {
elasticsearch {
id => "k8s-ingress"
hosts => ["node01", "node02", "node03", "node04", "node05", "node06", "node07", "node08"]
manage_template => true # ะฒะบะปััะฐะตะผ ัะฟัะฐะฒะปะตะฝะธะต ัะฐะฑะปะพะฝะฐะผะธ
template_name => "k8s-ingress" # ะธะผั ะฟัะธะผะตะฝัะตะผะพะณะพ ัะฐะฑะปะพะฝะฐ
ilm_enabled => true # ะฒะบะปััะฐะตะผ ัะฟัะฐะฒะปะตะฝะธะต ILM
ilm_rollover_alias => "k8s-ingress" # alias ะดะปั ะทะฐะฟะธัะธ ะฒ ะธะฝะดะตะบัั, ะดะพะปะถะตะฝ ะฑััั ัะฝะธะบะฐะปัะฝัะผ
ilm_pattern => "{now/d}-000001" # ัะฐะฑะปะพะฝ ะดะปั ัะพะทะดะฐะฝะธั ะธะฝะดะตะบัะพะฒ, ะผะพะถะตั ะฑััั ะบะฐะบ "{now/d}-000001" ัะฐะบ ะธ "000001"
ilm_policy => "k8s-ingress" # ะฟะพะปะธัะธะบะฐ ะฟัะธะบัะตะฟะปัะตะผะฐั ะบ ะธะฝะดะตะบัั
index => "k8s-ingress-%{+YYYY.MM.dd}" # ะฝะฐะทะฒะฐะฝะธะต ัะพะทะดะฐะฒะฐะตะผะพะณะพ ะธะฝะดะตะบัะฐ, ะผะพะถะตั ัะพะดะตัะถะฐัั %{+YYYY.MM.dd}, ะทะฐะฒะธัะธั ะพั ilm_pattern
}
}เบเบฒเบโเบเบฑเปเบโเบเปเบฒ Kibanaโ
เบกเบตเปเบกเปเปเบเบเบเบทเปเบเบเบฒเบเบเบตเปเปเบเปเบเบฑเบเบเบฑเบเบชเบฐเบเบตเปเบซเบกเปเบเบฑเบเบซเบกเบปเบ. เบกเบฑเบเบเปเบฒเบเบปเบเบเบฒเบเปเบเปเบเบฐเบเบฒเบเบเบญเบเบเบฑเบเบเบฐเบเบตเบฎเปเบญเบ, เบเปเบฒเบเบงเบเบเบญเบ shards, replicas, เปเบฅเบฐเบญเบทเปเบเป. เบเปเปเบฒเบซเบเบฑเบเบเบญเบเปเบกเปเปเบเบเปเบกเปเบเบเบทเบเบเปเบฒเบเบปเบเปเบเบเบเบฒเบเปเบฅเบทเบญเบ order. เปเบกเปเปเบเบเบเบตเปเบกเบตเบเปเบณเปเบฑเบเบชเบนเบเบเบงเปเบฒเบเบฐเบฅเบปเบเบฅเปเบฒเบเบเบฒเบฃเบฒเบกเบตเปเบเบตเปเบกเปเปเบเบเบเบตเปเบกเบตเบขเบนเปเปเบฅเปเบง เบซเบผเบทเปเบเบตเปเบกเบญเบฑเบเปเปเป.


GET_template/default
{
"default" : {
"order" : -1, # ะฒะตั ัะฐะฑะปะพะฝะฐ
"version" : 1,
"index_patterns" : [
"*" # ะฟัะธะผะตะฝัะตะผ ะบะพ ะฒัะตะผ ะธะฝะดะตะบัะฐะผ
],
"settings" : {
"index" : {
"codec" : "best_compression", # ััะพะฒะตะฝั ัะถะฐัะธั
"routing" : {
"allocation" : {
"require" : {
"box_type" : "hot" # ัะฐัะฟัะตะดะตะปัะตะผ ัะพะปัะบะพ ะฟะพ ะณะพัััะธะผ ะฝะพะดะฐะผ
},
"total_shards_per_node" : "8" # ะผะฐะบัะธะผะฐะปัะฝะพะต ะบะพะปะธัะตััะฒะพ ัะฐัะดะพะฒ ะฝะฐ ะฝะพะดั ะพั ะพะดะฝะพะณะพ ะธะฝะดะตะบัะฐ
}
},
"refresh_interval" : "5s", # ะธะฝัะตัะฒะฐะป ะพะฑะฝะพะฒะปะตะฝะธั ะธะฝะดะตะบัะฐ
"number_of_shards" : "8", # ะบะพะปะธัะตััะฒะพ ัะฐัะดะพะฒ
"auto_expand_replicas" : "0-1", # ะบะพะปะธัะตััะฒะพ ัะตะฟะปะธะบ ะฝะฐ ะฝะพะดั ะพั ะพะดะฝะพะณะพ ะธะฝะดะตะบัะฐ
"number_of_replicas" : "1" # ะบะพะปะธัะตััะฒะพ ัะตะฟะปะธะบ
}
},
"mappings" : {
"_meta" : { },
"_source" : { },
"properties" : { }
},
"aliases" : { }
}
}เบซเบผเบฑเบเบเบฒเบเบเบฑเปเบ, เบเปเบฒเปเบเปเบเบฒเบเบชเปเบฒเบเปเบเบเบเบตเปเบเบฑเบเบเบฑเบเบชเบฐเบเบต k8s-ingress-* เปเบเปเปเบกเปเปเบเบเบเบตเปเบกเบตเบเปเปเบฒเบซเบเบฑเบเบชเบนเบเบเบงเปเบฒ.


GET _template/k8s-ingress
{
"k8s-ingress" : {
"order" : 100,
"index_patterns" : [
"k8s-ingress-*"
],
"settings" : {
"index" : {
"lifecycle" : {
"name" : "k8s-ingress",
"rollover_alias" : "k8s-ingress"
},
"codec" : "best_compression",
"routing" : {
"allocation" : {
"require" : {
"box_type" : "hot"
}
}
},
"number_of_shards" : "8",
"number_of_replicas" : "1"
}
},
"mappings" : {
"numeric_detection" : false,
"_meta" : { },
"_source" : { },
"dynamic_templates" : [
{
"all_fields" : {
"mapping" : {
"index" : false,
"type" : "text"
},
"match" : "*"
}
}
],
"date_detection" : false,
"properties" : {
"kubernetes" : {
"type" : "object",
"properties" : {
"container_name" : {
"type" : "keyword"
},
"container_hash" : {
"index" : false,
"type" : "keyword"
},
"host" : {
"type" : "keyword"
},
"annotations" : {
"type" : "object",
"properties" : {
"value" : {
"index" : false,
"type" : "text"
},
"key" : {
"index" : false,
"type" : "keyword"
}
}
},
"docker_id" : {
"index" : false,
"type" : "keyword"
},
"pod_id" : {
"type" : "keyword"
},
"labels" : {
"type" : "object",
"properties" : {
"value" : {
"type" : "keyword"
},
"key" : {
"type" : "keyword"
}
}
},
"namespace_name" : {
"type" : "keyword"
},
"pod_name" : {
"type" : "keyword"
}
}
},
"@timestamp" : {
"type" : "date"
},
"nginx" : {
"type" : "object",
"properties" : {
"access" : {
"type" : "object",
"properties" : {
"agent" : {
"type" : "text"
},
"response_code" : {
"type" : "integer"
},
"upstream" : {
"type" : "object",
"properties" : {
"port" : {
"type" : "keyword"
},
"name" : {
"type" : "keyword"
},
"response_lenght" : {
"type" : "integer"
},
"response_time" : {
"index" : false,
"type" : "text"
},
"addr" : {
"type" : "keyword"
},
"status" : {
"index" : false,
"type" : "text"
}
}
},
"method" : {
"type" : "keyword"
},
"http_version" : {
"type" : "keyword"
},
"bytes_sent" : {
"type" : "integer"
},
"request_lenght" : {
"type" : "integer"
},
"url" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword"
}
}
},
"remote_user" : {
"type" : "text"
},
"referrer" : {
"type" : "text"
},
"remote_ip" : {
"type" : "ip"
},
"request_time" : {
"format" : "yyyy/MM/dd HH:mm:ss||yyyy/MM/dd||epoch_millis||dd/MMM/YYYY:H:m:s Z",
"type" : "date"
},
"host" : {
"type" : "keyword"
},
"time" : {
"format" : "yyyy/MM/dd HH:mm:ss||yyyy/MM/dd||epoch_millis||dd/MMM/YYYY:H:m:s Z",
"type" : "date"
}
}
},
"error" : {
"type" : "object",
"properties" : {
"server" : {
"type" : "keyword"
},
"upstream" : {
"type" : "object",
"properties" : {
"port" : {
"type" : "keyword"
},
"proto" : {
"type" : "keyword"
},
"host" : {
"type" : "keyword"
},
"url" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword"
}
}
}
}
},
"method" : {
"type" : "keyword"
},
"level" : {
"type" : "keyword"
},
"http_version" : {
"type" : "keyword"
},
"pid" : {
"index" : false,
"type" : "integer"
},
"message" : {
"type" : "text"
},
"tid" : {
"index" : false,
"type" : "keyword"
},
"url" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword"
}
}
},
"referrer" : {
"type" : "text"
},
"remote_ip" : {
"type" : "ip"
},
"connection_id" : {
"index" : false,
"type" : "keyword"
},
"host" : {
"type" : "keyword"
},
"time" : {
"format" : "yyyy/MM/dd HH:mm:ss||yyyy/MM/dd||epoch_millis||dd/MMM/YYYY:H:m:s Z",
"type" : "date"
}
}
}
}
},
"log" : {
"type" : "text"
},
"@version" : {
"type" : "text",
"fields" : {
"keyword" : {
"ignore_above" : 256,
"type" : "keyword"
}
}
},
"eventtime" : {
"type" : "float"
}
}
},
"aliases" : { }
}
}เบซเบผเบฑเบเบเบฒเบเบเปเบฒเปเบเปเปเบกเปเปเบเบเบเบฑเบเบซเบกเบปเบ, เบเบงเบเปเบฎเบปเบฒเบเปเบฒเปเบเปเบเบฐเปเบเบเบฒเบ ILM เปเบฅเบฐเปเบฅเบตเปเบกเบเบปเปเบเบเบดเบเบเบฒเบกเบเบตเบงเบดเบเบเบญเบเบเบฑเบเบชเบฐเบเบต.



GET _ilm/policy/k8s-ingress
{
"k8s-ingress" : {
"version" : 14,
"modified_date" : "2020-06-11T10:27:01.448Z",
"policy" : {
"phases" : {
"warm" : { # ัะตะฟะปะฐั ัะฐะทะฐ
"min_age" : "5d", # ััะพะบ ะถะธะทะฝะธ ะธะฝะดะตะบัะฐ ะฟะพัะปะต ัะพัะฐัะธะธ ะดะพ ะฝะฐัััะฟะปะตะฝะธั ัะตะฟะปะพะน ัะฐะทั
"actions" : {
"allocate" : {
"include" : { },
"exclude" : { },
"require" : {
"box_type" : "warm" # ะบัะดะฐ ะฟะตัะตะผะตัะฐะตะผ ะธะฝะดะตะบั
}
},
"shrink" : {
"number_of_shards" : 4 # ะพะฑัะตะทะฐะฝะธะต ะธะฝะดะตะบัะพะฒ, ั.ะบ. ั ะฝะฐั 4 ะฝะพะดั
}
}
},
"cold" : { # ั
ะพะปะพะดะฝะฐั ัะฐะทะฐ
"min_age" : "25d", # ััะพะบ ะถะธะทะฝะธ ะธะฝะดะตะบัะฐ ะฟะพัะปะต ัะพัะฐัะธะธ ะดะพ ะฝะฐัััะฟะปะตะฝะธั ั
ะพะปะพะดะฝะพะน ัะฐะทั
"actions" : {
"allocate" : {
"include" : { },
"exclude" : { },
"require" : {
"box_type" : "cold" # ะบัะดะฐ ะฟะตัะตะผะตัะฐะตะผ ะธะฝะดะตะบั
}
},
"freeze" : { } # ะทะฐะผะพัะฐะถะธะฒะฐะตะผ ะดะปั ะพะฟัะธะผะธะทะฐัะธะธ
}
},
"hot" : { # ะณะพัััะฐั ัะฐะทะฐ
"min_age" : "0ms",
"actions" : {
"rollover" : {
"max_size" : "50gb", # ะผะฐะบัะธะผะฐะปัะฝัะน ัะฐะทะผะตั ะธะฝะดะตะบัะฐ ะดะพ ัะพัะฐัะธะธ (ะฑัะดะตั ั
2, ั.ะบ. ะตััั 1 ัะตะฟะปะธะบะฐ)
"max_age" : "1d" # ะผะฐะบัะธะผะฐะปัะฝัะน ััะพะบ ะถะธะทะฝะธ ะธะฝะดะตะบัะฐ ะดะพ ัะพัะฐัะธะธ
},
"set_priority" : {
"priority" : 100
}
}
},
"delete" : { # ัะฐะทะฐ ัะดะฐะปะตะฝะธั
"min_age" : "120d", # ะผะฐะบัะธะผะฐะปัะฝัะน ััะพะบ ะถะธะทะฝะธ ะฟะพัะปะต ัะพัะฐัะธะธ ะฟะตัะตะด ัะดะฐะปะตะฝะธะตะผ
"actions" : {
"delete" : { }
}
}
}
}
}
}เบเบฑเบเบซเบฒ
เบกเบตเบเบฑเบเบซเบฒเบขเบนเปเปเบเบเบฑเปเบเบเบญเบเบเบฒเบเบเบดเบเบเบฑเปเบ เปเบฅเบฐเบเบตเบเบฑเบ.
เปเบฅเบเบฐเบฎเปเบญเบ
เบชเปเบฒเบฅเบฑเบเบเบฒเบเบซเบกเบนเบเบงเบฝเบเบเบตเปเบเบทเบเบเปเบญเบเบเบญเบเบเบฑเบเบชเบฐเบเบต, เบกเบตเบขเบนเปเปเบเบเบญเบเบเปเบฒเบเบเบญเบ index_name-date-000026 เบฎเบนเบเปเบเบเบเบปเบงเปเบฅเบ 000001. เบกเบตเปเบชเบฑเปเบเบขเบนเปเปเบเบฅเบฐเบซเบฑเบเบเบตเปเบเบงเบเปเบเบดเปเบเบเบฑเบเบชเบฐเบเบตเปเบเบเปเบเปเบเบฒเบเบชเบฐเปเบเบเบญเบญเบเบเบปเบเบเบฐเบเบดเบชเปเบฒเบฅเบฑเบเบเบปเบงเปเบฅเบเบขเบนเปเบเปเบฒเบ. เบเปเบฒเบเปเปเบเบฑเปเบเบเบฑเปเบ, เบเบฐเบกเบตเบเบงเบฒเบกเบเบดเบเบเบฒเบ, เบเบฐเปเบเบเบฒเบเบเบฐเบเปเปเบเบทเบเบเปเบฒเปเบเปเบเบฑเบเบเบฑเบเบเบฐเบเบตเปเบฅเบฐเบกเบฑเบเบเบฐเบขเบนเปเปเบเปเบฅเบเบฐเบฎเปเบญเบเบชเบฐเปเบซเบกเบต.
เปเบฅเบเบฐเบญเบปเบเบญเบธเปเบ
เบซเบปเบเบเบปเบง (cutting) - เบเบฒเบเบซเบผเบธเบเบเปเบญเบเบเปเบฒเบเบงเบเบเบญเบ shards, เปเบเบทเปเบญเบเบเบฒเบเบงเปเบฒเบเบงเบเปเบฎเบปเบฒเบกเบต 4 nodes เปเบเปเบฅเบเบฐเบญเบปเบเบญเบธเปเบเปเบฅเบฐเปเบขเบฑเบ, เปเบญเบเบฐเบชเบฒเบเบเบฐเบเบญเบเบกเบตเบชเบฒเบเบเบฑเปเบเบเปเปเปเบเบเบตเป.
- เบเบฑเบเบเบฐเบเบตเบเปเบญเบเปเบเบฑเบเปเบเบเบญเปเบฒเบเปเบเบปเปเบฒเบเบฑเปเบ.
- เบชเบณเปเบเบปเบฒเบเบญเบเบเบธเบเป shard เปเบเบเบฑเบเบเบฐเบเบตเบเปเบญเบเบขเบนเปเปเบ node เบเบฝเบงเบเบฑเบ.
- เบชเบฐเบเบฒเบเบฐเบชเบธเบเบฐเบเบฒเบเบเบญเบเบเบธเปเบกเบเบฐเบเปเบญเบเปเบเบฑเบเบชเบตเบเบฝเบง.
เปเบเบทเปเบญเบเบฑเบเบเบฑเบเบชเบฐเบเบต, Elasticsearch เบเปเบฒเบ shards เบเบปเปเบเบเปเบเบฑเบเบซเบกเบปเบเปเบเบซเบฒเบซเบเบถเปเบ node, duplicates เบเบฑเบเบเบฐเบเบต trimmed เบเบฑเบเบเบปเบงเบเปเบฒเบเบปเบเบเบฒเบเบเบตเปเบเปเบฒเปเบเบฑเบ, เปเบฅเบฐเบซเบผเบฑเบเบเบฒเบเบเบฑเปเบเบฅเบถเบเบญเบฑเบเปเบเบปเปเบฒ. เบเบฒเบฅเบฒเบกเบดเปเบเบต total_shards_per_node เบเปเบญเบเปเบเบปเปเบฒเบเบฑเบ เบซเบผเบทเปเบซเบเปเบเบงเปเบฒเบเบณเบเบงเบเบเบญเบ shards เบซเบผเบฑเบเปเบเบทเปเบญเปเบซเปเปเบเบปเปเบฒเบเบฑเบเปเบเปเปเบเปเบถเปเบ node. เบเปเบฒเบเปเปเบเบฑเปเบเบเบฑเปเบ, เบเบฐเบกเบตเบเบฒเบเปเบเปเบเปเบเบทเบญเบเปเบฅเบฐ shards เบเบฐเบเปเปเบเปเบฒเบเปเบ nodes เบเบตเปเบเปเบฒเบเบปเบเปเบงเป.


เปเบญเบปเบฒ /shrink-k8s-ingress-2020.06.06-000025/_settings
{
"shrink-k8s-ingress-2020.06.06-000025" : {
"settings" : {
"index" : {
"refresh_interval" : "5s",
"auto_expand_replicas" : "0-1",
"blocks" : {
"write" : "true"
},
"provided_name" : "shrink-k8s-ingress-2020.06.06-000025",
"creation_date" : "1592225525569",
"priority" : "100",
"number_of_replicas" : "1",
"uuid" : "psF4MiFGQRmi8EstYUQS4w",
"version" : {
"created" : "7060299",
"upgraded" : "7060299"
},
"lifecycle" : {
"name" : "k8s-ingress",
"rollover_alias" : "k8s-ingress",
"indexing_complete" : "true"
},
"codec" : "best_compression",
"routing" : {
"allocation" : {
"initial_recovery" : {
"_id" : "_Le0Ww96RZ-o76bEPAWWag"
},
"require" : {
"_id" : null,
"box_type" : "cold"
},
"total_shards_per_node" : "8"
}
},
"number_of_shards" : "4",
"routing_partition_size" : "1",
"resize" : {
"source" : {
"name" : "k8s-ingress-2020.06.06-000025",
"uuid" : "gNhYixO6Skqi54lBjg5bpQ"
}
}
}
}
}
}เปเบฅเบเบฐเปเบขเบฑเบ
freeze (freeze) - เบเบงเบเปเบฎเบปเบฒ freeze เบเบฑเบเบเบฐเบเบตเปเบเบทเปเบญเปเบเบตเปเบกเบเบฐเบชเบดเบเบเบดเบเบฒเบเบเบฒเบเบชเบญเบเบเบฒเบกเปเบเบเบญเบตเบเปเบชเปเบเปเปเบกเบนเบเบเบฐเบซเบงเบฑเบเบชเบฒเบ.
เบเบฒเบเบเบปเปเบเบซเบฒเบเบตเปเบเปเบฒเปเบเบตเบเบขเบนเปเปเบเบเบฑเบเบเบฐเบเบต frozen เปเบเปเบเบธเบ threadpool เบเบฐเบซเบเบฒเบเบเปเบญเบ, เบญเบธเบเบดเบเบเบปเบ, search_throttled เปเบเบทเปเบญเบเบงเบเบเบธเบกเบเปเบฒเบเบงเบเบเบฒเบเบเบปเปเบเบซเบฒเบเปเบญเบกเบเบฑเบเบเบตเปเบเบต shards frozen เปเบเปเบเปเบฅเบฐ node. เบเบตเปเบเปเบฒเบเบฑเบเบเปเบฒเบเบงเบเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเบเบดเปเบชเบเบเบตเปเบเปเบญเบเบเบฒเบเบชเปเบฒเบฅเบฑเบเปเบเบเบชเปเบฒเบเบเปเปเบกเบนเบเบเบปเปเบงเบเบฒเบงเบเบตเปเบชเบญเบเบเปเบญเบเบเบฑเบเบเบฑเบ shards เปเบเปเปเบเบ, เบเบฑเปเบเบเบฑเปเบเบเบถเปเบเบเบปเบเบเปเบญเบ nodes เบเบฒเบเบเบฒเบเบเปเบฅเบดเปเบเบเบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเบซเบผเบฒเบเปเบเบตเบเปเบ.
เบเบฑเบเบเบฐเบเบตเบเบตเปเปเบเปเปเบเบเปเบกเปเบเบญเปเบฒเบเปเบเปเปเบเบปเปเบฒเบเบฑเปเบ: เบเปเบฒเบเบเปเปเบชเบฒเบกเบฒเบเบเบฑเบเบชเบฐเบเบตเปเบเบปเปเบฒเปเบเปเบเบเบงเบเบกเบฑเบเปเบเป.
เบเบฒเบเบเบปเปเบเบซเบฒเปเบเบเบฑเบเบเบฐเบเบต frozen เบเบฒเบเบงเปเบฒเบเบฐเบเปเบฒเปเบเบตเบเบเบฒเบเบเปเบฒ. เบเบฑเบเบเบฐเบเบต frozen เบเปเปเปเบเปเบกเบตเบเบธเบเบเบฐเบชเบปเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเปเบซเบผเบเบเบฒเบเบเบญเบเบซเบฒเบชเบนเบ. เบกเบฑเบเปเบเบฑเบเปเบเปเบเปเบงเปเบฒเบเบฒเบเบเบปเปเบเบซเบฒเบเบฑเบเบชเบฐเบเบต frozen เบญเบฒเบเบเบฐเปเบเปเปเบงเบฅเบฒเบงเบดเบเบฒเบเบตเบซเบผเบทเบเบฒเบเบตเปเบเบทเปเบญเปเบซเปเบชเปเบฒเปเบฅเบฑเบ, เปเบเบดเบเปเบกเปเบเบงเปเบฒเบเบฒเบเบเบปเปเบเบซเบฒเบเบฝเบงเบเบฑเบเบชเปเบฒเปเบฅเบฑเบเปเบ milliseconds เปเบเปเบงเบฅเบฒเบเบตเป indices เบเปเปเปเบเปเบเบทเบ frozen.
เบเบปเบเปเบเปเบฎเบฑเบ
เบเบงเบเปเบฎเบปเบฒเปเบเปเบฎเบฝเบเบฎเบนเปเบงเบดเบเบตเบเบฒเบเบเบฐเบเบฝเบก nodes เบชเปเบฒเบฅเบฑเบเบเบฒเบเปเบฎเบฑเบเบงเบฝเบเบเบฑเบ ILM, เบเบฑเปเบเบเปเบฒเปเบกเปเปเบเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเปเบเบเบขเบฒเบ shards เบฅเบฐเบซเบงเปเบฒเบ hot nodes, เปเบฅเบฐ configured ILM เบชเปเบฒเบฅเบฑเบเบเบฑเบเบเบฐเบเบตเบเบตเปเบกเบตเปเบฅเบเบฐเบเบตเบงเบดเบเบเบฑเบเบซเบกเบปเบ.
เบเบฒเบเปเบเบทเปเบญเบกเบเปเปเบเบตเปเปเบเบฑเบเบเบฐเปเบซเบเบ
เปเบซเบผเปเบเบเปเปเบกเบนเบ: www.habr.com
