Elasticsearch叢集運維
1、ES滾動重啟:
#準備工作: ##提前開啟如下資訊,有些API是需要觀察的各項指標(出現問題則停止重啟),其餘是配合檢查的API: ##檢視叢集UNASSIGEN shards 原因 curl http://0.0.0.0:9200/_cluster/allocation/explain?pretty ###叢集配置 curl http://0.0.0.0:9200/_cluster/settings?pretty ###pending-tasks curl http://0.0.0.0:9200/_cluster/pending_tasks?pretty ###叢集健康 curl http://0.0.0.0:9200/_cluster/health?pretty #重啟client-node組節點 #start 步驟1:關閉其中一個client節點 步驟2:重啟節點 步驟3:檢查節點是否加入叢集 步驟4:重複步驟2-3重啟其他節點 #end #重啟mater-node節點 #start 步驟1:明確master節點IP 步驟2:關閉master-node組的一個非master節點 步驟3:重啟節點 步驟4:檢查節點是否加入叢集(確保已經加入叢集) 步驟5:重複步驟2-4,重啟另外的master-node組的一個非master節點 步驟6:關閉master節點 步驟7:重啟master節點 ##在master節點選舉過程中,叢集功能不可用(包括了:索引功能、search功能,API功能堵塞等),叢集並不會立即選舉出master節點(預設進行選舉的時間為3s, 由於網路的問題,往往將master選舉的時間延長) 步驟8:檢查叢集裝填,檢查節點是否加入叢集。 ##當master選舉出來,叢集功能將全部正常。 #end #重啟data-node節點 #start 步驟1:禁用分片分配 curl -X PUT http://0.0.0.0:9200/_cluster/settings?pretty -d '{"transient": {"cluster.routing.allocation.enable": "new_primaries"}}' ##禁用分片分配期間,叢集新建索引將無法分配副本分片,允許新建索引主分片的分配 步驟2:執行同步重新整理 curl -XPOST "http://0.0.0.0:9200/_flush/synced?pretty" ##對於在此刻不在更新的索引,此操作將通過synced值來確認主副分片是否資料一致(加快了分片加入叢集的時間);對於在此刻索引發生變化的分片,此操作對節點加入叢集的索引恢復沒有作用 步驟3:關閉一個data-node節點 步驟4:重啟節點 步驟5:檢查節點是否加入叢集 步驟6:啟用分片分配 curl -X PUT http://0.0.0.0:9200/_cluster/settings?pretty -d '{"transient": {"cluster.routing.allocation.enable": "all"}}' 步驟7:檢查叢集狀態是否為green ##在啟用了分片分配後,UNASSIGEN shards會瞬間減少(不會瞬間減少為0,因為在大的ES叢集中,每個節點都會有在更新的索引分片);之後會出現一些initializing shards,這部分分片會需要等待一段時間才會減少為0(分片同步過程中) 步驟8:重複步驟3-7,重啟其他節點 步驟9:節點全部重啟完畢後,檢查叢集配置,確保沒有禁用分片分配 #end
參考資料:
ES官方重啟教程 https://www.elastic.co/guide/en/elasticsearch/reference/1.4/cluster-nodes-shutdown.html#_rolling_restart_of_nodes_full_cluster_restart
2、ES常用設定:
ES cluster的settings:
{"persistent":{"cluster.routing.allocation.node_concurrent_recoveries": 8}}
允許在節點上併發分片恢復的個數(寫和讀),只控制“恢復”過程的併發數,對叢集“重平衡”和其他情況下的併發數沒有影響。
{"persistent":{"cluster.routing.allocation.node_initial_primaries_recoveries": 16}}
控制節點重啟後有多少併發數從本地恢復未分配的主分片。
{"persistent":{"indices.recovery.max_bytes_per_sec": "200mb"}}
設定索引恢復時每秒位元組數。
{"transient":{"cluster.routing.allocation.cluster_concurrent_rebalance": 4}}
允許在叢集上併發分片重平衡的個數,只控制“重平衡”過程的併發數,對叢集“恢復”和其他情況下的併發數沒有影響。
{"transient":{"cluster.routing.allocation.cluster_concurrent_rebalance": 0}}
禁用叢集“rebalance”
{"transient":{"cluster.routing.allocation.cluster_concurrent_rebalance": null}}
啟用叢集“rebalance”
#調整叢集恢復併發數為4
curl -XPUT http://<domain>:<port>/_cluster/settings?pretty -d'{"transient":{"cluster.routing.allocation.node_concurrent_recoveries": 4}}'
#取消設定,叢集恢復併發數為預設
curl -XPUT http://<domain>:<port>/_cluster/settings?pretty -d'{"transient":{"cluster.routing.allocation.node_concurrent_recoveries": null}}'
#通過IP,排除叢集中的某個節點:節點IP:10.100.0.11
curl -XPUT http://<domain>:<port>/_cluster/settings?pretty -d '{"transient":{"cluster.routing.allocation.exclude._ip":"10.100.0.11"}}'
#通過IP,排除叢集中的多個節點:節點IP:10.10.0.11,10.100.0.12
curl -XPUT http://<domain>:<port>/_cluster/settings?pretty -d '{"transient":{"cluster.routing.allocation.exclude._ip":"10.100.0.11,10.100.0.12"}}'
#取消節點排除的限制
curl -XPUT http://<domain>:<port>/_cluster/settings?pretty -d '{"transient":{"cluster.routing.allocation.exclude._ip": null}}'
#調整資料節點的低水位值為600gb
curl -XPUT http://<domain>:<port>/_cluster/settings?pretty -d '{"transient":{"cluster.routing.allocation.disk.watermark.low":"600gb"}}'
#調整資料節點的高水位值為300gb
curl -XPUT http://<domain>:<port>/_cluster/settings?pretty -d '{"transient":{"cluster.routing.allocation.disk.watermark.high":"300gb"}}'
#取消使用者設定,叢集恢復這一項的預設配置
curl -XPUT http://<domain>:<port>/_cluster/settings?pretty -d '{"transient":{"cluster.routing.allocation.disk.watermark.low": null}}'
curl -XPUT http://<domain>:<port>/_cluster/settings?pretty -d '{"transient":{"cluster.routing.allocation.disk.watermark.low": null}}'
相關推薦
攜程機票ElasticSearch叢集運維馴服記
講師介紹 許鵬,攜程機票大資料基礎平臺Leader,負責平臺的構建和運維。深度掌握各種大資料開源產品,如Spark、Presto及Elasticsearch。著有《Apache Spark原始碼剖析》一書。 今天跟大家分享的是攜程機票ElasticSearch叢集的規劃和具體設定,內容相對細緻,同
Elasticsearch叢集運維
1、ES滾動重啟: #準備工作: ##提前開啟如下資訊,有些API是需要觀察的各項指標(出現問題則停止重啟),其餘是配合檢查的API: ##檢視叢集UNASSIGEN shards 原因 curl http://0.0.0.0:9200/_cluster/allocation/explain?pr
PB級大規模Elasticsearch叢集運維與調優實踐
導語 | 騰訊雲Elasticsearch 被廣泛應用於日誌實時分析、結構化資料分析、全文檢索等場景中,本文將以情景植入的方式,向大家介紹與騰訊雲客戶合作過程中遇到的各種典型問題,以及相應的解決思路與方法,希望與大家一同交流。文章作者:bellen,騰訊雲大資料研發工程師。 一、背景 &nb
Hadoop----叢集運維(持續更新...)
前言 本篇介紹Hadoop的一些常用知識。要說和網上其他manual的區別,那就是這是筆者寫的一套成體系的文件,不是隨心所欲而作。 常用HDFS命令 hadoop fs -ls URI hadoop fs -du -h URI hadoo
rabbitmq叢集運維一點總結
說明:以下操作都以三節點叢集為例,機器名標記為機器A、機器B、機器C,如果為雙節點忽略機器C,如果為各多節點則與機器C操作相同 一、rabbitmq叢集必要條件 1.1、繫結實體ip,即ip a所能查詢到的繫結到網絡卡上的ip,以下是繫結方法: 1 #編輯配置路徑 /etc/rabbitmq/ra
Rancher 2.1全面釋出,優化Kubernetes叢集運維
Rancher 2.1已於近日全面釋出! Rancher 2.1是自去年九月Rancher Labs全面擁抱Kubernetes、釋出全新里程碑產品Rancher 2.0——開源的企業級Kubernetes管理平臺之後,最為重大的版本更新。
etcd 叢集運維實踐
【編者的話】etcd 是 Kubernetes 叢集的資料核心,最嚴重的情況是,當 etcd 出問題徹底無法恢復的時候,解決問題的辦法可能只有重新搭建一個環境。因此圍繞 etcd 相關的運維知識就比較重要,etcd 可以容器化部署,也可以在宿主機自行搭建,以下內容是通用的。 叢集的備份和恢復
Elasticsearch常用運維命令收集
elasticsearch運維常用命令 elasticsearch記憶體設定: export ES_HEAP_SIZE=10g 或者啟動的時候設定引數,確保Xmx和Xms大小相等: ./bin/elasticsearch -Xmx10g -Xms10g 啟動程序: ./el
Hbase叢集運維及應用效能優化總結(hbase1.20+)
(一). 作業系統 1. 足夠大的記憶體 2. 作業系統64位,jdk64位 3. 設定li
【openshift 學習筆記】第十三章 叢集運維管理
一. 安裝配置cockpit 在叢集所有節點安裝 cockpit 以及 docker kubernetes 外掛yum install -y cockpit cockpit-docker cockpit
阿里巴巴大規模神龍裸金屬 Kubernetes 叢集運維實踐
作者 | 姚捷(嘍哥)阿里雲容器平臺叢集管理高階技術專家 本文節選自《不一樣的 雙11 技術:阿里巴巴經濟體雲原生實踐》一書,點選即可完成下載。 導讀:值得阿里巴巴技術人驕傲的是 2019 年阿里巴巴 雙11 核心系統 100% 以雲原生的方式上雲,完美支撐了 54.4w 峰值流量以
ElasticSearch 叢集的規劃部署與運維
> **公號:碼農充電站pro** > **主頁:** ### 1,常見的叢集部署方式 ES 有以下不同型別的節點: - **Master**(eligible)節點:只有 Master eligible 節點可以成為 Master 節點。 - Master 節點用於維護索引資訊和叢集狀態。 -
Elasticsearch 學習之攜程機票ElasticSearch集群運維馴服記(強烈推薦)
使用情況 strong 簡單 而且 第一個 並不是 5.x ber als 轉自: https://mp.weixin.qq.com/s/wmSTyIGCVhItVNPHcH7nsA 一、整體架構 為什麽采用ES作為搜索引擎呢?在做任何事情的時候,不要一上來就急
高效運維最佳實踐(03):Redis叢集技術及Codis實踐 (轉)
專欄介紹 “高效運維最佳實踐”是InfoQ在2015年推出的精品專欄,由觸控科技運維總監蕭田國撰寫,InfoQ總編輯崔康策劃。 前言 誠如開篇文章所言,高效運維包括管理的專業化和技術的專業化。前兩篇我們主要在說些管理相關的內容,本篇說一下技術專業化。希望讀者朋友們能適應這個轉
《阿里巴巴MongoDB4.0高階實戰:基於Java Spring Boot 2.0》運維、監控、聚合、叢集、監控等高階面試題
《阿里巴巴MongoDB4.0高階實戰》阿里巴巴技術大牛 資深專家P9葉翔、專家徐雷. NoSQL排名第一!最流行的NoSQL資料庫;谷歌、阿里巴巴、螞蟻金服、騰訊、百度等一線網際網路公司必備技能。 本系列課程涵蓋:MongoDB入門命令、管理、聚合分析、核心架構、資料庫管理、匯入匯出、索引、
[運維] 高效能負載均衡叢集
1.Nginx+Tomcat搭建高效能負載均衡叢集 https://blog.csdn.net/wang379275614/article/details/47778201 2.使用Tomcat-redis-session-manager來實現Tomcat叢集部署中的Ses
Kubernetes實戰 高可用叢集搭建,配置,運維與應用
1-1 K8S導學 1-2 搭建K8S叢集步驟和要點介紹 1-3 搭建三節點Ubuntu環境 1-4 安裝容器引擎 1-5 下載Kubeadm、node元件和命令列工具 1-6 向叢集中加入worker節點 1-7 安裝dashboard和heapste
ElasticSearch - 環境架設、基本運維
ElasticSearch環境架設 先下載想要的版本ES ElasticSearch : https://www.elastic.co/downloads/elasticsearch 確保每臺機器都升級 jdk 到
網站運維技術與實踐之叢集架構規劃
叢集架構規劃和設計只要是涉及到高併發高流量的專案,基本上都需要。 本文主要圍繞兩個方面,一個是IDC的規劃和選擇,另一個是CDN。 一、IDC的規劃和選擇 IDC的選擇是網站上線前要做的最重要的事情之一。哪怕發展初期只有一臺伺服器,選擇一個位置不錯的機房託管,都會助益良多。 也許有人會問IDC是什麼?
ELK批量刪除索引及叢集相關操作記錄-運維筆記
線上部署了ELK+Redis日誌分析平臺環境, 隨著各類日誌資料來源源不斷的收集, 發現過了一段時間之後, ELK檢視會原來越慢, 重啟elasticsearch伺服器節點之前同步時間也會很長, 這是因為長期以來ELK收集的索引沒有刪除引起的! 以下是ELK批量刪除索引的操作記錄: