第1 8章 elasticsearch水平擴充套件

2021-09-19 04:57:28 字數 2138 閱讀 8316

tar -zxvf elasticsearch-5.6.6.tar.gz 

ln -s elasticsearch-5.6.6 elasticsearch

groupadd elk

useradd elk -g elk

啟動後,提示

[2019-04-18t10:58:25,586][error][o.e.b.bootstrap          ] [bwhs199] node validation exception

[2] bootstrap checks failed

[1]: max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]

[2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

執行下面的命令,重啟

vi /etc/sysctl.conf 

# 新增

vm.max_map_count=655360

#再執行此命令

sysctl -p

vi /etc/security/limits.conf

# 新增下面兩行

* hard nofile 65536

* soft nofile 65536

在當前es節點,新增自身的host,執行./elasticsearch -d即可

接著就可以在kibana中看到es動態平衡後的效果,shard的調整由es自身的平衡機制控制,es其他節點根本不需要重啟

從下圖可以看出個索引資料已經在寫入了

按照上面的操作,es平均分配後,會帶來乙個問題.如果有乙個磁碟比較小,他也會分配同樣多的shard,導致很快磁碟出現報警。只是平衡分割槽,這樣節點都一樣,很容易擴充套件和維護

好吧,我妥協,再掛在乙個磁碟把,雖然配置很簡單,但是更改配置後,怎麼平滑重啟es呢?

檢視官方文件rolling upgrades,以及elasticsearch如何安全重啟節點

1、停止分割槽

put _cluster/settings

}

2、停止需要公升級的節點

注意curl -xpost這個已經作廢了。

ps -ef|grep elasticsearch

kill -9 ***(pid)

3、啟動需要公升級的節點

sudo su - 

su - elk

./elasticsearch -d

4、恢復分割槽分配

執行get _cat/nodes檢視節點是否起來,執行get _cluster/health檢視集群是否監控,如果沒有問題,再恢復分割槽,這樣就可以了。

put _cluster/settings

}

這個分配操作消耗大量的計算資源

第18章 終端I O

在我們設定定時任務的時候經常會使用標準輸出和標準錯誤輸出。這個在linux是乙個非常重要的概念,而且這個很有用。程式應該有資料庫的 端 資料的目的端,以及報告問題的地方,它們被稱為標準輸入 標準輸出以及標準錯誤輸出。程式啟動的時候,預設情況下,標準輸出 輸入都會已經開啟,且已準備好供其使用。我們使用...

第18章 網路程式設計

第18章 網路程式設計 計算機上面可以安裝非常多的應用軟體,那麼如何區分這些軟體?需要通過埠號來區分,埠號,相當與房子中開的們.一 埠號在計算機裡面有2個位元組那麼大,因此埠號的取值範圍 0 65535 共65536個 但是1024以下的埠號,通常是計算機內建軟體埠 類似於現實生活中的短號號碼 12...

第18章 Web主機託管

介紹了在現代的web託管環境中部署伺服器的若干方法,http對虛擬web託管的支援以及如何在地理上相距遙遠的伺服器之間複製內容.2.1 web主機託管 對內容資源的儲存,協調以及管理的職責統稱為web主機託管,是web伺服器的主要功能之一.2.2 共享主機託管或虛擬主機託管 web託管者通過讓一些顧...