chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

3天內不再提示

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

馬哥Linux運維 ? 來源:未知 ? 作者:李倩 ? 2018-04-28 09:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

部署架構

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

利用Heapster收集K8s的性能數(shù)據(jù),包含CPU,Memory,Network,F(xiàn)ile System等

利用Heapster的Statsd Sink,發(fā)送數(shù)據(jù)到Splunk的Metrics Store

利用Splunk的搜索命令和儀表盤功能對性能數(shù)據(jù)進行監(jiān)控

前期準備

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

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

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

這里主要要做的選擇是Statsd的傳輸協(xié)議用UDP還是TCP。這里我推薦使用TCP。 最新的Heapster代碼支持不同的Backend,包含了log, influxdb, stackdriver, gcp monitoring, gcp logging, statsd, hawkular-metrics, wavefront, openTSDB, kafka, riemann, elasticsearch等等。因為Splunk的Metrics Store支持statsd協(xié)議,所以可以很容易的和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協(xié)議,如果想要使用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比較容易,創(chuàng)建對應的yaml配置文件,然后用kubectl命令行創(chuàng)建就好了。

以下是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協(xié)議的時候,需要配置的numMetricsPerMsg的值比較小,當這個值比較大的時候,會出message too long的error。當使用tcp的時候可以配置較大的數(shù)值。

運行 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中進行監(jiān)控

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

然后就可以用利用SPL的mstats和mcatalog命令來分析,監(jiān)控metrics數(shù)據(jù)了。

以下搜索語句列出所有的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設置進行監(jiān)控。

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

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

    關注

    68

    文章

    11326

    瀏覽量

    225860
  • 數(shù)據(jù)收集

    關注

    0

    文章

    73

    瀏覽量

    11762
  • kubernetes
    +關注

    關注

    0

    文章

    275

    瀏覽量

    9530

