Docker 集群 图形化显示 Visualizer
今天無(wú)意中看到了這個(gè)東西Visualizer,功能是可以可視化的去觀察展示swarm集群里面?zhèn)€節(jié)點(diǎn)的信息情況,使用起來(lái)很方便。這里整理一下:
我先部署一個(gè)三節(jié)點(diǎn)的swarm集群:
然后在整個(gè)簡(jiǎn)單的nginx,開(kāi)7個(gè)服務(wù),讓三個(gè)node節(jié)點(diǎn)都跑起來(lái)。
docker service create --replicas 3 -p 80:80 --name nginx nginx:1.13.7-alpine
?
OK,nginx在集群上跑起來(lái)了,而且每個(gè)節(jié)點(diǎn)都可以訪問(wèn)。
然后直接在manager節(jié)點(diǎn)上安裝Visualizer
docker run -d -p 8081:8080 -v /var/run/docker.sock:/var/run/docker.sock --name visua dockersamples/visualizer:latest
訪問(wèn)http://192.168.0.102:8081/??(IP根據(jù)自己實(shí)際情況調(diào)整,注意是manager節(jié)點(diǎn)ip,不能是node節(jié)點(diǎn)ip)
?
第二種姿勢(shì)是直接加在新項(xiàng)目里,加到docker-compose.yml里面
先把剛剛的環(huán)境都清理了
先刪除visualizer容器
docker rm 27bb747f91aa267a32c9aa32b407ab4b0b674d87279e1f934d33d5ba7b70597b -f
然后把集群里面跑的那三個(gè)nginx全清除
docker service rm 0q28ulho4qpq
現(xiàn)在干凈了
?
然后開(kāi)始準(zhǔn)備docker-compose.yml文件
?
version: "3"
services:
?nginx:
??image: nginx
??ports:
???- "80:80"
??networks:
???- mainweb
??deploy:
???mode: replicated
???replicas: 7
????
?visualizer:
??image: dockersamples/visualizer:stable
??ports:
???- "8080:8080"
??stop_grace_period: 1m30s
??volumes:
???- "/var/run/docker.sock:/var/run/docker.sock"
??deploy:
???placement:
????constraints: [node.role == manager]
????
networks:
?mainweb:
?
然后執(zhí)行 把文件拷到主節(jié)點(diǎn)上,執(zhí)行下面命令
docker stack deploy -c docker-compose.yml nv
?
注意上面,剛開(kāi)始的時(shí)候七個(gè)服務(wù)只啟動(dòng)了2個(gè),這個(gè)不是問(wèn)題,要等一小會(huì)。
?
然后可以隨便找一個(gè)節(jié)點(diǎn)訪問(wèn)80
?
然后訪問(wèn)下http://192.168.0.102:8080/
?
三臺(tái)服務(wù)器跑了7個(gè)容器,分布很清晰。然后要注意一個(gè)地方,這種直接放到docker-compose.yml的姿勢(shì)和最上面在manager節(jié)點(diǎn)單獨(dú)安裝的最大區(qū)別就是,yml這種會(huì)導(dǎo)致任何一個(gè)節(jié)點(diǎn)訪問(wèn)8080都可以看到整個(gè)集群的情況,這個(gè)很好理解,因?yàn)檫@個(gè)服務(wù)已經(jīng)被集成到集群里了,而集群的每個(gè)ip:8080就都可以訪問(wèn)了。
?
部署的時(shí)候根據(jù)實(shí)際情況自己安排即可。
?
?
總結(jié)
以上是生活随笔為你收集整理的Docker 集群 图形化显示 Visualizer的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: redis-集群分片
- 下一篇: Docker Swarm集群secret