創(chuàng)建kubernetes集群并部署容器化應(yīng)用只是第一步,一旦集群運(yùn)行起來(lái),我們需要確保運(yùn)行正常,所有必要組件就位并各司其職,有足夠的資源滿足應(yīng)用的要求。kubernetes是一個(gè)復(fù)雜的系統(tǒng),運(yùn)維團(tuán)隊(duì)需要有一套工具幫助他們獲知集群的實(shí)時(shí)狀態(tài),并為故障排查提供及時(shí)和準(zhǔn)確的數(shù)據(jù)支持。
專注于為中小企業(yè)提供成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、外貿(mào)網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)晉安免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了數(shù)千家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
kubernetes常用的監(jiān)控方案:
Weave Scope是 Docker 和 kubernetes 可視化監(jiān)控工具。Scope提供了至上而下的集群基礎(chǔ)設(shè)施和應(yīng)用的完整視圖,用戶可以輕松對(duì)分布式的容器化應(yīng)用進(jìn)行實(shí)時(shí)監(jiān)控和問(wèn)題診斷。
Weave Scope的功能特性:
- 拓?fù)溆成?/li>
- Scope中的視圖
- 圖形或表格模式
- 靈活的過(guò)濾
- 強(qiáng)大的搜索
- 實(shí)時(shí)的應(yīng)用和容器指標(biāo)
- 對(duì)容器進(jìn)行故障排除和管理
- 使用插件API生產(chǎn)自定義指標(biāo)
功能詳細(xì)介紹參考官方文檔:https://www.weave.works/docs/scope/latest/features/
Weave Sccope 由App和Agent兩部分組成:
- Agent 負(fù)責(zé)收集容器和宿主的信息,并發(fā)送給App
- App 負(fù)責(zé)處理這些信息,并生成相應(yīng)的報(bào)告,并以交互式的形式展示。
參考官方文檔:https://www.weave.works/docs/scope/latest/installing/#k8s
kubernetes集群環(huán)境:
master:172.16.1.30
node01: 172.16.1.31
node02:172.16.1.32
1,安裝Weave scope
[root@master scope]# kubectl apply -f "https://cloud.weave.works/k8s/scope.yaml?k8s-version=$(kubectl version | base64 | tr -d '\n')&k8s-service-type=NodePort"
namespace/weave created
serviceaccount/weave-scope created
clusterrole.rbac.authorization.k8s.io/weave-scope created
clusterrolebinding.rbac.authorization.k8s.io/weave-scope created
deployment.apps/weave-scope-app created
service/weave-scope-app created
deployment.apps/weave-scope-cluster-agent created
daemonset.apps/weave-scope-agent created
2,資源查看(確保資源正常運(yùn)行)
注意:Service weave-scope-app默認(rèn)是ClusterIP類型,已經(jīng)在執(zhí)行安裝的命令中添加了參數(shù)k8s-service-type=NodePort將其修改為 NodePort。
3, 登錄web界面:
瀏覽器訪問(wèn)url:http://172.16.1.30:32688/ ,默認(rèn)顯示當(dāng)前所有的Controller(Deployment,Daemonset等)
以pod為例查看資源,資源有兩種展現(xiàn)形式:
1)圖形方式:
圖形方式還會(huì)展示pod之間的拓?fù)潢P(guān)系:
2)表格方式:
表格方式可以更加清晰,詳細(xì)的查看到pod的各種信息(一目了然)
weave scope監(jiān)控對(duì)象有進(jìn)程,容器,pods,主機(jī)等。
監(jiān)控項(xiàng)有cpu,內(nèi)存,平均負(fù)載等。
點(diǎn)擊某個(gè)pod,會(huì)展示狀態(tài),資源使用,進(jìn)程等詳細(xì)信息
點(diǎn)擊需要查看的pod,在資源使用詳情中點(diǎn)擊“Get logs”
這里查看的是nginx服務(wù)的日志,當(dāng)有用戶訪問(wèn)web服務(wù)時(shí),都會(huì)將各種信息實(shí)時(shí)的輸出到屏幕中。
在pod的資源詳情中點(diǎn)擊“describe”
點(diǎn)擊Deployment 或者是Daemonset類型的Controller,可以對(duì)資源進(jìn)行伸縮和與查看。
擴(kuò)容:
縮容:
在右邊容器展示的界面中,分別可以對(duì)容器進(jìn)行attch,exec shell,restart,paus和stop操作
點(diǎn)擊進(jìn)入終端,和在命令行執(zhí)行exec命令進(jìn)入容器是一樣的,對(duì)管理和操作容器都是非常方便的。
左下角可按條件展示:有容器的類型(系統(tǒng)或者應(yīng)用),容器的狀態(tài)(停止,運(yùn)行,停止和運(yùn)行),容器顯示或隱藏,以及可以自己選擇查看那個(gè)命名空間下的容器。
scope 支持關(guān)鍵字搜索和定位資源
1)按容器名進(jìn)行搜索:
比如查看CPU使用率>1%的容器:
2)按資源使用進(jìn)行搜索:
比如查看Memory使用率>100M的pod:
小結(jié):
weave scope工作在4040端口,不會(huì)要求創(chuàng)建管理員賬號(hào),且對(duì)用戶沒(méi)有限制,非常危險(xiǎn),主要用于直觀展現(xiàn)容器間的調(diào)用,也可以用于和容器,宿主機(jī)之間的交互式操作。