【Ansible】Ansible 管理 Elasticsearch 集群啟停

一、集群節點信息

通過 Ansible inventory 定義的集群節點分組如下:

  • [es](Elasticsearch 節點)

    • 192.168.100.150
    • 192.168.100.151
    • 192.168.100.152
  • [logstash](Logstash 節點)

    • 192.168.100.151
  • [kibana](Kibana 節點)

    • 192.168.100.150

二、集群啟動腳本(es_start.sh)

1. 腳本功能

通過 Ansible 批量啟動集群組件,遵循依賴順序啟動原則,確保組件間協作正常。

2. 啟動順序及說明

#!/bin/bash# 1. 先啟動Elasticsearch(核心存儲組件,需等待集群就緒)
echo "===== 啟動Elasticsearch集群 ====="
ansible es -m shell -a "systemctl start elasticsearch && systemctl status elasticsearch | grep 'Active:'"# 等待Elasticsearch集群初始化(根據集群規模調整等待時間)
echo -e "\n===== 等待Elasticsearch集群就緒(60秒) ====="
sleep 60# 檢查Elasticsearch集群健康狀態
echo -e "\n===== 檢查Elasticsearch集群健康狀態 ====="
ansible es[0] -m shell -a "curl -s -u elastic:your_elastic_password 'http://192.168.100.150:9200/_cluster/health' | jq .status"# 2. 啟動Kibana(依賴Elasticsearch)
echo -e "\n===== 啟動Kibana組件 ====="
ansible kibana -m shell -a "systemctl start kibana && systemctl status kibana | grep 'Active:'"# 3. 最后啟動Logstash(數據采集組件,依賴Elasticsearch接收數據)
echo -e "\n===== 啟動Logstash組件 ====="
ansible logstash -m shell -a "systemctl start logstash && systemctl status logstash | grep 'Active:'"echo -e "\n===== 集群啟動完成 ====="

在這里插入圖片描述

3. 啟動邏輯說明

  • 優先啟動 Elasticsearch:作為核心存儲組件,需先確保集群就緒(通過 60 秒等待和健康狀態檢查)。
  • 其次啟動 Kibana:Kibana 依賴 Elasticsearch 提供數據,需在 ES 就緒后啟動。
  • 最后啟動 Logstash:Logstash 負責數據采集,需在 ES 可用后啟動以避免數據丟失。

三、集群停止腳本(es_stop.sh)

1. 腳本功能

通過 Ansible 批量停止集群組件,遵循反向依賴順序,確保數據安全。

2. 停止順序及說明

#!/bin/bash# 1. 先停止Logstash(數據采集組件,避免新數據寫入)
echo "===== 停止Logstash組件 ====="
ansible logstash -m shell -a "systemctl stop logstash && systemctl status logstash | grep 'Active:'"# 2. 停止Kibana(可視化組件,不影響數據存儲)
echo -e "\n===== 停止Kibana組件 ====="
ansible kibana -m shell -a "systemctl stop kibana && systemctl status kibana | grep 'Active:'"# 3. 最后停止Elasticsearch(核心存儲組件,確保數據寫入完成)
echo -e "\n===== 停止Elasticsearch集群 ====="
ansible es -m shell -a "systemctl stop elasticsearch && systemctl status elasticsearch | grep 'Active:'"echo -e "\n===== 集群停止完成 ====="

在這里插入圖片描述

3. 停止邏輯說明

  • 先停止 Logstash:避免新數據持續寫入,確保現有數據已處理完畢。
  • 再停止 Kibana:Kibana 僅用于可視化,停止后不影響數據存儲。
  • 最后停止 Elasticsearch:確保所有數據已落盤,避免強制停止導致數據損壞。

