在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

如何利用Splunk最新的Metrics Store來對Kubernetes的集群進行性能監控

馬哥Linux運維 ? 來源:未知 ? 作者:李倩 ? 2018-04-28 09:28 ? 次閱讀

Kubernetes已經成為容器編排的事實上的王者,連Docker都已經向K8s女王大人低頭。對于Kubernetes的cluster的數據收集和監控已經成為IT運維的一個重要話題。我們今天來看一看如何利用Splunk最新的Metrics Store來對Kubernetes的集群進行性能監控。

部署架構

下圖是該方案的部署架構,主要包括:

利用Heapster收集K8s的性能數據,包含CPU,Memory,Network,File System等

利用Heapster的Statsd Sink,發送數據到Splunk的Metrics Store

利用Splunk的搜索命令和儀表盤功能對性能數據進行監控

前期準備

前期主要要準備好兩件事:

編譯最新的Heapster的鏡像,并上傳到某個公共的Docker鏡像倉庫,例如docker hub

在Splunk中配置Metrics Store和對應的網絡輸入(Network Input UDP/TCP)

這里主要要做的選擇是Statsd的傳輸協議用UDP還是TCP。這里我推薦使用TCP。 最新的Heapster代碼支持不同的Backend,包含了log, influxdb, stackdriver, gcp monitoring, gcp logging, statsd, hawkular-metrics, wavefront, openTSDB, kafka, riemann, elasticsearch等等。因為Splunk的Metrics Store支持statsd協議,所以可以很容易的和Heapster集成。

首先我們需要利用最新的heapster代碼,編譯一個容器鏡像,因為docker hub上的heapsterd的官方鏡像的版本比較舊,并不支持statsd。所以需要自己編譯。

mkdir myheapstermkdir myheapster/srcexport GOPATH=myheapstercd myheapster/srcgit clone https://github.com/kubernetes/heapster.gitcd heapstermake container

運行以上的命令來編譯最新的heapster鏡像。

注意,heapster缺省使用udp協議,如果想要使用tcp,需要修改代碼

https://github.com/kubernetes/heapster/blob/master/metrics/sinks/statsd/statsd_client.go

func (client *statsdClientImpl) open() error { var err error client.conn, err = net.Dial("udp", client.host) if err != nil { glog.Errorf("Failed to open statsd client connection : %v", err) } else { glog.V(2).Infof("statsd client connection opened : %+v", client.conn) } return err}

把udp改成tcp。

我在docker hub上放了兩個鏡像,分別對應udp版本的tcp版本,大家可以直接使用

naughtytao/heapster-amd64:v1.5.0-beta.3 udp

naughtytao/heapster-amd64:v1.5.0-beta.4 tcp

然后需要在Splunk中配置Metrics Store,參考這個文檔

安裝配置Heapster

在K8s上部署heapster比較容易,創建對應的yaml配置文件,然后用kubectl命令行創建就好了。

以下是Deployment和Service的配置文件:

deployment.yaml

apiVersion: extensions/v1beta1kind: Deploymentmetadata: name: heapster namespace: kube-systemspec: replicas: 1 template: metadata: labels: task: monitoring k8s-app: heapster version: v6 spec: containers: - name: heapster image: naughtytao/heapster-amd64:v1.5.0-beta.3 imagePullPolicy: Always command: - /heapster - --source=kubernetes:https://kubernetes.default - --sink=statsd:udp://ip:port?numMetricsPerMsg=1

service.yaml

apiVersion: v1kind: Servicemetadata: labels: task: monitoring # For use as a Cluster add-on (https://github.com/kubernetes/kubernetes/tree/master/cluster/addons) # If you are NOT using this as an addon, you should comment out this line. kubernetes.io/cluster-service: 'true' kubernetes.io/name: Heapster name: heapster namespace: kube-systemspec: ports: - port: 80 targetPort: 8082 selector: k8s-app: heapster

注意這里deployment的--sink的配置,ip是Splunk的IP或者主機名,port的對應的Splunk的data input的端口號。當使用udp協議的時候,需要配置的numMetricsPerMsg的值比較小,當這個值比較大的時候,會出message too long的error。當使用tcp的時候可以配置較大的數值。

運行 kubectl apply -f *.yaml 來部署heapster

如果正常運行,對應的heapster pod的日志如下

