直接將一台已經建立好索引的 ES,透過 FTP 方式將 NODE 資料,整個複製到一台新ES上,然後立刻讓新的 ES 能夠工作,一種人工手動複製的方法,適合實驗環境:
1. 先將 新ES 的服務停止:
2. 找出 源頭ES 的 NODE 資料,一般是指這個資料匣: /var/lib/elasticsearch/elasticsearch
然後將 elasticsearch 資料匣複製到 新ES上的
/var/lib/elasticsearch/
3. 啟動 新ES 的服務,並觀察 elasticsearch.log 內容
這樣就結束。
另外,以下是處理索引倉庫的部分, 僅參考用
在已經安裝好ES 的新機上
1. 備份 /var2/es_backup
2. 刪除 /var2/es_backup
3. 創建 /var2/es_backup
4. 改變 owner
chown -R elasticsearch:elasticsearch /var2/es_backup
5. 改變屬性
chmod -R 777 /var2/es_backup
chmod +t /var2/es_backup
6. 將資料FTP過來
7. 檢查
curl -XGET "localhost:9200/_snapshot/es_backup/_all"
8. 準備復原資料
curl -XPOST "localhost:9200/_all/_close"
curl -XPUT localhost:9200/_cluster/settings -d '{
"persistent" : {
"cluster.routing.allocation.node_concurrent_recoveries" : "5"
}
}'
curl -XPUT localhost:9200/_cluster/settings -d '{
"persistent" : {
"indices.recovery.max_bytes_per_sec": "200mb",
"indices.recovery.concurrent_streams": 5
}
}'
curl -XPOST "localhost:9200/_snapshot/es_backup/20170101/_restore?wait_for_completion=true"
- The End -
搜尋此網誌
2017年1月18日 星期三
2017年1月9日 星期一
查看 elasticsearch 記憶體的設置是否生效
su elasticsearch --shell /bin/bash --command "ulimit -a"
安裝好 elasticsearch 要記得去調整記憶體限制
nano /etc/security/limits.conf
加入以下
# allow user 'elasticsearch' mlockall
elasticsearch soft memlock unlimited
elasticsearch hard memlock unlimited
安裝好 elasticsearch 要記得去調整記憶體限制
nano /etc/security/limits.conf
加入以下
# allow user 'elasticsearch' mlockall
elasticsearch soft memlock unlimited
elasticsearch hard memlock unlimited
2016年11月4日 星期五
Elasticsearch Backup and Restore 快照(備份)與還原
1.首 先 要 建 立 倉 庫
mkdir /var2/es_backup
chmod 777 /var2/es_backup
chmod +t /var2/es_backup
vi /etc/elasticsearch/elasticsearch.yml
檔案尾端依照格式加入
path.repo: ["/var2/es_backup"]
重啟動 elasticsearch
systemctl restart elasticsearch
開始註冊倉庫
curl -X PUT 'http://localhost:9200/_snapshot/es_backup' -d '{
"type": "fs",
"settings": {
"location": "/var2/es_backup",
"compress": true
}
}'
註:如果要刪除已經註冊的倉庫
curl -XDELETE 'http://localhost:9200/_snapshot/es_backup'
確認倉庫是否成功註冊
curl -XGET 'http://localhost:9200/_snapshot/es_backup?pretty'
得到以下訊息
{
"es_backup" : {
"type" : "fs",
"settings" : {
"compress" : "true",
"location" : "/es_backup"
}
}
}
確認倉庫內所有的內容
curl -XGET 'http://localhost:9200/_snapshot/_all'
2.建 立 快 照
一間倉庫裡面,可以有很多個快照
而我故意用 20170101 來當作一個快照名稱,方便管理
curl -XPUT "localhost:9200/_snapshot/es_backup/20170101?wait_for_completion=true"
註:如果要刪除已經建立的快照
curl -XDELETE "localhost:9200/_snapshot/es_backup/20170101"
以下指令可以獲取正在運行的快照狀態
curl -XGET "localhost:9200/_snapshot/_status"
以下的指令可以把倉庫裡所有的快照條列出來:
curl -XGET "localhost:9200/_snapshot/es_backup/_all"
3.復 原
復原之前,一些 index 都要先 close,使用以下指令:
curl -XPOST "localhost:9200/_all/_close"
使用以下的指令來進行快照復原:
curl -XPOST "localhost:9200/_snapshot/es_backup/20170101/_restore?wait_for_completion=true"
成功會獲得資訊,有看到 failed:0 字眼
mkdir /var2/es_backup
chmod 777 /var2/es_backup
chmod +t /var2/es_backup
vi /etc/elasticsearch/elasticsearch.yml
檔案尾端依照格式加入
path.repo: ["/var2/es_backup"]
重啟動 elasticsearch
systemctl restart elasticsearch
開始註冊倉庫
curl -X PUT 'http://localhost:9200/_snapshot/es_backup' -d '{
"type": "fs",
"settings": {
"location": "/var2/es_backup",
"compress": true
}
}'
註:如果要刪除已經註冊的倉庫
curl -XDELETE 'http://localhost:9200/_snapshot/es_backup'
確認倉庫是否成功註冊
curl -XGET 'http://localhost:9200/_snapshot/es_backup?pretty'
得到以下訊息
{
"es_backup" : {
"type" : "fs",
"settings" : {
"compress" : "true",
"location" : "/es_backup"
}
}
}
確認倉庫內所有的內容
curl -XGET 'http://localhost:9200/_snapshot/_all'
2.建 立 快 照
一間倉庫裡面,可以有很多個快照
而我故意用 20170101 來當作一個快照名稱,方便管理
curl -XPUT "localhost:9200/_snapshot/es_backup/20170101?wait_for_completion=true"
註:如果要刪除已經建立的快照
curl -XDELETE "localhost:9200/_snapshot/es_backup/20170101"
以下指令可以獲取正在運行的快照狀態
curl -XGET "localhost:9200/_snapshot/_status"
以下的指令可以把倉庫裡所有的快照條列出來:
curl -XGET "localhost:9200/_snapshot/es_backup/_all"
3.復 原
復原之前,一些 index 都要先 close,使用以下指令:
curl -XPOST "localhost:9200/_all/_close"
使用以下的指令來進行快照復原:
curl -XPOST "localhost:9200/_snapshot/es_backup/20170101/_restore?wait_for_completion=true"
成功會獲得資訊,有看到 failed:0 字眼
2016年7月22日 星期五
安裝IK plugin
參考1 參考2(github)
先安裝 git
yum -y install git.x86_64
從 root 或自己的目錄下,下載:
git clone https://github.com/medcl/elasticsearch-analysis-ik
進入該目錄
cd elasticsearch-analysis-ik
安裝開始:
確認已經在 elasticsearch-analysis-ik 目錄底下
檢查作業系統是否事先已安裝好 maven
如果還沒,就先
yum -y install maven
安裝好maven之後,一定要到剛剛下載好的elasticsearch-analysis-ik 目錄底下,
按照以下指令,就會編譯好軟體。編譯過程需要一點時間
mvn clean
mvn compile
mvn package
到 root 或自己的目錄下 /root/elasticsearch-analysis-ik/target/releases/
看到 release 目錄下有一個 zip 檔案
例如 #{project_path}/elasticsearch-analysis-ik/target/releases/elasticsearch-analysis-ik-*.zip
拷貝和解壓到 elasticsearch 的插件目錄, 如: /usr/share/elasticsearch/plugins/ik
如果有詞庫要載入,則必須編輯
vi /usr/share/elasticsearch/plugins/ik/config/IKAnalyzer.cfg.xml
修改範例
<!--用户可以在这里配置远程扩展字典 -->
<entry key="remote_ext_dict">http://123.51.165.169:8080/seservice/dictionary/good</entry>
<!--用户可以在这里配置远程扩展停止词字典-->
<entry key="remote_ext_stopwords">http://123.51.165.169:8080/seservice/dictionary/bad</entry>
接下來一定要 重啟elasticsearch:
systemctl daemon-reload
systemctl restart elasticsearch
開瀏覽器驗證
http://47.90.52.37:9200/_analyze?analyzer=ik&pretty=true&text=统一奶茶
先安裝 git
yum -y install git.x86_64
從 root 或自己的目錄下,下載:
git clone https://github.com/medcl/elasticsearch-analysis-ik
進入該目錄
cd elasticsearch-analysis-ik
安裝開始:
確認已經在 elasticsearch-analysis-ik 目錄底下
檢查作業系統是否事先已安裝好 maven
如果還沒,就先
yum -y install maven
安裝好maven之後,一定要到剛剛下載好的elasticsearch-analysis-ik 目錄底下,
按照以下指令,就會編譯好軟體。編譯過程需要一點時間
mvn clean
mvn compile
mvn package
到 root 或自己的目錄下 /root/elasticsearch-analysis-ik/target/releases/
看到 release 目錄下有一個 zip 檔案
例如 #{project_path}/elasticsearch-analysis-ik/target/releases/elasticsearch-analysis-ik-*.zip
拷貝和解壓到 elasticsearch 的插件目錄, 如: /usr/share/elasticsearch/plugins/ik
如果有詞庫要載入,則必須編輯
vi /usr/share/elasticsearch/plugins/ik/config/IKAnalyzer.cfg.xml
修改範例
<!--用户可以在这里配置远程扩展字典 -->
<entry key="remote_ext_dict">http://123.51.165.169:8080/seservice/dictionary/good</entry>
<!--用户可以在这里配置远程扩展停止词字典-->
<entry key="remote_ext_stopwords">http://123.51.165.169:8080/seservice/dictionary/bad</entry>
接下來一定要 重啟elasticsearch:
systemctl daemon-reload
systemctl restart elasticsearch
開瀏覽器驗證
http://47.90.52.37:9200/_analyze?analyzer=ik&pretty=true&text=统一奶茶
2016年7月20日 星期三
Elastic Setup
0.
如果還沒安裝 JAVA,先安裝好
yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel
ES的歷史版本
https://github.com/elastic/elasticsearch
1.
rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch
2.
vi /etc/yum.repos.d/elasticsearch.repo
最新 5 版本:
舊的 2.x 版本:
[elasticsearch-2.x]
name=Elasticsearch repository for 2.x packages
baseurl=https://packages.elastic.co/elasticsearch/2.x/centos
enabled=1
gpgcheck=1
gpgkey=https://packages.elastic.co/GPG-KEY-elasticsearch
3.
yum -y install elasticsearch
4.
vi /etc/security/limits.conf
elasticsearch soft memlock unlimited
elasticsearch hard memlock unlimited
5.
編輯
vi /etc/elasticsearch/elasticsearch.yml,加入以下設定(要用空格,不能用tab)
檔案的最底端,加入以下:
network.host: 0.0.0.0
bootstrap.mlockall: true
index:
analysis:
analyzer:
default:
type: ik
use_smart: false
6.
# Install kopf Plugin
cd /usr/share/elasticsearch/bin
./plugin install lmenezes/elasticsearch-kopf
7.
# Add allow port 9200, 9300
firewall-cmd --permanent --add-port={9200/tcp,9300/tcp}
firewall-cmd --reload
8.
chkconfig --add elasticsearch
systemctl daemon-reload
systemctl enable elasticsearch.service
systemctl start elasticsearch
如果還沒安裝 JAVA,先安裝好
yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel
ES的歷史版本
https://github.com/elastic/elasticsearch
1.
rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch
2.
vi /etc/yum.repos.d/elasticsearch.repo
最新 5 版本:
[elasticsearch-5.x] name=Elasticsearch repository for 5.x packages baseurl=https://artifacts.elastic.co/packages/5.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md
舊的 2.x 版本:
[elasticsearch-2.x]
name=Elasticsearch repository for 2.x packages
baseurl=https://packages.elastic.co/elasticsearch/2.x/centos
enabled=1
gpgcheck=1
gpgkey=https://packages.elastic.co/GPG-KEY-elasticsearch
3.
yum -y install elasticsearch
4.
vi /etc/security/limits.conf
elasticsearch soft memlock unlimited
elasticsearch hard memlock unlimited
5.
編輯
vi /etc/elasticsearch/elasticsearch.yml,加入以下設定(要用空格,不能用tab)
檔案的最底端,加入以下:
network.host: 0.0.0.0
bootstrap.mlockall: true
index:
analysis:
analyzer:
default:
type: ik
use_smart: false
6.
# Install kopf Plugin
cd /usr/share/elasticsearch/bin
./plugin install lmenezes/elasticsearch-kopf
7.
# Add allow port 9200, 9300
firewall-cmd --permanent --add-port={9200/tcp,9300/tcp}
firewall-cmd --reload
8.
chkconfig --add elasticsearch
systemctl daemon-reload
systemctl enable elasticsearch.service
systemctl start elasticsearch
訂閱:
文章 (Atom)