Kubernetes 叢集日誌管理 - 每天5分鐘玩轉 Docker 容器技術(180)
Kubernetes 叢集日誌管理 - 每天5分鐘玩轉 Docker 容器技術(180)
原創 CloudMan CloudMan 2018-06-13
第180篇
Kubernetes 叢集日誌管理
Kubernetes 開發了一個 Elasticsearch 附加元件來實現叢集的日誌管理。這是一個 Elasticsearch、Fluentd 和 Kibana 的組合。Elasticsearch 是一個搜尋引擎,負責儲存日誌並提供查詢介面;Fluentd 負責從 Kubernetes 蒐集日誌併傳送給 Elasticsearch;Kibana 提供了一個 Web GUI,使用者可以瀏覽和搜尋儲存在 Elasticsearch 中的日誌。
部署
Elasticsearch 附加元件本身會作為 Kubernetes 的應用在叢集裡執行,其 YAML 配置檔案可從 https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/fluentd-elasticsearch 獲取。
可將這些 YAML 檔案下載到本地目錄,比如 addons
,通過 kubectl apply -f addons/
部署。
這裡有一點需要注意:後面我們會通過 NodePort 訪問 Kibana,需要註釋掉 kibana-deployment.yaml
中的環境變數 SERVER_BASEPATH
,否則無法訪問。
所有的資源都部署在 kube-system
Namespace 裡。
DaemonSet fluentd-es
從每個節點收集日誌,然後傳送給 Elasticsearch。
Elasticsearch 以 StatefulSet 資源執行,並通過 Service elasticsearch-logging
對外提供介面。這裡已經將 Service 的型別通過 kubectl edit
修改為 NodePort。
可通過 http://192.168.56.106:32607/
驗證 Elasticsearch 已正常工作。
Kibana 以 Deployment 資源執行,使用者可通過 Service kibana-logging
訪問其 Web GUI。這裡已經將 Service 的型別修改為 NodePort。
通過 http://192.168.56.106:30319/
訪問 Kibana。
Kibana 會顯示 Index Pattern 建立頁面。直接點選 Create
,Kibana 會自動完成後續配置。
這時,點選左上角的 Discover
就可以檢視和檢索 Kubernetes 日誌了。
Kubernetes 日誌管理系統已經就緒,使用者可以根據需要建立自己的 Dashboard,具體方法可參考 Kibana 官方文件。
小結
Elasticsearch 附加元件本身會作為 Kubernetes 的應用在叢集裡執行,以實現叢集的日誌管理。它是一個 Elasticsearch、Fluentd 和 Kibana 的組合。
Elasticsearch 是一個搜尋引擎,負責儲存日誌並提供查詢介面。
Fluentd 負責從 Kubernetes 蒐集日誌併傳送給 Elasticsearch。
Kibana 提供了一個 Web GUI,使用者可以瀏覽和搜尋儲存在 Elasticsearch 中的日誌。
寫在最後
作為 Kubernetes 的實戰教程,我們已經到了該收尾的地方。
本教程涵蓋了 Kubernetes 最最重要的技術:叢集架構、容器化應用部署、Scale Up/Down、滾動更新、監控檢查、叢集網路、資料管理、監控和日誌管理,通過大量的實驗探討了 Kubernetes 的執行機制。
這個教程的目標是使讀者能夠掌握實施和管理 Kubernetes 的必需技能,能夠真正將 Kubernetes 用起來。
為了達到這個目標,每一章都設計了大量的實踐操作環節,通過截圖和日誌幫助讀者理解各個技術要點,同時為讀者自己實踐 Kubernetes 提供詳盡的參考。
本教程對讀者應該會有兩個作用:
-
初學者可以按照章節順序系統地學習 Kubernetes,並通過教程中的實驗掌握 Kubernetes 的理論知識和實操技能。
-
有經驗的運維人員可以將本教程當做參考材料,在實際工作中有針對性地檢視相關知識點。
希望讀者們能夠通過本教程打下紮實基礎,能夠從容地運維 Kubernetes ,並結合所在公司和組織的實際需求搭建出實用的容器管理平臺。
最後祝大家使用 Kubernetes 愉快!
書籍:
1.《每天5分鐘玩轉Kubernetes》
https://item.jd.com/26225745440.html(點選“閱讀原文”直達)
2.《每天5分鐘玩轉Docker容器技術》
https://item.jd.com/16936307278.html
3.《每天5分鐘玩轉OpenStack》
https://item.jd.com/12086376.html
相關文章
- 如何用 Graylog 管理日誌? - 每天5分鐘玩轉 Docker 容器技術(93)Docker
- Kubernetes Dashboard - 每天5分鐘玩轉 Docker 容器技術(173)Docker
- 部署 Graylog 日誌系統 - 每天5分鐘玩轉 Docker 容器技術(92)Docker
- 用 Weave Scope 監控叢集 - 每天5分鐘玩轉 Docker 容器技術(175)Docker
- 每天5分鐘玩轉Docker容器技術(二)Docker
- 【Docker】(9)---每天5分鐘玩轉 Docker 容器技術之映象Docker
- 回收 PV - 每天5分鐘玩轉 Docker 容器技術(152)Docker
- Network Policy - 每天5分鐘玩轉 Docker 容器技術(171)Docker
- Prometheus Operator - 每天5分鐘玩轉 Docker 容器技術(177)PrometheusDocker
- PV & PVC - 每天5分鐘玩轉 Docker 容器技術(150)Docker
- 外部 Storage Provider - 每天5分鐘玩轉 Docker 容器技術(149)IDEDocker
- Liveness 探測 - 每天5分鐘玩轉 Docker 容器技術(143)Docker
- Helm 架構 - 每天5分鐘玩轉 Docker 容器技術(161)架構Docker
- 再次實踐 MySQL chart - 每天5分鐘玩轉 Docker 容器技術MySqlDocker
- 什麼是 stack?- 每天5分鐘玩轉 Docker 容器技術(111)Docker
- MySQL 使用 PV 和 PVC - 每天5分鐘玩轉 Docker 容器技術(154)MySqlDocker
- 通過 Service 訪問 Pod - 每天5分鐘玩轉 Docker 容器技術(136)Docker
- ELK 完整部署和使用 - 每天5分鐘玩轉 Docker 容器技術(90)Docker
- 用 k8s 管理機密資訊 - 每天5分鐘玩轉 Docker 容器技術(155)K8SDocker
- 在滾動更新中使用 Health Check - 每天5分鐘玩轉 Docker 容器技術(146)Docker
- 萬能資料收集器 Fluentd - 每天5分鐘玩轉 Docker 容器技術(91)Docker
- Docker Swarm or Kubernetes ? Docker 叢集技術的楚漢爭霸!|航海日誌 Vol.18DockerSwarm
- Kubernetes叢集日誌詳解
- fluentd收集kubernetes 叢集日誌分析
- Kubernetes 叢集日誌 和 EFK 架構日誌方案架構
- 探秘Kubernetes:在本地環境中玩轉容器技術
- Docker容器日誌管理最佳實踐Docker
- 容器引擎Docker和容器編排kubernetes如何優雅的收集容器日誌Docker
- 轉轉容器日誌採集的演進之路
- Docker 容器日誌分析Docker
- Kubernetes日誌採集
- Docker筆記(十三):容器日誌採集實踐Docker筆記
- docker 容器日誌清理方案Docker
- 基於Docker和Kubernetes構建的部署管理和叢集管理Docker
- 在 Azure 中部署 Kubernetes 容器叢集
- kubernetes叢集管理命令(三)
- 玩轉Redis叢集(上)Redis
- docker檢視容器日誌命令Docker