国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

如何對 Elasticsearch、Filebeat、Logstash、Kibana 深度巡檢?

運維
本文將詳細介紹一套深度巡檢方案,包括各組件的監控方法、健康狀態檢查、性能指標監控,以及一些關鍵的 DSL 查詢示例,幫助大家全面掌握集群狀態,及時發現潛在問題,優化 EFLK 的運行。

在運維和開發中,確保 Elasticsearch、Filebeat、Logstash、Kibana(簡稱 EFLK)集群的穩定運行至關重要。

本文將詳細介紹一套深度巡檢方案,包括各組件的監控方法、健康狀態檢查、性能指標監控,以及一些關鍵的 DSL 查詢示例,幫助大家全面掌握集群狀態,及時發現潛在問題,優化 EFLK 的運行。

一、Elasticsearch 深度巡檢方案

1. 集群健康檢查

使用 _cluster/health API 獲取集群的整體健康狀況:

GET _cluster/health

返回的關鍵字段:

圖片圖片

  • status:集群狀態(green、yellow、red)
  • number_of_nodes:節點數量
  • active_primary_shards:活躍的主分片數
  • active_shards:活躍的總分片數
  • unassigned_shards:未分配的分片數量

2. 節點性能監控

使用 _nodes/stats API 獲取各節點的性能指標:

GET _nodes/stats

重點關注:

圖片圖片

  • indices.docs.count:文檔數量
  • indices.store.size_in_bytes:索引大小
  • jvm.mem.heap_used_percent:JVM 堆內存使用率
  • os.cpu.percent:CPU 使用率
  • fs.total.available_in_bytes:磁盤可用空間

3. 分片狀態監控

使用 _cat/shards API 查看所有分片的詳細信息:

GET _cat/shards?v&h=index,shard,prirep,state,unassigned.reason

重點檢查 unassigned.reason 字段,確保沒有未分配的分片。如果發現未分配的分片,可以使用以下命令重新分配:

圖片圖片

POST /_cluster/reroute
{
  "commands": [
    {
      "allocate_stale_primary": {
        "index": "your-index",
        "shard": 0,
        "node": "node-name",
        "accept_data_loss": true
      }
    }
  ]
}

4. 索引狀態巡檢

定期檢查索引的健康狀態,特別是大型或活躍的索引:

GET _cat/indices?v&h=index,health,status,pri,rep,docs.count,store.size

圖片圖片

查看以下字段:

  • health:索引健康狀態
  • status:索引狀態
  • pri:主分片數量
  • rep:副本分片數量
  • docs.count:文檔數量
  • store.size:索引大小

5. 集群性能分析(使用 Profile 查詢)

為了深入分析查詢性能,可以在查詢時使用 profile 參數,返回每個查詢階段的執行時間,幫助定位性能瓶頸:

GET /your-index/_search?pretty
{
  "profile": true,
  "query": {
    "match": {
      "field": "value"
    }
  }
}

返回結果中包含每個查詢的執行時間,識別最耗時的部分(如分片級別操作)。

kibana 的 Search Profile 工具要用好!

圖片圖片

二、Filebeat 巡檢方案

1. Filebeat 配置檢查

確保 Filebeat 正確安裝并運行:

systemctl status filebeat

檢查配置文件 /etc/filebeat/filebeat.yml,確保以下關鍵部分:

  • 輸入源(如日志文件、系統日志)配置正確
  • 輸出目標(Elasticsearch 或 Logstash)配置正確

2. Filebeat 日志檢查

查看 Filebeat 日志文件(通常位于 /var/log/filebeat/filebeat)以確保沒有錯誤信息:

tail -f /var/log/filebeat/filebeat

常見錯誤:

  • 無法連接到 Elasticsearch 或 Logstash
  • 由于權限問題無法讀取日志文件

3. Filebeat 配置測試

測試 Filebeat 配置文件的正確性:

filebeat test config

使用 -e 參數啟動 Filebeat,輸出調試日志:

filebeat -e

三、Logstash 巡檢方案

1. Logstash 進程檢查

檢查 Logstash 是否正常運行:

systemctl status logstash

2. Logstash 管道配置檢查

檢查 Logstash 的管道配置,通常位于 /etc/logstash/conf.d/ 下:

cat /etc/logstash/conf.d/*.conf

確保以下部分配置正確:

  • 輸入(如 Filebeat、Kafka)
  • 過濾(如 Grok 解析、日期處理)
  • 輸出(如 Elasticsearch、文件)

3. Logstash 日志檢查

查看 Logstash 的日志文件(通常位于 /var/log/logstash/):

tail -f /var/log/logstash/logstash-plain.log

重點檢查:

  • 連接失敗(如無法連接到 Elasticsearch)
  • 解析錯誤(如 Grok 模式不匹配)

四、Kibana 巡檢方案

1. Kibana 進程狀態檢查

檢查 Kibana 服務是否正常運行:

systemctl status kibana

2. Kibana 配置檢查

檢查 Kibana 配置文件(通常位于 /config/kibana.yml):

cat /config/kibana.yml

確保以下配置正確:

  • elasticsearch.hosts: ["http://localhost:9200"](或集群地址)
  • server.host: 0.0.0.0(確保 Kibana 可被外部訪問)

3. Kibana 日志檢查

查看 Kibana 的日志文件(通常位于 /logs/kibana.log):

tail -f logs/kibana.log

重點檢查:

圖片圖片

  • 無法連接 Elasticsearch
  • Kibana 啟動失敗

4. Kibana UI 巡檢

登錄 Kibana 界面,檢查以下功能是否正常:

  • Discover:能否正常搜索和查看日志數據
  • Dashboards:儀表板是否正常顯示
  • Visualizations:可視化圖表是否加載正常

五、DSL 查詢示例

為了更深入的巡檢,可以使用一些常見的 DSL 查詢來檢查系統的日志和性能。

1. 查詢慢查詢日志

查找慢查詢,定位性能瓶頸:

GET /_search
{
  "query": {
    "range": {
      "@timestamp": {
        "gte": "now-1d/d",
        "lt": "now/d"
      }
    }
  },
  "sort": [
    {
      "took": {
        "order": "desc"
      }
    }
  ],
  "size": 10
}

Elasticsearch高級調優方法論之——根治慢查詢!為什么Elasticsearch查詢變得這么慢了?

2. 查詢錯誤日志

如果懷疑系統有錯誤,可以查詢錯誤日志:

Elasticsearch 日志能否把全部請求打印出來?

GET /filebeat-*/_search
{
  "query": {
    "match": {
      "message": "error"
    }
  }
}

3. 查詢特定節點性能問題

根據節點的 ID 或名稱查詢該節點上的所有日志:

GET /_search
{
  "query": {
    "term": {
      "host.name": {
        "value": "node-1"
      }
    }
  }
}

六、企業級參考:自動化監控 Elasticsearch 集群

為了持續監控 Elasticsearch 集群的健康狀態、CPU、內存、負載、磁盤使用率等指標,可以使用 Python 腳本結合定時任務實現自動化采集。我早期項目是借助 shell 腳本實現,原理一致

1. Elasticsearch 指標采集 Python 腳本

1.1 準備工作

確保安裝了 requests 庫:

pip install requests

1.2 腳本代碼(可運行版本)import json
from datetime import datetime
import configparser
import warnings

from elasticsearch import Elasticsearch

warnings.filterwarnings("ignore")

# 初始化 Elasticsearch 客戶端
def init_es_client(config_path='./conf/config.ini'):
    """初始化并返回Elasticsearch客戶端"""
    config = configparser.ConfigParser()
    config.read(config_path)
    es_host = config.get('elasticsearch', 'ES_HOST')
    es_user = config.get('elasticsearch', 'ES_USER')
    es_password = config.get('elasticsearch', 'ES_PASSWORD')

    es = Elasticsearch(
        hosts=[es_host],
        basic_auth=(es_user, es_password),
        verify_certs=False,
        ca_certs='conf/http_ca.crt'
    )
    return es