四、腳本使用說明

  1. 權限設置:確保腳本可執行
    chmod +x es_start.sh es_stop.sh
    
  2. 啟動集群
    ./es_start.sh
    
  3. 停止集群
    ./es_stop.sh
    
  4. 注意事項
    • 替換腳本中的 your_elastic_password 為實際 Elasticsearch 密碼。
    • 可根據集群規模調整 sleep 60 的等待時間(節點越多,可能需要更長時間)。
    • 腳本通過 grep 'Active:' 實時輸出組件狀態,便于確認操作結果。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/90089.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/90089.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/90089.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Effective Python 第15條 不要過分依賴給字典添加條目時所用的順序

引言:字典順序的重要性 在Python編程中,字典(dict)是一種常用的數據結構,用于存儲鍵值對。然而,字典的迭代順序問題常常困擾著開發者。從Python 3.7開始,字典保證了鍵的插入順序,這一…

事務隔離級別和傳播方式

事務隔離級別 事務隔離級別是數據庫系統中控制事務間相互影響程度的重要機制。不同的隔離級別在數據一致性保證和系統性能之間提供不同的權衡選擇。下面我將詳細解析四種標準隔離級別、它們能解決的問題以及可能存在的并發問題。 一、四種標準隔離級別 1. 讀未提交 (Read Uncom…

不同地區的主要搜索引擎工具

研究seo,想匯總一下不同國家的搜索引擎工具,順帶了解一下這些公司提供的服務。 韓國:NAVER——>LINE 日本: 我還不知道,如果你知道可以評論告訴我 俄羅斯:yandex yandex有點像本土化的google 搜索引擎 郵箱 網盤 在…

實操:AWS CloudFront的動態圖像轉換

概述 適用于 Amazon CloudFront 的動態圖像轉換(前身為無服務器圖像處理器),通過 Amazon CloudFront 的全球內容分發網絡(CDN)實現實時圖像處理。此 AWS 解決方案可幫助您優化視覺內容交付,同時顯著降低運營…

Spring Boot 實戰詳解:從靜態資源到 Thymeleaf 模板引擎

Spring Boot 憑借其 "約定大于配置" 的理念,極大簡化了 Java 應用開發流程。本文將從 Spring Boot 核心特性出發,詳細解析靜態資源映射規則、Thymeleaf 模板引擎的使用,并結合完整實戰案例,幫助開發者快速上手 Spring B…

docker的鏡像與推送

docker build# 1. 基本構建命令(使用當前目錄的 Dockerfile) docker build .# 2. 指定 Dockerfile 路徑和構建上下文 docker build -f /path/to/Dockerfile /path/to/build/context# 3. 為鏡像設置名稱和標簽 docker build -t my-image:latest .# 4. 設置…

計算機網絡學習----域名解析

在互聯網世界中,我們習慣通過域名(如www.example.com)訪問網站,而非直接記憶復雜的 IP 地址(如 192.168.1.1)。域名與 IP 地址之間的轉換過程,就是域名解析。它是互聯網通信的基礎環節&#xff…

構建高性能推薦系統:MixerService架構解析與核心實現

——深入剖析推薦服務的分層設計、工作流引擎與高可用策略 一、整體架構與分層設計 該推薦服務采用經典分層架構模式?7,各層職責清晰: ?HTTP接口層? 支持 GET/POST 請求解析,自動映射參數到 RcmdReq 協議對象統一錯誤處理:參…

【安全漏洞】隱藏服務器指紋:Nginx隱藏版本號配置修改與重啟全攻略

?? 隱藏服務器指紋:Nginx配置修改與重啟全攻略 你是否知道,默認情況下Nginx會在HTTP響應頭中暴露版本號?這個看似無害的Server: nginx/1.x.x字段,實則可能成為黑客的"藏寶圖"。今天我們就來揭秘如何通過簡單配置提升服務器安全性,并手把手教你完成Windows環境…

構建RAG智能體(2):運行狀態鏈

在現代AI應用開發中,如何讓聊天機器人具備記憶能力和上下文理解是一個核心挑戰。傳統的無狀態對話系統往往無法處理復雜的多輪對話場景,特別是當用戶需要提供多種信息來完成特定任務時。 本文就來討論一下如何利用runnable來編排更有趣的語言模型系統&a…

RPA認證考試全攻略:如何高效通過uipath、實在智能等廠商考試

rpa認證考試有什么作用?數字洪流席卷全球,企業效率之爭已進入秒級戰場。當重復性工作吞噬著創造力,RPA(機器人流程自動化)技術正以前所未有的速度重塑職場生態。財務對賬、報表生成、跨系統數據搬運……這些曾經耗費人…

淺析MySQL事務隔離級別

MySQL 的事務隔離級別定義了多個并發事務在訪問和修改相同數據時,彼此之間的可見性和影響程度。它解決了并發事務可能引發的三類核心問題: 臟讀: 一個事務讀取了另一個未提交事務修改的數據。不可重復讀: 一個事務內多次讀取同一行…

【Linux系統】基礎IO(上)

1. 深入理解"文件"概念1.1 文件的狹義理解狹義上的“文件”主要指存儲在磁盤上的數據集合。具體包括:文件在磁盤里:文件是磁盤上以特定結構(如FAT、ext4文件系統)保存的數據集合,由字節或字符序列構成。磁盤…

構建智能可視化分析系統:RTSP|RTMP播放器與AI行為識別的融合實踐

技術背景 隨著人工智能向邊緣側、實時化方向加速演進,視頻已從傳統的“記錄媒介”躍升為支撐智能感知與自動決策的關鍵數據入口。在安防監控、工業安全、交通治理等復雜應用場景中,行為識別系統的準確性和響應效率,越來越依賴于視頻源的時效…

AI入門學習-Python 最主流的機器學習庫Scikit-learn

一、Scikit-learn 核心定位是什么:Python 最主流的機器學習庫,涵蓋從數據預處理到模型評估的全流程。 為什么測試工程師必學:? 80% 的測試機器學習問題可用它解決? 無需深厚數學基礎,API 設計極簡? 與 Pandas/Numpy 無縫集成&a…

apache-doris安裝兼datax-web配置

Doris安裝 官方快速開始鏈接 下載2.1.10,解壓。我這邊個人服務器CPU是J1900,是沒有 avx2的,所以選no 配置JAVA_HOME,這里沒有配置的要配置下,注意要Oracle的jdk,openjdk沒有jps等工具集,后面跑…

問題實例:4G網絡下語音呼叫失敗

問題描述 測試機 撥號呼出后,一直在4G,超時后自動掛斷。 對比機可以呼出成功,呼出時回落3G。 日志分析 測試機和對比機一樣發起了CSFB 呼叫。 只是測試機后面沒有回落3G。 03:44:40.373264 [0xB0ED] LTE NAS EMM Plain OTA Outgoing Message …

MATLAB 2024b深度學習新特性全面解析與DeepSeek大模型集成開發技術

隨著人工智能技術向多學科交叉融合與工程實踐領域縱深發展,MATLAB 2024b深度學習工具箱通過架構創新與功能強化,為科研創新和行業應用提供了全棧式解決方案。基于該版本工具鏈的三大革新方向展開:一是構建覆蓋經典模型與前沿架構的體系化&…

Springboot美食分享平臺

一、 緒論 1.1 研究意義 當今社會作為一個飛速的發展社會,網絡已經完全滲入人們的生活, 網絡信息已成為傳播的第一大媒介, 可以毫不夸張說網絡資源獲取已逐步改變了人們以前的生活方式,網絡已成為人們日常,休閑主要工…

微信小程序——世界天氣小助手

哈嘍,大家好! 最近小編開發了一個簡單的微信小程序——世界天氣小助手,希望大家喜歡。 No.1: 為大家介紹下開發者工具下的頁面結構。一共有三個界面{主頁、搜索頁、詳情頁}No.2: 具體頁面展示:當前頁面是主頁&…