docker叢集下tengine代理elasticsearch叢集,以及kibana實現CI/CD
上篇:https://blog.csdn.net/qq_35299863/article/details/83624300
文章介紹了docker-swarm叢集下建立elasticsearch叢集以及CI/CD
現在介紹tengine代理elasticsearch叢集,以及kibana實現CI/CD
1:首先下載映象
docker pull kibana:5.6
然後打tag,推到我們自己的映象倉庫,作為基礎映象
Dockerfile:
然後jenkins下建立自由風格的job:
註釋:第一次構建先構建完映象,然後再在叢集下建立服務,然後再把最後一行更新命令開啟
docker service create --name test_kibana --network cdel --update-failure-action rollback
2:建立tengine代理(tengine之前已經有做說明,這裡重點說配置和CI/CD)
2.1看下我們的tengine配置:
看下代理後端的配置:
這裡代理了es和kibana(我的kibana也在叢集下)
下面是代理kibana的配置:
上面就是tengine的配置以及Dockerfile,和之前一樣:建立jenkins構建第一次映象。然後再在叢集下建立tengine服務,再把更新命令開啟:
docker service create --name elk-tengine --network cdel --publish “mode=host,published=80,target=80” --health-cmd=“curl --silent --fail 127.0.0.1/status || exit 1” --health-retries=3 --health-interval=5s --health-timeout=2s --constraint=“node.role == manager” --mode global --update-delay 10s --update-failure-action rollback
註釋:我的kibana連es走叢集,所以沒有對外暴露es埠,如果你需要暴露記得加上
這個時候我們的代理層就已經部署好了,然後看看kibana服務有沒有報錯:
docker service logs -f test_kibana 或者找到對應的容器 docker logs -f xxx
沒報錯就對了
這樣我們的kibana對外是80埠,連線es的9200走叢集內部,就全部完成了
歡迎留言
下篇:https://blog.csdn.net/qq_35299863/article/details/83660924 swarm下ELK叢集