# 日志文件配置
LOG_FILE = 'elasticsearch_metrics.log'

# 使用初始化的客戶端
es = init_es_client()

# 獲取集群健康狀況
def get_cluster_health():
    return es.cluster.health().body  # 獲取字典格式的數據

# 獲取節點統計信息
def get_node_stats():
    return es.nodes.stats().body  # 獲取字典格式的數據

# 獲取集群指標
def get_cluster_metrics():
    metrics = {}
    cluster_health = get_cluster_health()
    metrics['cluster_health'] = cluster_health

    node_stats = get_node_stats()
    nodes = node_stats.get('nodes', {})

    metrics['nodes'] = {}
    for node_id, node_info in nodes.items():
        node_name = node_info.get('name')
        metrics['nodes'][node_name] = {
            'cpu_usage': node_info['os']['cpu']['percent'],
            'load_average': node_info['os']['cpu'].get('load_average', {}).get('1m'),
            'memory_used': node_info['os']['mem']['used_percent'],
            'heap_used': node_info['jvm']['mem']['heap_used_percent'],
            'disk_available': node_info['fs']['total']['available_in_bytes'] / (1024 ** 3),
            'disk_total': node_info['fs']['total']['total_in_bytes'] / (1024 ** 3),
            'disk_usage_percent': 100 - (
                node_info['fs']['total']['available_in_bytes'] * 100 / node_info['fs']['total']['total_in_bytes']
            )
        }

    return metrics

# 記錄集群狀態到日志文件
def log_metrics():
    metrics = get_cluster_metrics()
    timestamp = datetime.now().strftime('%Y-%m-%d %H:%M:%S')

    with open(LOG_FILE, 'a') as f:
        f.write(f"Timestamp: {timestamp}\n")
        f.write(json.dumps(metrics, indent=4))
        f.write('\n\n')

# 主函數
if __name__ == "__main__":
    log_metrics()
    print("Elasticsearch cluster metrics logged successfully.")

1.3 關鍵指標說明

  • cluster_health:集群健康狀態(green、yellow、red)
  • cpu_usage:每個節點的 CPU 使用率
  • load_average:系統負載平均值
  • memory_used:每個節點的內存使用率
  • heap_used:JVM 堆內存使用率
  • disk_available:磁盤可用空間(GB)
  • disk_total:磁盤總空間(GB)
  • disk_usage_percent:磁盤使用率

日志將以 JSON 格式保存,記錄每次獲取到的集群和節點狀態。(如下圖所示)

圖片圖片

2. 定時執行任務腳本

為了每天早上6點自動執行腳本,可以使用 cron 設置定時任務。

2.1 編輯定時任務

假設腳本位于 /home/user/scripts/es_metrics.py,使用以下命令編輯 crontab:

crontab -e

添加以下行:

0 6 * * * /usr/bin/python3 /home/user/scripts/es_metrics.py >> /home/user/scripts/es_metrics_cron.log 2>&1

解釋:

  • 0 6 * * *:每天早上6點執行
  • /usr/bin/python3:Python 3 的完整路徑,需根據實際情況調整
  • >> /home/user/scripts/es_metrics_cron.log 2>&1:將輸出和錯誤信息重定向到日志文件

七、結論

通過以上深度巡檢方案,能夠全面掌握 EFLK 各組件的健康狀態和性能指標。定期巡檢和自動化監控有助于及時發現潛在問題,保障集群的穩定運行。

  • Elasticsearch:重點關注集群健康、節點性能、分片狀態和索引狀況
  • Filebeat、Logstash、Kibana:檢查服務狀態、配置文件和日志,確保數據采集和展示正常

持續的監控和優化,才能讓我們的 EFLK 集群始終保持最佳狀態。