原文標題:使用Heapster和Splunk監(jiān)控Kubernetes運行性能

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Kubernetes Ingress Controller對比解析

    Kubernetes集群對外提供服務時,Ingress是標準的服務暴露方式。Ingress資源定義了HTTP/HTTPS路由規(guī)則,而Ingress Controller則是這些規(guī)則的實現(xiàn)者
    的頭像 發(fā)表于 04-09 10:09 ?216次閱讀

    Prometheus千節(jié)點集群的橫向擴展實踐

    在2026年的運維環(huán)境中,千節(jié)點規(guī)模的Kubernetes集群已經(jīng)稀松平常。一個典型的中大型互聯(lián)網(wǎng)公司,其Kubernetes集群規(guī)模通常在3000至5000個節(jié)點,單個
    的頭像 發(fā)表于 03-31 14:37 ?216次閱讀

    Kubernetes Pod異常問題排查實戰(zhàn)

    集群跑著跑著,Pod 掛了。Slack 告警一刷屏,腦子一片空白。打開終端敲 kubectl get pods,看到一堆 CrashLoopBackOff、ImagePullBackOff、Pending,不知道從哪下手。這是每個剛接觸 Kubernetes 運維的人都會
    的頭像 發(fā)表于 03-18 15:43 ?248次閱讀

    KubePi:開源Kubernetes可視化管理面板,讓集群管理如此簡單

    維人員 :能夠在一個統(tǒng)一的界面上監(jiān)控和管理所有集群資源,大幅提升效率。 企業(yè)IT :實現(xiàn)對跨地域、跨云的Kubernetes集群進行統(tǒng)一管理
    發(fā)表于 02-11 12:53

    Kubernetes kubectl命令行工具詳解

    kubectl是Kubernetes官方提供的命令行工具,作為與Kubernetes集群交互的主要接口,它通過調用Kubernetes API Server實現(xiàn)對
    的頭像 發(fā)表于 02-02 16:40 ?590次閱讀

    借助京東AI言犀提升Kubernetes集群巡檢的效率和準確性

    介紹 目前k8s-cluster-inspector組件可以自動化完成Kubernetes集群巡檢,并在巡檢結果中給出當前集群存在的問題,問題分級,問題類型,問題解決方法。 示例巡檢數(shù)據(jù)結構如下
    的頭像 發(fā)表于 09-15 16:56 ?646次閱讀
    借助京東AI言犀提升<b class='flag-5'>Kubernetes</b><b class='flag-5'>集群</b>巡檢的效率和準確性

    Kubernetes安全加固的核心技術

    在生產(chǎn)環(huán)境中,Kubernetes集群的安全性直接關系到企業(yè)數(shù)據(jù)安全和業(yè)務穩(wěn)定性。本文將從實戰(zhàn)角度,帶你掌握K8s安全加固的核心技術。
    的頭像 發(fā)表于 08-18 11:18 ?945次閱讀

    高效管理Kubernetes集群的實用技巧

    作為一名經(jīng)驗豐富的運維工程師,我深知在日常的Kubernetes集群管理中,熟練掌握kubectl命令是提升工作效率的關鍵。今天,我將分享15個經(jīng)過實戰(zhàn)檢驗的kubectl實用技巧,幫助你像藝術家一樣優(yōu)雅地管理K8s集群
    的頭像 發(fā)表于 08-13 15:57 ?1111次閱讀

    基于eBPF的Kubernetes網(wǎng)絡異常檢測系統(tǒng)

    作為一名在云原生領域深耕多年的運維工程師,我見過太多因為網(wǎng)絡問題導致的生產(chǎn)事故。傳統(tǒng)的監(jiān)控手段往往是事后諸葛亮,當你發(fā)現(xiàn)問題時,用戶已經(jīng)在抱怨了。今天,我將分享如何利用 eBPF 這一革命性技術,構建一套能夠實時檢測 Kubernete
    的頭像 發(fā)表于 07-24 14:09 ?918次閱讀

    Redis集群部署與性能優(yōu)化實戰(zhàn)

    Redis作為高性能的內存數(shù)據(jù)庫,在現(xiàn)代互聯(lián)網(wǎng)架構中扮演著關鍵角色。作為運維工程師,掌握Redis的部署、配置和優(yōu)化技能至關重要。本文將從實戰(zhàn)角度出發(fā),詳細介紹Redis集群的搭建、性能優(yōu)化以及
    的頭像 發(fā)表于 07-08 17:56 ?1018次閱讀

    使用樹莓派構建 Slurm 高性能計算集群:分步指南!

    在這篇文章中,我將分享我嘗試使用樹莓派構建Slurm高性能計算集群的經(jīng)歷。一段時間前,我開始使用這個集群作為測試平臺,創(chuàng)建一個更大的、支持GPU計算的高
    的頭像 發(fā)表于 06-17 16:27 ?1951次閱讀
    使用樹莓派構建 Slurm 高<b class='flag-5'>性能</b>計算<b class='flag-5'>集群</b>:分步指南!

    k8s網(wǎng)絡的基本介紹

    Kubernetes網(wǎng)絡是指在Kubernetes集群中不同組件之間進行通信和交互的網(wǎng)絡架構。
    的頭像 發(fā)表于 06-16 13:42 ?1047次閱讀

    MYSQL集群高可用和數(shù)據(jù)監(jiān)控平臺實現(xiàn)方案

    該項目共分為2個子項目,由MYSQL集群高可用和數(shù)據(jù)監(jiān)控平臺兩部分組成。
    的頭像 發(fā)表于 05-28 10:10 ?1453次閱讀
    MYSQL<b class='flag-5'>集群</b>高可用和數(shù)據(jù)<b class='flag-5'>監(jiān)控</b>平臺實現(xiàn)方案

    Ubuntu K8s集群安全加固方案

    面,構建安全的Kubernetes環(huán)境。安全防護不應僅停留在單點措施,而應形成縱深防御體系,從物理主機到集群控制面再到應用層進行全面保護。在生產(chǎn)環(huán)境中,需確保所有安全配置均符合最小權限原則,并定期
    的頭像 發(fā)表于 05-12 16:17 ?975次閱讀

    Kubernetes Helm入門指南

    Helm 是 Kubernetes 的包管理工具,它允許開發(fā)者和系統(tǒng)管理員通過定義、打包和部署應用程序簡化 Kubernetes 應用的管理工作。Helm 的出現(xiàn)是為了解決在 Kuberne
    的頭像 發(fā)表于 04-30 13:42 ?3212次閱讀
    <b class='flag-5'>Kubernetes</b> Helm入門指南