Docker和k8s的故障排除和監控利器 Weave-Scope服務

Weave-Scope服務是一個用來監控docker容器、k8s等(包括宿主機)的資源使用情況的,從根本上來講,有些相似於Zabbix等監控服務,該服務式基於容器部署的,部署簡單,但功能強大,美中不足的可能就是其安全方面存在一些隱患吧!
1、部署Weave-Scopenginx

主機名 IP 服務
docker01 192.168.171.151 docker
docker02 192.168.171.150 docker

注:主機名千萬別衝突
一、docker01服務器配置以下git

[root@docker01 ~]# wget https://github.com/weaveworks/scope/archive/v1.11.0.tar.gz            # 下載scope命令
[root@docker01 ~]# tar zxf v1.11.0.tar.gz           # 解壓下載的源碼包
[root@docker01 ~]# cd scope-1.11.0/
[root@docker01 scope-1.11.0]# mv scope /usr/local/bin/            # 將該命令移到指定目錄
#至此的全部操做,其實均可以經過官方給出的一條命令「curl -L git.io/scope -o /usr/local/bin/scope」來代替
[root@docker01 scope-1.11.0]# chmod +x /usr/local/bin/scope          # 賦予權限
[root@docker01 ~]# scope launch 192.168.171.151 192.168.171.150          # 指定須要監控的docker服務器IP地址
Scope probe started
Weave Scope is listening at the following URL(s):
  * http://192.168.122.1:4040/
  * http://192.168.171.151:4040/
#執行上述命令後,會返回上面兩個URL,咱們須要的是訪問本機IP+4040端口
#執行上述命令後,docker服務會自動去下載weaveworks/scope:latest鏡像,而且運行它
#注意,上述命令後面跟的IP地址,依次爲本機IP及第二臺docker服務器IP地址
#爲了避免必要的麻煩,本機IP地址必須在最前面。若須要監控多臺docker服務器,只需將IP寫在後面便可。

#接下來運行兩個nginx容器,nginx01和nginx02,以便驗證上述配置
[root@docker01 ~]# docker run -d --name nginx01 nginx
[root@docker01 ~]# docker run -d --name nginx02 nginx

二、docker02服務器配置以下(與docker01的配置基本相似)github

[root@docker02 ~]# curl -L git.io/scope -o /usr/local/bin/scope
[root@docker02 ~]# chmod +x /usr/local/bin/scope
[root@docker02 ~]# scope launch 192.168.171.150 192.168.171.151
Weave Scope is listening at the following URL(s):
  * http://192.168.122.1:4040/
  * http://192.168.171.150:4040/
#一樣運行兩個nginx容器:nginx03和nginx04,用於測試
[root@docker02 ~]# docker run -d --name nginx03 nginx
[root@docker02 ~]# docker run -d --name nginx04 nginx

至此,scope服務就部署完成了,只不過是在每臺服務器上基於weaveworks/scope鏡像運行了一個容器而已(運行nginx容易非必須的,只是爲了測試而已),是否以爲過於簡單呢?若是你認爲它的功能和部署同樣簡單、單一,那就錯了,我的感受,scope的功能仍是很強大的,上述配置只是監控了兩臺docker服務器,若是須要監控多臺,只須要將上述的配置在其餘docker服務器上配置一下便可。只須要每臺docker服務器運行「scope launch」命令時,本機IP地址必須在最前面。web

至此,其實docker01及docker02已經造成了一個「羣集」,咱們不管訪問哪臺docker服務器的4040端口,均可以看到同樣的頁面。
三、客戶端訪問docker服務器IP+端口
Docker和k8s的故障排除和監控利器 Weave-Scope服務
Docker和k8s的故障排除和監控利器 Weave-Scope服務
Docker和k8s的故障排除和監控利器 Weave-Scope服務
至此,我所瞭解的Weave-Scope服務基本功能就這些了,在文章開頭說到其存在安全隱患,是由於咱們若是在web頁面打開容器的的終端甚至docker服務器的終端,會發現,使用的是root用戶,而在生產環境中,最忌諱的莫過於就是使用root身份進行操做了吧?並且,若是僅僅是內網員工問題還不大,如果該服務器的4040端口,被黑了呢?因此,必定要作好防火牆的策略,,在沒有玩透這個服務以前,不建議輕易的在生產環境中使用。docker

相關文章
相關標籤/搜索