當然,我們推薦優先借助監控指標工具 Prometheus、Zabbix、Grafana 等巡查。

責任編輯:武曉燕 來源: 銘毅天下Elasticsearch
相關推薦

2023-01-09 09:02:26

2023-02-02 09:46:24

2019-08-14 09:42:06

LinuxElasticsearKibana

2021-04-27 09:45:33

Nginx日志運維

2019-04-25 08:28:58

工具LogstashFilebeat

2023-09-04 07:57:03

后端開發日志

2020-12-16 15:56:05

Kubernetes日志工具

2023-01-14 15:38:07

日志管理工具

2020-06-11 16:35:02

filebeatlogstash前端

2019-01-30 09:34:56

ElasticSearLogstashKibana

2019-10-25 09:04:19

EFKES管理

2021-07-20 08:32:16

Kubernetes日志平臺

2021-07-19 09:18:07

KubernetesELK Stackk8s

2019-09-27 08:52:12

RHELCentOSElastic sta

2017-10-20 08:25:10

數據收集工具數據源

2022-01-04 19:15:33

ElasticsearSpring BootLogstash

2019-10-24 15:52:15

DockerELKJava

2020-05-14 12:09:56

Centos7EFK部署

2021-10-04 09:14:18

ElasticSear深度分頁

2024-08-22 08:09:48

系統設計監控
點贊
收藏

51CTO技術棧公眾號

