摘要:在本系列的第一部分中,我將介紹監(jiān)控的挑戰(zhàn)和主要數(shù)據(jù)來(lái)源。稍后,我將深入探討和部署,并使用下面列出的數(shù)據(jù)源的實(shí)際示例。監(jiān)控挑戰(zhàn)使團(tuán)隊(duì)更容易管理容器,在自動(dòng)維護(hù)所需狀態(tài)的同時(shí)調(diào)度和配置容器。
作者:Sean Porter
我們的行業(yè)長(zhǎng)期以來(lái)一直依賴基于微服務(wù)的架構(gòu)來(lái)更快、更安全地交付軟件。微服務(wù)的出現(xiàn)和無(wú)處不在自然為容器技術(shù)鋪平了道路,使我們能夠重新思考如何構(gòu)建和部署我們的應(yīng)用程序。Docker在2013年加入戰(zhàn)場(chǎng),對(duì)于專(zhuān)注于基礎(chǔ)架構(gòu)和云遷移現(xiàn)代化的公司而言,像Docker這樣的工具對(duì)于大規(guī)模快速發(fā)布應(yīng)用程序至關(guān)重要。
但是,隨著速度的提升帶來(lái)了挑戰(zhàn),容器在編排方面引入了不小的復(fù)雜性。進(jìn)入Kubernetes:一個(gè)開(kāi)源容器編排系統(tǒng),用于自動(dòng)化容器化應(yīng)用程序的部署、擴(kuò)展和管理,Kubernetes控制平面命令和控制你的基礎(chǔ)架構(gòu)。Kubernetes最初由谷歌于2014年推出,現(xiàn)在由云原生計(jì)算基金會(huì)維護(hù)(順便提一下,谷歌幫助組建了Kubernetes,以確保它保持自由免費(fèi)和競(jìng)爭(zhēng)力)。如果你使用Docker來(lái)容器化你的應(yīng)用程序,那么你肯定會(huì)使用Kubernetes進(jìn)行編排。(當(dāng)然還有其他的編排器,比如Docker Swarm和Apache Mesos,但Kubernetes已成為容器編排領(lǐng)域的領(lǐng)導(dǎo)者。)
在本系列的第一部分中,我將介紹監(jiān)控Kubernetes的挑戰(zhàn)和主要數(shù)據(jù)來(lái)源。稍后,我將深入探討Kubernetes和Docker部署,并使用下面列出的數(shù)據(jù)源的實(shí)際示例。
Kubernetes監(jiān)控:挑戰(zhàn)Kubernetes使團(tuán)隊(duì)更容易管理容器,在自動(dòng)維護(hù)所需狀態(tài)的同時(shí)調(diào)度和配置容器。核心價(jià)值觀是它作為一個(gè)通用平臺(tái),Kubernetes可以在任何地方部署你的應(yīng)用程序,無(wú)論是AWS、GCP、Azure還是裸機(jī)。同樣,所有這些功能和自動(dòng)化都帶來(lái)了挑戰(zhàn),特別是在關(guān)注性能方面。無(wú)論部署的規(guī)模如何,你仍需要知道該部署中有多少可用資源,以及了解已部署應(yīng)用程序和容器的運(yùn)行狀況。正如微服務(wù)使我們重新思考如何構(gòu)建應(yīng)用程序一樣,Kubernetes要求我們改變傳統(tǒng)的監(jiān)控方法,容器編排的動(dòng)態(tài)特性需要采用動(dòng)態(tài)的監(jiān)控方法。
以下是我看到的挑戰(zhàn):
在這個(gè)新的動(dòng)態(tài)時(shí)代,你的應(yīng)用程序在不斷地移動(dòng)。
在Kubernetes之前,將應(yīng)用程序分布在多個(gè)云(公共和私有云,以及不同的云提供商)中并非易事。現(xiàn)在分發(fā)應(yīng)用程序很容易,我們遇到了一系列新問(wèn)題。
就像從單體到微服務(wù)架構(gòu)的轉(zhuǎn)變一樣,采用Kubernetes意味著需要監(jiān)控許多小塊。
你已經(jīng)聽(tīng)說(shuō)過(guò)像牛(cattle)一樣處理你的基礎(chǔ)設(shè)施而不是寵物(pet)的優(yōu)點(diǎn)。Kubernetes是這種畜牧方法的縮影,可以輕松實(shí)現(xiàn)大量和短暫的基礎(chǔ)設(shè)施。就這樣,通過(guò)標(biāo)簽(label)和注釋?zhuān)╝nnotation)等標(biāo)識(shí)符跟蹤您的Kubernetes pod及其容器變得至關(guān)重要。
Kubernetes監(jiān)控:數(shù)據(jù)來(lái)源基本上,監(jiān)控工具從四個(gè)來(lái)源收集Kubernetes數(shù)據(jù):
運(yùn)行著Kubelet的Kubernetes主機(jī)。Kubernetes主機(jī)的資源有限,因此監(jiān)控它們尤其重要。有許多方法可以從這些主機(jī)中獲取數(shù)據(jù),但最常見(jiàn)的方法是使用Prometheus節(jié)點(diǎn)導(dǎo)出器(node exporter)從Kubernetes主機(jī)中獲取數(shù)據(jù),并在HTTP端點(diǎn)上公開(kāi)系統(tǒng)資源遙測(cè)數(shù)據(jù)(例如CPU使用和內(nèi)存)。
Kubernetes進(jìn)程,又叫做Kubelet指標(biāo),包括apiserver、kube-scheduler和kube-controller-manager的指標(biāo)。 這些內(nèi)容為你提供有關(guān)Kubernetes節(jié)點(diǎn)及其運(yùn)行工作的詳細(xì)信息。
Kubelet的內(nèi)置cAdvisor。這里有一個(gè)很好的總結(jié),但基本上Kubelet附帶了對(duì)cAdvisor的內(nèi)置支持,它可以收集、聚合、處理和導(dǎo)出正在運(yùn)行的容器的指標(biāo)。cAdvisor(它還具有對(duì)Docker容器的原生支持)為你提供每容器使用、跟蹤資源隔離參數(shù)和歷史資源使用情況。因?yàn)镵ubernetes是控制平面,它可以指定使用多少內(nèi)存,并利用cAdvisor跟蹤。
kube-state-metrics,它為你提供集群級(jí)別的信息,可以全面了解Kubernetes集群上發(fā)生的情況,例如你配置的所有pod及其當(dāng)前狀態(tài)。kube-state-metrics覆蓋所有Kubernetes服務(wù)并收集有關(guān)其當(dāng)前狀態(tài)的信息,例如運(yùn)行的容器數(shù)量、處于特定狀態(tài)的容器數(shù)量、是否有任何表明它們不健康或我們處于容量飽和狀態(tài)等。從README,kube-state-metrics“監(jiān)聽(tīng)Kubernetes API服務(wù)器”。
接下來(lái):容器狀態(tài)和使用Prometheus收集數(shù)據(jù)如果你有跟蹤這話題,你可能會(huì)注意到你可以使用Prometheus監(jiān)控所有這四個(gè)數(shù)據(jù)源。你可能還注意到我們只討論監(jiān)控Kubernetes而不是監(jiān)控它上面運(yùn)行的應(yīng)用程序(并且,這可能與你聽(tīng)到的有關(guān)Kubernetes監(jiān)控的所有內(nèi)容一致)。在我的下一篇文章中,我將以Prometheus展示Kubernetes和Docker監(jiān)控,討論它為什么能夠很好地適應(yīng)Kubernetes生態(tài)系統(tǒng),并識(shí)別差距。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/32827.html
摘要:然而此次調(diào)研結(jié)果表明,企業(yè)采用時(shí)面臨的挑戰(zhàn)中,復(fù)雜性僅排在第五位,用戶面臨的基礎(chǔ)設(shè)施相關(guān)的挑戰(zhàn)更大。在監(jiān)控方面,中型組織更可能會(huì)面臨挑戰(zhàn)。 人們?cè)谑褂眉安渴餕ubernetes時(shí)會(huì)遇到各種各樣的問(wèn)題。一些挑戰(zhàn)是使用Kubernetes時(shí)獨(dú)有的,其他一些挑戰(zhàn)則是伴隨著一些技術(shù)的使用出現(xiàn)的典型問(wèn)題。 The New Stack發(fā)布的《Kubernetes的生態(tài)系統(tǒng)狀況》報(bào)告總結(jié)了用戶在挑...
摘要:我們客戶之中有一個(gè)最近在日志中提到,顯著改變了他們將服務(wù)帶到市場(chǎng)的方式。現(xiàn)在我們看到的這種變化波及到監(jiān)視和故障診斷經(jīng)過(guò)編排的環(huán)境。警報(bào)需要適應(yīng)兩個(gè)方面。為了操作正常,這些警報(bào)提示需要自動(dòng)設(shè)置為創(chuàng)建的容器。 隨著K8S的成熟,越來(lái)越多的公司選擇在生產(chǎn)中運(yùn)用容器,我們現(xiàn)在看的第一個(gè)改變方式就是DevOps團(tuán)隊(duì)如何監(jiān)控的這個(gè)過(guò)程中的變化。我們客戶之中有一個(gè)最近在日志中提到,Kubernete...
摘要:宋體自年被開(kāi)源以來(lái),很快便成為了容器編排領(lǐng)域的標(biāo)準(zhǔn)。宋體年月,樂(lè)心醫(yī)療的第一個(gè)生產(chǎn)用集群正式上線。所以于年推出后,樂(lè)心醫(yī)療的運(yùn)維團(tuán)隊(duì)在開(kāi)會(huì)討論之后一致決定盡快遷移到。Kubernetes 自 2014 年被 Google 開(kāi)源以來(lái),很快便成為了容器編排領(lǐng)域的標(biāo)準(zhǔn)。因其支持自動(dòng)化部署、大規(guī)模可伸縮和容器化管理等天然優(yōu)勢(shì),已經(jīng)被廣泛接納。但由于 Kubernetes 本身的復(fù)雜性,也讓很多企業(yè)的...
摘要:下需要為每個(gè)單獨(dú)進(jìn)行采集配置采集日志目錄,采集規(guī)則,存儲(chǔ)目標(biāo)等,不易維護(hù)。日志服務(wù)的日志架構(gòu)實(shí)踐我們提出基于阿里云日志服務(wù)的日志處理架構(gòu),用以補(bǔ)充社區(qū)的方案,來(lái)嘗試解決場(chǎng)景下日志處理的一些細(xì)節(jié)體驗(yàn)問(wèn)題。 摘要: 在Kubernetes服務(wù)化、日志處理實(shí)時(shí)化以及日志集中式存儲(chǔ)趨勢(shì)下,Kubernetes日志處理上也遇到的新挑戰(zhàn),包括:容器動(dòng)態(tài)采集、大流量性能瓶頸、日志路由管理等問(wèn)題。本文...
摘要:大家好今天我分享的主題與游戲行業(yè)相關(guān),為大家介紹的是在騰訊游戲中的應(yīng)用實(shí)踐。隨著技術(shù)的興起,我們開(kāi)始調(diào)研在游戲容器化方面的應(yīng)用。也就是說(shuō),將不同游戲業(yè)務(wù)部署到同一臺(tái)母機(jī),采用綁定核的方式。在母機(jī)上架部署時(shí),創(chuàng)建設(shè)備和設(shè)備并將它們進(jìn)行關(guān)聯(lián)。 今天小數(shù)的推送內(nèi)容來(lái)自騰訊互娛高級(jí)工程師黃惠波,讓我們一起來(lái)看看吧~~~ 黃惠波,騰訊互娛高級(jí)工程師目前主要負(fù)責(zé)游戲計(jì)算資源容器化平臺(tái)的研發(fā)工作,包...
閱讀 2805·2019-08-30 15:55
閱讀 2852·2019-08-30 15:53
閱讀 2288·2019-08-26 13:47
閱讀 2551·2019-08-26 13:43
閱讀 3152·2019-08-26 13:33
閱讀 2794·2019-08-26 11:53
閱讀 1789·2019-08-23 18:35
閱讀 795·2019-08-23 17:16