資料庫常見知識點總結-列式儲存、主鍵、儲存大資料量問題
阿新 • • 發佈:2020-11-25
ES叢集搭建
安裝環境
需要至少準備兩臺伺服器,並安裝JDK環境。
我這裡用了2臺伺服器虛擬機器搭建的叢集測試。
1.安裝ES
下載ES的安裝包,我這裡用的是 elasticsearch-7.6.1-linux-x86_64.tar.gz
把安裝包通過工具拷貝到要安裝的目錄下,執行下列命令解壓:
tar -zxvf elasticsearch-7.6.1-linux-x86_64.tar.gz
進入config配置目錄下,修改elasticsearch.yml配置檔案
cd elasticsearch-7.6.1/config/
vim elasticsearch.yml
修改內容如下:
#叢集名稱,每臺節點的名稱必須相同 cluster.name: elasticsearch #節點名稱,每臺不能一樣 node.name: node01 #是否可被選舉為主節點 node.master: true #是否可儲存資料 node.data: true #節點IP network.host: 192.168.187.131 #ES訪問埠號 http.port: 9200 #資料儲存路徑 path.data: /tools/elasticsearch-7.6.1/data #日誌儲存路徑 path.logs: /tools/elasticsearch-7.6.1/logs #鎖住實體記憶體,不使用swap記憶體,有swap記憶體的可以開啟此項 bootstrap.memory_lock: false bootstrap.system_call_filter: false #設定節點之間互動的tcp埠,預設是9300 transport.tcp.port: 9300 #設定是否壓縮tcp傳輸時的資料,預設為false,不壓縮 transport.tcp.compress: true # 為了避免ES腦裂,叢集節點數最少為 半數+1 discovery.zen.minimum_master_nodes: 2 #自動發現拼其他節點超時時間 discovery.zen.ping_timeout: 3s #設定叢集的初始節點列表 discovery.zen.ping.unicast.hosts: ["192.168.187.131","192.168.187.132"] #是否支援跨域 http.cors.enabled: true http.cors.allow-origin: "*"
除了節點名稱,節點IP設定不一樣,其他伺服器節點的配置都相同,直接複製配置檔案即可。
修改其他配置:
- jvm 記憶體不足,修改記憶體大小
vim elasticsearch/config/jvm.options
-Xms512m
-Xmx512m
- 作業系統調優,在/etc/sysctl.conf新增如下內容
#系統最大開啟檔案描述符數
fs.file-max=655360
#限制一個程序擁有虛擬記憶體區域的大小
vm.max_map_count=655360
sysctl -p生效
-
修改vim /etc/security/limits.conf檔案
* soft nofile 65536 * hard nofile 65536 * soft nproc 65536 * hard nproc 65536 * soft memlock unlimited * hard memlock unlimited
-
修改/etc/security/limits.d/90-nproc.conf檔案
* soft nproc 1024 修改前 * soft nproc 65536 修改後
-
ES的啟動不能使用root使用者,要建立一個普通使用者,並把ES檔案許可權賦予它
# 建立使用者組 groupadd es # 建立使用者並新增至使用者組 useradd es -g es # 更改使用者密碼(輸入 123123) passwd es #賦予許可權 chown -R es:123456 elasticsearch-7.6.1 chmod -R 777 elasticsearch-7.6.1
- 切換到es使用者下elasticsearch-7.6.1/bin目錄下,啟動
su es
./elasticsearch
#後臺啟動
./elasticsearch -d
- 檢視啟動
netstat -tlnp | egrep '9200|9300'
service elasticsearch status
jps
其他節點ES也做如上修改即可
2.安裝kibana
Kibana是一個針對Elasticsearch的開源分析及視覺化平臺,用來搜尋、檢視互動儲存在Elasticsearch索引中的資料。使用Kibana,可以通過各種圖表進行高階資料分析及展示。
Kibana讓海量資料更容易理解。它操作簡單,基於瀏覽器的使用者介面可以快速建立儀表板(dashboard)實時顯示Elasticsearch查詢動態。
設定Kibana非常簡單。無需編碼或者額外的基礎架構,幾分鐘內就可以完成Kibana安裝並啟動Elasticsearch索引監測。
- 下載kibana的安裝包kibana-7.6.1-linux-x86_64.tar.gz,注意kibana的版本要和安裝的ES對應,只需要一臺主節點安裝即可
和ES放到一個目錄下安裝,執行解壓命令
tar -zxvf kibana-7.6.1-linux-x86_64.tar.gz
- 編輯檔案config/kibana.yml ,配置屬性,做如下修改
#本機IP
server.host: "192.168.187.131"
#kibana訪問埠號
server.port: 5601
#連線的ES地址
elasticsearch.hosts: ["http://192.168.187.131:9200"]
#編碼格式
i18n.locale: "zh-CN"
#kibana的隨機密匙設定
xpack.reporting.encryptionKey: "es"
xpack.security.encryptionKey: "122333444455555666666777777788888888"
xpack.encryptedSavedObjects.encryptionKey: "122333444455555666666777777788888888"
-
先啟動ES之後,在啟動kibana
#切換到kibana的bin目錄下 執行命令 nohup ./kibana & #檢視實時日誌,在bin目錄下 tail -f nohup.out #停止執行, 查到程序號,然後殺死 netstat -anltp|grep 5601
-
kibana訪問 ip:5601,載入成功如下