国产成人三级| 日本电影在线观看网站| 综合激情久久| 亚洲国产欧美一区二区丝袜黑人| 久久久久久久久久久久久国产| 日韩免费成人| 欧美精品一区二区三区蜜臀| 在线看你懂得| 国产欧美日韩不卡免费| 最新av在线免费观看| 亚洲小说欧美另类社区| 欧美一级黄色网| 国产精品欧美一区二区三区不卡 | 久久精品福利视频| 在线观看美女网站大全免费| 亚洲综合免费观看高清完整版| 色欲av无码一区二区人妻| 精品一区二区av| 亚洲一区三区| 日本视频免费一区| 欧美另类高清videos| 伊人国产在线视频| 狠狠爱成人网| 国产亚洲一区二区精品| 久久不卡日韩美女| 综合婷婷亚洲小说| 91国内揄拍国内精品对白| 杨幂毛片午夜性生毛片| 欧美日韩视频| 欧美日韩亚洲激情| 亚洲精品免费在线看| 亚洲第一影院| 五月综合激情日本mⅴ| 亚洲人成影视在线观看| 亚洲精品aaa| 久久久99免费视频| 极品少妇xxxx精品少妇偷拍| 欧洲一区精品| 成人亚洲视频在线观看| 欧美成人午夜免费视在线看片 | 99国产精品免费网站| 亚洲日本va在线观看| 亚洲精品乱码久久久久久蜜桃91 | 亚洲国产你懂的| 激情五月婷婷六月| 美女视频黄a大片欧美| 日韩激情第一页| 日韩精品视频无播放器在线看 | 色成年激情久久综合| 漂亮人妻被中出中文字幕| 亚洲一区成人| 国产在线观看精品| 白白在线精品| 欧美美女操人视频| 成人3d精品动漫精品一二三| 国产精品99久久久久久人| 日本一本不卡| 国产精品一区视频| 欧美极品少妇xxxxⅹ高跟鞋 | 国内精品久久久久久久97牛牛 | 国产激情视频一区二区三区欧美 | 秋霞电影网一区二区| 91小视频网站| www日韩中文字幕在线看| 国产在线精品免费av| 2018av在线| 欧美日韩系列| 日韩电影中文字幕在线| 久久精品国产99久久6| 男人久久天堂| 日本高清xxxx| 久久亚洲精品国产亚洲老地址| 久久久久国产一区二区三区四区| 亚洲综合资源| 色香色香欲天天天影视综合网 | 国产精品欧美一区二区三区| a日韩av网址| 中文字幕一区二区三区最新| 69久久99精品久久久久婷婷| 在线观看一区视频| 免费在线观看黄| 久久久福利视频| 日韩一级在线观看| 欧美aaaaa成人免费观看视频| 成人18在线| 欧美连裤袜在线视频| 天堂v在线视频| 久久精品国产一区二区三| 国产精品㊣新片速递bt| 久久亚洲春色中文字幕| 久久精品国产久精国产爱| 色播色播色播色播色播在线| 57pao成人永久免费视频| 国产日韩欧美一区二区三区乱码| 欧美激情护士| 无码精品a∨在线观看中文| 国产一区二区三区丝袜| 99久久精品情趣| 欧美午夜寂寞| 伪装者免费全集在线观看 | 国产男女免费视频| 最近2019年日本中文免费字幕 | 成人精品在线视频| 精品av综合导航| 粉嫩在线一区二区三区视频| 中文成人在线| 免费在线观看av片| www.av毛片| 日韩av片免费在线观看| 日本乱人伦aⅴ精品| 国产福利精品一区| 欧美精品一区二区三区中文字幕 | 疯狂欧洲av久久成人av电影| 捆绑紧缚一区二区三区在线观看| 精品欧美一区二区久久久伦| 国产亚洲视频在线| 欧美日韩一区二区三区| 成人自拍视频在线| 亚洲欧洲美洲一区二区三区| 欧美专区福利免费| 国产小视频在线观看| 欧美精品第三页| 精品一区二区三区自拍图片区| 中文字幕精品—区二区| 色一区在线观看| 国产精品高潮呻吟久久| 久久国产视频网| 欧美激情综合| 亚洲精品国产setv| 亚洲精品大全| h片在线观看下载| melody高清在线观看| 啊啊啊啊啊啊啊视频在线播放| 国产精彩视频一区二区| 日韩国产一区久久| 999久久久| 日韩女在线观看| 国外成人在线视频| 日韩精品电影网| 欧美sm极限捆绑bd| 一本久久精品一区二区| 亚洲国产一区二区a毛片| 国产不卡一区视频| 视频一区二区三区中文字幕| 亚洲国内自拍| 亚洲精选国产| 天堂资源在线中文精品| 日本在线不卡一区| 国产一区二区福利视频| 韩国视频一区二区| 91视视频在线观看入口直接观看www | 不卡一区在线观看| k8久久久一区二区三区| 国产欧美一区二区三区沐欲| 亚洲丝袜精品丝袜在线| 婷婷夜色潮精品综合在线| 色老综合老女人久久久| 亚洲成人久久久| 日韩在线免费高清视频| 国产成人精品网站| 国产一区红桃视频| 久久久久久久有限公司| 偷拍盗摄高潮叫床对白清晰| 99精品人妻少妇一区二区| 一本色道久久亚洲综合精品蜜桃| 免费黄色av电影| 黄色的视频在线观看| 亚洲精品午夜| 狠狠综合久久av一区二区老牛| 奇米影视一区二区三区小说| 成人免费视频免费观看| 国产精品久久久久久久久快鸭| 欧美三级日韩在线| 亚洲免费电影在线观看| 日韩av片电影专区| 男女h黄动漫啪啪无遮挡软件| 日韩av黄色网址| 中文字幕av高清在线观看| 美女100%一区| 日韩午夜电影| 中文字幕乱码亚洲精品一区| 欧美xxxx在线观看| 国产成人在线精品| 欧美人与物videos另类| 在线免费观看色| 豆花视频一区二区| 国产成人在线免费观看| 欧美精品粉嫩高潮一区二区| 欧美日韩电影在线观看| 亚洲不卡1区| 福利视频在线导航| 99久久精品费精品国产风间由美 | 亚洲美女在线免费观看| 日韩av懂色| 国产69精品久久777的优势| 精品欧美一区二区三区| 欧洲美女免费图片一区| 久久激情五月婷婷| 日本国产精品视频| 日本一区二区三不卡|