I0117 18:10:56.054746 1 heapster.go:78] /heapster --source=kubernetes:https://kubernetes.default --sink=statsd:udp://ec2-34-203-25-154.compute-1.amazonaws.com:8124?numMetricsPerMsg=10I0117 18:10:56.054776 1 heapster.go:79] Heapster version v1.5.0-beta.4I0117 18:10:56.054963 1 configs.go:61] Using Kubernetes client with master "https://kubernetes.default" and version v1I0117 18:10:56.054978 1 configs.go:62] Using kubelet port 10255I0117 18:10:56.076200 1 driver.go:104] statsd metrics sink using configuration : {host:ec2-34-203-25-154.compute-1.amazonaws.com:8124 prefix: numMetricsPerMsg:10 protocolType:etsystatsd renameLabels:map[] allowedLabels:map[] customizeLabel:0x15fc8c0}I0117 18:10:56.076248 1 driver.go:104] statsd metrics sink using configuration : {host:ec2-34-203-25-154.compute-1.amazonaws.com:8124 prefix: numMetricsPerMsg:10 protocolType:etsystatsd renameLabels:map[] allowedLabels:map[] customizeLabel:0x15fc8c0}I0117 18:10:56.076272 1 heapster.go:202] Starting with StatsD SinkI0117 18:10:56.076281 1 heapster.go:202] Starting with Metric SinkI0117 18:10:56.090229 1 heapster.go:112] Starting heapster on port 8082

在Splunk中進行監控

好了如果一切正常的化,heapster會用statsd的協議和格式發送metrics到Splunk的metrics store。

然后就可以用利用SPL的mstats和mcatalog命令來分析,監控metrics數據了。

以下搜索語句列出所有的Metrics

| mcatalog values(metric_name)

以下搜索語句列出整個cluster的CPU使用,我們可以用Area或者Line Chart來可視化搜索結果。

| mstats avg(_value) WHERE metric_name=cluster.cpu/usage_rate span=30m

kube-system namespace的對應內存使用情況

| mstats avg(_value) WHERE metric_name=namespace.kube-system.memory/usage span=30m

大家可以把自己感興趣的分析結果放在Dashboard中,利用Realtime設置進行監控。

好了,更多的分析選項可以參考Splunk文檔。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • cpu
    cpu
    +關注

    關注

    68

    文章

    10995

    瀏覽量

    214845
  • 數據收集
    +關注

    關注

    0

    文章

    73

    瀏覽量

    11337
  • kubernetes
    +關注

    關注

    0

    文章

    235

    瀏覽量

    8886

