Difference between revisions of "Elastic"
Unnilennium (talk | contribs) (Created page with "How to set elastic search on SME == install and configure== installl elastic repo {{:Elastic_repo}} signal-event yum-modify install elastic and dependencies (which are not ...") |
Unnilennium (talk | contribs) |
||
(13 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
How to set elastic search on SME | How to set elastic search on SME | ||
== install and configure== | == install and configure== | ||
+ | <tabs container style="display: inline-block;" ><tab name="For SME 10"> | ||
installl elastic repo | installl elastic repo | ||
− | + | yum install smeserver-extrarepositories-elastic | |
+ | signal-event yum-modify | ||
+ | install elastic and dependencies (which are not explicits). You now need to choose the version you want ! 8.x, 7.x, 6.x, 5.x, 2 or 1 | ||
+ | |||
+ | yum install elasticsearch java-1.8.0-openjdk --enablerepo=elastic6.x | ||
+ | allow updates | ||
+ | db yum_repositories setprop elastic6.x status enabled TCPPort 9200 access localhost | ||
signal-event yum-modify | signal-event yum-modify | ||
− | install | + | if you wanted a specific release you can use versionlock |
− | yum install elasticsearch java-1.8.0-openjdk --enablerepo=elastic | + | yum install yum-plugin-versionlock -y |
+ | yum install elasticsearch-7.10.2 java-1.8.0-openjdk --enablerepo=elastic6.x | ||
+ | yum versionlock add elasticsearch-7.10.* | ||
+ | |||
+ | configure and start | ||
+ | config set elasticsearch service status enabled | ||
+ | mkdir -p /etc/e-smith/templates-custom/etc/systemd/system-preset/49-koozali.preset/ | ||
+ | echo '{ | ||
+ | push @list,qw(elasticsearch); | ||
+ | $OUT.=""; | ||
+ | } | ||
+ | '> /etc/e-smith/templates-custom/etc/systemd/system-preset/49-koozali.preset/06elasticsearch | ||
+ | expand-template /etc/systemd/system-preset/49-koozali.preset | ||
+ | echo '[Install] | ||
+ | WantedBy=sme-server.target | ||
+ | ' > /etc/systemd/system/elasticsearch.service.d/51koozali.conf | ||
+ | /etc/e-smith/events/actions/systemd-default | ||
+ | systemctl start elasticsearch | ||
+ | </tab><tab name="For SME 9"> | ||
+ | installl elastic repo | ||
+ | yum install smeserver-extrarepositories-elastic | ||
+ | signal-event yum-modify | ||
+ | install elastic and dependencies (which are not explicits). You now need to choose the version you want 6.x, 5.x, 2 or 1 | ||
+ | yum install elasticsearch java-1.8.0-openjdk --enablerepo=elastic6.x | ||
+ | allow updates | ||
+ | db yum_repositories setprop elastic6.x status enabled | ||
+ | signal-event yum-modify | ||
make it start at every boot | make it start at every boot | ||
− | ln -s /etc/rc.d/init.d/e-smith-service /etc/rc7.d/ | + | ln -s /etc/rc.d/init.d/e-smith-service /etc/rc7.d/S95elasticsearch |
config set elasticsearch service status enabled | config set elasticsearch service status enabled | ||
start it for the first time | start it for the first time | ||
service elasticsearch start | service elasticsearch start | ||
+ | </tab></tabs> | ||
+ | |||
+ | == migration from 1.x to higher == | ||
+ | upgrade to 2.4 and install plugin<syntaxhighlight lang="bash"> | ||
+ | yum upgrade elasticsearch --enablerepo=elastic2 | ||
+ | service elasticsearch restart | ||
+ | cd /usr/share/elasticsearch | ||
+ | ./bin/plugin install https://github.com/elastic/elasticsearch-migration/releases/download/v2.0.4/elasticsearch-migration-2.0.4.zip | ||
+ | |||
+ | </syntaxhighlight>run a tunnel from your computer<syntaxhighlight lang="bash"> | ||
+ | ssh -L 9200:localhost:9200 user@yourserver | ||
+ | </syntaxhighlight>use your favourite browser to fix things and migrate <nowiki>http://localhost:9200/_plugin/elasticsearch-migration</nowiki> | ||
+ | |||
+ | then delete plugin and upgrade to 5.x or 6.x<syntaxhighlight lang="bash"> | ||
+ | cd /usr/share/elasticsearch | ||
+ | rm plugin/elasticsearch-migration -rf | ||
+ | yum update elasticsearch --enablerepo=elastic5.x | ||
+ | service elasticsearch restart | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | reference https://github.com/elastic/elasticsearch-migration/tree/2.x | ||
+ | |||
+ | == Snapshots == | ||
+ | preparing for snapshots<syntaxhighlight lang="bash"> | ||
+ | mkdir /home/e-smith/db/elasticsearch | ||
+ | chown elasticsearch:elasticsearch /home/e-smith/db/elasticsearch/ | ||
+ | echo "">> /etc/elasticsearch/elasticsearch.yml | ||
+ | echo 'path.repo: ["/home/e-smith/db/elasticsearch"]' >> /etc/elasticsearch/elasticsearch.yml | ||
+ | service elasticsearch restart | ||
+ | curl -XPUT 'http://localhost:9200/_snapshot/my_backup' -H 'Content-Type: application/json' -d '{ | ||
+ | "type": "fs", | ||
+ | "settings": { | ||
+ | "location": "/home/e-smith/db/elasticsearch", | ||
+ | "compress": true | ||
+ | } | ||
+ | }PUT /_snapshot/my_backup' | ||
+ | |||
+ | </syntaxhighlight>making a snapshot. <syntaxhighlight lang="bash"> | ||
+ | curl -XPUT 'http://localhost:9200/_snapshot/my_backup/snapshot1?wait_for_completion=true' | ||
+ | </syntaxhighlight>restore all indices, but not the state.<syntaxhighlight lang="bash"> | ||
+ | curl -XPUT 'http://localhost:9200/_snapshot/my_backup/snapshot1/_restore' | ||
+ | </syntaxhighlight> | ||
+ | references and more options : https://www.elastic.co/guide/en/elasticsearch/reference/5.5/modules-snapshots.html | ||
==notes== | ==notes== | ||
elasticsearch : OpenJDK 64-Bit Server VM warning: If the number of processors is expected to increase from one, then you should configure the number of parallel GC threads appropriately using -XX:ParallelGCThreads=N | elasticsearch : OpenJDK 64-Bit Server VM warning: If the number of processors is expected to increase from one, then you should configure the number of parallel GC threads appropriately using -XX:ParallelGCThreads=N | ||
---- | ---- | ||
− | [[Category: | + | [[Category:Howto]] |
+ | [[Category:Database]] |
Latest revision as of 04:24, 6 June 2024
How to set elastic search on SME
install and configure
installl elastic repo
yum install smeserver-extrarepositories-elastic signal-event yum-modify
install elastic and dependencies (which are not explicits). You now need to choose the version you want ! 8.x, 7.x, 6.x, 5.x, 2 or 1
yum install elasticsearch java-1.8.0-openjdk --enablerepo=elastic6.x
allow updates
db yum_repositories setprop elastic6.x status enabled TCPPort 9200 access localhost signal-event yum-modify
if you wanted a specific release you can use versionlock
yum install yum-plugin-versionlock -y yum install elasticsearch-7.10.2 java-1.8.0-openjdk --enablerepo=elastic6.x yum versionlock add elasticsearch-7.10.*
configure and start
config set elasticsearch service status enabled mkdir -p /etc/e-smith/templates-custom/etc/systemd/system-preset/49-koozali.preset/ echo '{ push @list,qw(elasticsearch); $OUT.=""; } '> /etc/e-smith/templates-custom/etc/systemd/system-preset/49-koozali.preset/06elasticsearch expand-template /etc/systemd/system-preset/49-koozali.preset echo '[Install] WantedBy=sme-server.target ' > /etc/systemd/system/elasticsearch.service.d/51koozali.conf /etc/e-smith/events/actions/systemd-default systemctl start elasticsearch
installl elastic repo
yum install smeserver-extrarepositories-elastic signal-event yum-modify
install elastic and dependencies (which are not explicits). You now need to choose the version you want 6.x, 5.x, 2 or 1
yum install elasticsearch java-1.8.0-openjdk --enablerepo=elastic6.x
allow updates
db yum_repositories setprop elastic6.x status enabled signal-event yum-modify
make it start at every boot
ln -s /etc/rc.d/init.d/e-smith-service /etc/rc7.d/S95elasticsearch config set elasticsearch service status enabled
start it for the first time
service elasticsearch start
migration from 1.x to higher
upgrade to 2.4 and install plugin
yum upgrade elasticsearch --enablerepo=elastic2
service elasticsearch restart
cd /usr/share/elasticsearch
./bin/plugin install https://github.com/elastic/elasticsearch-migration/releases/download/v2.0.4/elasticsearch-migration-2.0.4.zip
run a tunnel from your computer
ssh -L 9200:localhost:9200 user@yourserver
use your favourite browser to fix things and migrate http://localhost:9200/_plugin/elasticsearch-migration then delete plugin and upgrade to 5.x or 6.x
cd /usr/share/elasticsearch
rm plugin/elasticsearch-migration -rf
yum update elasticsearch --enablerepo=elastic5.x
service elasticsearch restart
reference https://github.com/elastic/elasticsearch-migration/tree/2.x
Snapshots
preparing for snapshots
mkdir /home/e-smith/db/elasticsearch
chown elasticsearch:elasticsearch /home/e-smith/db/elasticsearch/
echo "">> /etc/elasticsearch/elasticsearch.yml
echo 'path.repo: ["/home/e-smith/db/elasticsearch"]' >> /etc/elasticsearch/elasticsearch.yml
service elasticsearch restart
curl -XPUT 'http://localhost:9200/_snapshot/my_backup' -H 'Content-Type: application/json' -d '{
"type": "fs",
"settings": {
"location": "/home/e-smith/db/elasticsearch",
"compress": true
}
}PUT /_snapshot/my_backup'
making a snapshot.
curl -XPUT 'http://localhost:9200/_snapshot/my_backup/snapshot1?wait_for_completion=true'
restore all indices, but not the state.
curl -XPUT 'http://localhost:9200/_snapshot/my_backup/snapshot1/_restore'
references and more options : https://www.elastic.co/guide/en/elasticsearch/reference/5.5/modules-snapshots.html
notes
elasticsearch : OpenJDK 64-Bit Server VM warning: If the number of processors is expected to increase from one, then you should configure the number of parallel GC threads appropriately using -XX:ParallelGCThreads=N