Update ElasticSearch

From Archivematica
(Difference between revisions)
Jump to: navigation, search
Line 60: Line 60:
 
12. Migrate the indexes
 
12. Migrate the indexes
  
   sudo su - archivematica -s /bin/bash
+
   sudo -u archivematica bash -c " \
   export $(cat /etc/sysconfig/archivematica-dashboard)
+
  set -a -e -x
   cd /usr/share/archivematica/dashboar
+
  source /etc/default/archivematica-dashboard || \
   /usr/share/archivematica/virtualenvs/archivematica-dashboard/bin/python manage.py reindex_from_remote_cluster http://localhost:9500
+
   source /etc/sysconfig/archivematica-dashboard \
   exit
+
        || (echo 'Environment file not found'; exit 1)
 +
   cd /usr/share/archivematica/dashboard
 +
   /usr/share/archivematica/virtualenvs/archivematica-dashboard/bin/python manage.py manage.py \
 +
    reindex_from_remote_cluster http://localhost:9500
 +
   ";
  
13. Stop the temporary elasticsearch service
+
13. Verify that the sum of aips and aipfiles in the new ES index, is the same than in the previous one:
 +
 
 +
  TBD
 +
 
 +
14. Stop the temporary elasticsearch service
  
 
   kill $(cat ~/elasticsearch-1.7.5/elastic-tmp.pid)
 
   kill $(cat ~/elasticsearch-1.7.5/elastic-tmp.pid)

Revision as of 10:42, 19 February 2019

ElasticSearch update

1. Check that ES is up and running, and note the results:

 curl -X GET "localhost:9200/_cat/indices?v"
 health status index     pri rep docs.count docs.deleted store.size pri.store.size 
 yellow open   aips        5   1         11            0    267.9kb        267.9kb 
 yellow open   transfers   5   1         24            0     35.2kb         35.2kb

2. Stop elasticsearch service

 sudo service elasticsearch stop

3. Download a temporary copy of elasticsearch (same version than intalled)

 wget https://download.elastic.co/elasticsearch/elasticsearch/elasticsearch-1.7.5.tar.gz

4. Uncompress the downloaded tar.gz and go into it

 tar zxvf elasticsearch-1.7.5.tar.gz
 cd elasticsearch-1.7.5

5. Copy data from system wide installed elasticsearch, ot the temporary copy

 cp /var/lib/elasticsearch data -rf

6. Adjust file permissions

 chown <your user>:<your group> data -R

7. Launch the temporary elasticsearch instance

 ./bin/elasticsearch -d -p elastic-tmp.pid -Des.http.port=9500

8. Verify that the indexes were properly copied

 curl -X GET "localhost:9500/_cat/indices?v"

9. Remove elasticsearch 1.7.5 and it's files

 Redhat: sudo yum remove elasticsearch
 Ubuntu: sudo apt-get remove elasticsearch
 rm -rf /var/lib/elasticsearch

10. Upgrade archivematica and install elasticsearch 6

 ansible-playbook -i hosts singlenode.yml --tags=elasticsearch,archivematica-src

11. Configure ElasticSearch 6 to handle reindex from the temporary es

 echo 'reindex.remote.whitelist: localhost:9500' | sudo tee -a /etc/elasticsearch/elasticsearch.yml
 sudo service elasticsearch restart

12. Migrate the indexes

 sudo -u archivematica bash -c " \
 set -a -e -x
 source /etc/default/archivematica-dashboard || \
 source /etc/sysconfig/archivematica-dashboard \
       || (echo 'Environment file not found'; exit 1)
 cd /usr/share/archivematica/dashboard
 /usr/share/archivematica/virtualenvs/archivematica-dashboard/bin/python manage.py manage.py \ 
   reindex_from_remote_cluster http://localhost:9500
 ";

13. Verify that the sum of aips and aipfiles in the new ES index, is the same than in the previous one:

 TBD

14. Stop the temporary elasticsearch service

 kill $(cat ~/elasticsearch-1.7.5/elastic-tmp.pid)
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox