Dlouho jsem si sem nic nepoznamenal. Ale právě řeším u jednoho zákazníka migraci Logmanagementu od Datasys z ELISA3 na ELISA4. Hlavním rozdílem jsou verze ELK.
ELISA3 - elasticsearch-1.7.5-1.noarch
ELISA4 - elasticsearch-6.4.2-1.noarch
Jediným možným způsobem jak přenést indexy ze stareho ELK do nové je export do JSON a opět import. K tomu se používá utilitka elasticdump.
yum intsall npm
npm install elasticdump -g
/usr/bin/elasticdump -> /usr/lib/node_modules/elasticdump/bin/elasticdump
/usr/bin/multielasticdump -> /usr/lib/node_modules/elasticdump/bin/multielasticdump
Samotný export import probíhá následovně:
Export z ELK do JSON
elasticdump --input=http://localhost:9200/logstash-2019.02.13 --output=/data/tmp/elisa-2019.02.13.json --type=data --limit=1000
Wed, 06 Mar 2019 14:33:04 GMT | starting dump
Wed, 06 Mar 2019 14:33:04 GMT | got 100 objects from source elasticsearch (offset: 0)
...
Wed, 06 Mar 2019 14:33:05 GMT | sent 100 objects to destination file, wrote 100
Wed, 06 Mar 2019 14:33:05 GMT | got 0 objects from source elasticsearch (offset: 1000)
Wed, 06 Mar 2019 14:33:05 GMT | Total Writes: 1000
Wed, 06 Mar 2019 14:33:05 GMT | dump complete
Po vytvoření dumpu je nutné změnit hlavní atributy, které ELISA4 nově zavedla.
Jednoduchý script provede náhradu řetězců atributu s @.
cat replace_atributes.sh
#!/bin/sh
sed -i -e 's/@message/AEFN.Message/g' $1
sed -i -e 's/@msgHost/AEFN.Host/g' $1
sed -i -e 's/@msgSource/AEFN.Source/g' $1
sed -i -e 's/@msgSeverity/AEFN.Severity/g' $1
sed -i -e 's/@msgUsername/AEFN.Username/g' $1
# EOF
Index, který v ELK má velikost 5GB má jako dump velikost mnohem větší 11GB, proto se i sed poněkud potrapí.
time ./replace_atributes.sh elisa-2019.02.13.json
real 21m26.231s
user 3m55.123s
sys 6m57.925s
Kopie dumpu na misto importu
scp migrace@10.20.30.40:/data/tmp/elisa-2019.02.13.json ./
V závěru už jen vesele importujeme do ELISA4 a zase jdeme na kafe.
Import z JSON do ELK
elasticdump --input=/data/tmp/elisa-2019.02.13.json --output=http://localhost:9200/elisa-2019.02.13 --type=data --limit=1000
...
Thu, 07 Mar 2019 10:00:49 GMT | sent 1008 objects to destination elasticsearch, wrote 1008
Thu, 07 Mar 2019 10:00:50 GMT | got 1009 objects from source file (offset: 1498981)
Thu, 07 Mar 2019 10:00:50 GMT | sent 1009 objects to destination elasticsearch, wrote 1009
Thu, 07 Mar 2019 10:00:50 GMT | got 1015 objects from source file (offset: 1499990)
Thu, 07 Mar 2019 10:00:51 GMT | sent 1015 objects to destination elasticsearch, wrote 1015
Thu, 07 Mar 2019 10:00:51 GMT | got 1021 objects from source file (offset: 1501005)
...
V logu ELK mužeme sledovat zaznamy spojené s importem
tail -f /var/log/elasticsearch/ELISA.log
[2019-03-07T10:57:25,396][INFO ][o.e.c.m.MetaDataMappingService] [elisa4] [elisa-2019.02.23/wQqd60uaRHWviUDdAyi7_w] update_mapping [logs]
[2019-03-07T10:57:41,658][INFO ][o.e.c.m.MetaDataMappingService] [elisa4] [elisa-2019.02.23/wQqd60uaRHWviUDdAyi7_w] update_mapping [logs]
[2019-03-07T10:58:12,576][INFO ][o.e.c.m.MetaDataMappingService] [elisa4] [elisa-2019.02.23/wQqd60uaRHWviUDdAyi7_w] update_mapping [logs]
Monitoring VMware vSphere with Zabbix
-
Zabbix is an open-source monitoring tool designed to oversee multiple IT
infrastructure components, including networks, servers, virtual machines,
and…
...
včera
Žádné komentáře:
Okomentovat