原文標題:使用Heapster和Splunk監控Kubernetes運行性能

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    k8s集群安全機制說明

    Kubernetes 作為一個分布式集群的管理工具,保證集群的安全性是其一個重要的任務。API Server 是集群內部各個組件通信的中介, 也是外部控制的入口。所以
    的頭像 發表于 04-03 14:09 ?97次閱讀

    如何在基于Arm Neoverse平臺的CPU上構建分布式Kubernetes集群

    在本文中,我們將以 X(原 Twitter)為例,演示如何在基于 Arm Neoverse 平臺的 CPU 上構建分布式 Kubernetes 集群,以根據推文實時監控情緒變化。如此一
    的頭像 發表于 03-25 15:58 ?190次閱讀
    如何在基于Arm Neoverse平臺的CPU上構建分布式<b class='flag-5'>Kubernetes</b><b class='flag-5'>集群</b>

    Kubernetes中部署MySQL集群

    一般情況下 Kubernetes 可以通過 ReplicaSet 以一個 Pod 模板創建多個 pod 副本,但是它們都是無狀態的,任何時候它們都可以被一個全新的 pod 替換。
    的頭像 發表于 03-18 16:22 ?156次閱讀
    <b class='flag-5'>Kubernetes</b>中部署MySQL<b class='flag-5'>集群</b>

    如何利用MES系統進行產能分析呢?

    利用MES系統進行產能分析是一個涉及數據收集、處理、分析和結果呈現的全過程。對生產過程加以監控,充分利用MES數據采集分析,實現監控生產全階
    的頭像 發表于 02-21 12:10 ?226次閱讀
    如何<b class='flag-5'>利用</b>MES系統<b class='flag-5'>進行</b>產能分析呢?

    Kubernetes:構建高效的容器化應用平臺

    Kubernetes 作為容器編排的事實標準,在容器化應用部署中發揮著關鍵作用。 搭建 Kubernetes 集群是應用的基礎。可以使用kubeadm工具快速搭建。在主節點執行kubeadm
    的頭像 發表于 01-23 15:22 ?225次閱讀

    如何利用zabbix進行網絡監控

    了解Zabbix的基本概念 在開始使用Zabbix進行網絡監控之前,我們需要了解一些基本概念。Zabbix主要由以下幾個部分組成: Zabbix Server:負責收集監控數據并存儲在數據庫中
    的頭像 發表于 11-08 10:39 ?1058次閱讀

    混合云部署k8s集群方法有哪些?

    混合云部署k8s集群方法是首先需在本地與公有云分別建立K8s集群,并確保網絡連接。接著,配置kubeconfig文件連接兩集群,并安裝云服務插件以實現資源互通。然后,編寫Deployment文件部署應用,并使用kubectl命令
    的頭像 發表于 11-07 09:37 ?350次閱讀

    docker和k8s部署在云平臺性能要求盤點

    Docker和Kubernetes在云平臺部署時有各自的性能要求。Docker需要足夠的CPU、內存和存儲資源,以及快速的網絡帶寬和優化的鏡像大小。而Kubernetes則強調集群管理
    的頭像 發表于 11-05 10:47 ?400次閱讀

    Kubernetes集群搭建容器云需要幾臺服務器?

    Kubernetes集群搭建容器云需要幾臺服務器?至少需要4臺服務器。搭建容器云所需的服務器數量以及具體的搭建步驟,會根據所選用的技術棧、業務規模、架構設計以及安全需求等因素而有所不同。以下是一個基于Kubernetes
    的頭像 發表于 10-21 10:06 ?331次閱讀

    某證券公司智能云投資交易云集群性能分布式存儲應用

    某證券公司智能云投資交易云集群性能分布式存儲應用
    的頭像 發表于 09-27 09:57 ?415次閱讀
    某證券公司智能云投資交易云<b class='flag-5'>集群</b>高<b class='flag-5'>性能</b>分布式存儲應用

    使用Velero備份Kubernetes集群

    Velero 是 heptio 團隊(被 VMWare 收購)開源的 Kubernetes 集群備份、遷移工具。
    的頭像 發表于 08-05 15:43 ?479次閱讀
    使用Velero備份<b class='flag-5'>Kubernetes</b><b class='flag-5'>集群</b>

    如何使用Kubeadm命令在PetaExpress Ubuntu系統上安裝Kubernetes集群

    Kubernetes,通常縮寫為K8s,是一個開源的容器編排平臺,旨在自動化容器化應用的部署、擴展和管理。有了Kubernetes,您可以輕松地部署、更新和擴展應用,而無需擔心底層基礎設施。
    的頭像 發表于 07-15 13:31 ?988次閱讀
    如何使用Kubeadm命令在PetaExpress Ubuntu系統上安裝<b class='flag-5'>Kubernetes</b><b class='flag-5'>集群</b>

    K8S學習教程(二):在 PetaExpress KubeSphere容器平臺部署高可用 Redis 集群

    并且需要手動重啟節點,相較之下,使用 PetaExpress 提供的 Kubernetes(k8s) 服務 進行 Redis 集群的部署,則展現出了顯著的優勢: 1、安裝便捷:使用鏡像或者 yaml 配置文件即可一件安裝,極大地
    的頭像 發表于 07-03 15:30 ?1012次閱讀
    K8S學習教程(二):在 PetaExpress KubeSphere容器平臺部署高可用 Redis <b class='flag-5'>集群</b>

     K8S學習教程一:使用PetaExpress云服務器安裝Minikube 集群

    ? 什么是Minikube Minikube是一款工具,主要用于在本地運行 Kubernetes 集群Kubernetes 開源的平臺,用于自動化容器化應用的部署、擴展和管理,而Minikube
    的頭像 發表于 07-01 15:41 ?496次閱讀
     K8S學習教程一:使用PetaExpress云服務器安裝Minikube <b class='flag-5'>集群</b>

    性能計算集群的能耗優化

    性能計算(HighPerformanceComputing,HPC)是指利用大規模并行計算機集群解決復雜的科學和工程問題的技術。高性能
    的頭像 發表于 05-25 08:27 ?647次閱讀
    高<b class='flag-5'>性能</b>計算<b class='flag-5'>集群</b>的能耗優化
    主站蜘蛛池模板: 免费a级毛片出奶水 | 私色综合网 | 国产久视频 | 亚洲成人黄色 | 免费一级特黄特色大片在线观看看 | 午夜亚洲 | 爽好舒服老师快点 | 国产在线一卡二卡 | 天天干亚洲 | 三级黄色短视频 | 国产午夜a理论毛片在线影院 | 黄色理伦 | 亚洲高清中文字幕一区二区三区 | 国产一级特黄a大片免费 | 欧美ol丝袜高跟秘书在线播放 | 亚洲综合一二三区 | 欧美一区二区三区激情啪啪 | 国产免费久久精品99 | 天天精品 | 亚洲成a人片在线观看导航 亚洲成a人片在线观看尤物 | 午夜性爽快 | 五月天丁香色 | 69久久| 国产在线黄 | 日本视频一区在线观看免费 | 天天综合网站 | 一级看片 | 唐人呦一呦xxxx视频 | 喷潮白浆 | 天堂资源在线最新版 | 5g影院午夜伴侣 | 色偷偷亚洲综合网亚洲 | 欧美色爱综合网 | 成人黄色在线 | 欧美一区二区三区在线观看 | 婷婷丁香色 | 美女黄页黄频 | 天天搞一搞 | 一区二区三区四区五区 | 久久观看视频 | 欧美国产日本高清不卡 |