摘要:本節(jié)主要介紹利用部署應(yīng)用到中。利用部署一個應(yīng)用,需要原生資源文件如或等。最后一般都會引用通知插件,將構(gòu)建結(jié)果通知部署人員。說到部署策略,不得不說,實現(xiàn)的功能很多,但是足夠的復(fù)雜,目前來看,國內(nèi)只有小紅書用起來了。
前言
本小節(jié)應(yīng)該是這個系列剩下的兩個小節(jié)之一了。剩下一個是之前承諾好的drone-wechart插件。本節(jié)主要介紹利用helm部署應(yīng)用到kubernetes中。
至于helm,詳細(xì)可以參考FreeWheel Lead Engineer 張夏寫的一系列文章。總之,k8s中yaml文件的編寫復(fù)雜程度直接決定了k8s的使用門檻。利用Kubernetes部署一個應(yīng)用,需要Kubernetes原生資源文件如deployment、replicationcontroller、service或pod 等。而對于一個復(fù)雜的應(yīng)用,會有很多類似上面的資源描述文件,如果有更新或回滾應(yīng)用的需求,可能要修改和維護(hù)所涉及的大量資源文件,且由于缺少對發(fā)布過的應(yīng)用版本管理和控制,使Kubernetes上的應(yīng)用維護(hù)和更新等面臨諸多的挑戰(zhàn),helm主要是能解決這些問題。
而drone中提供了三個kube-helm插件,用來配合drone,實現(xiàn)k8s的cicd。這三個插件大同小異,我集中總結(jié)一下:
drone-kube
drone-kubernetes
helm
不過所有的插件都是只能用來更新應(yīng)用,不能新建。
總體思路編寫自己的.drone.yaml,放置到項目根目錄下。主要就是引用各種pipeline插件,例如默認(rèn)添加的git拉取代碼的插件,項目編譯環(huán)境的插件,此處針對不同語言,可以定制不同的鏡像,例如我們之前的項目會把common這種基礎(chǔ)庫也做到docker鏡像里,可以提高構(gòu)建速度。以及telegram,line,mail等通知插件。
提交代碼到github或是gogs等版本控制工具里,觸發(fā)webhook鉤子,通知drone執(zhí)行整個設(shè)計的構(gòu)建流程。該項目中,需要另外兩個插件,一個是docker鏡像,用于將編譯好的程序做成鏡像,并推到自己的docker registry中。所以需要在根目錄下,編寫自己的DockerFile文件。另外一個是上面提到的helm插件。
docker hub由于墻的原因,這邊一般是使用harbor,vmware中國團(tuán)隊基于docker registry做出來的私有鏡像倉庫。
helm可以選用k8s官方的公共倉庫,一般都會搭建一個自己私倉,結(jié)合起來使用。
新的鏡像推到harbor之后,helm插件就可以執(zhí)行部署步驟了。
最后一般都會引用通知插件,將構(gòu)建結(jié)果通知部署人員。
總結(jié)路漫漫其修遠(yuǎn)兮,其實整個helm插件只是可以滿足一般的需求,整個部署過程經(jīng)常會有一定的部署策略,藍(lán)綠,金絲雀等。這一塊需要不同的paas平臺,重新實現(xiàn)。另外之前提到的,helm插件只能用來更新,不能新建。所以這一塊需要探索的路還很長。
說到部署策略,不得不說Spinnaker,實現(xiàn)的功能很多,但是足夠的復(fù)雜,目前來看,國內(nèi)只有小紅書用起來了。實現(xiàn)的語言是groovy,也不夠友好(當(dāng)然主要是我不會).
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/27156.html
摘要:本節(jié)主要介紹利用部署應(yīng)用到中。利用部署一個應(yīng)用,需要原生資源文件如或等。最后一般都會引用通知插件,將構(gòu)建結(jié)果通知部署人員。說到部署策略,不得不說,實現(xiàn)的功能很多,但是足夠的復(fù)雜,目前來看,國內(nèi)只有小紅書用起來了。 前言 本小節(jié)應(yīng)該是這個系列剩下的兩個小節(jié)之一了。剩下一個是之前承諾好的drone-wechart插件。本節(jié)主要介紹利用helm部署應(yīng)用到kubernetes中。至于helm,...
摘要:前言一直在思考部署應(yīng)用到的姿勢,之前介紹過,個人感覺把記錄數(shù)據(jù)放到中不是特別好。可以幫助你安全地更新應(yīng)用。部署到中注意事項由于需要從倉庫中拉取代碼,所以會有一個的問題。注意文件并沒有一項。 前言 一直在思考部署應(yīng)用到k8s的姿勢,之前介紹過helm,個人感覺helm把記錄數(shù)據(jù)放到k8s中不是特別好。最近發(fā)現(xiàn)了weave的flux項目(A tool for deploying conta...
摘要:前言一直在思考部署應(yīng)用到的姿勢,之前介紹過,個人感覺把記錄數(shù)據(jù)放到中不是特別好。可以幫助你安全地更新應(yīng)用。部署到中注意事項由于需要從倉庫中拉取代碼,所以會有一個的問題。注意文件并沒有一項。 前言 一直在思考部署應(yīng)用到k8s的姿勢,之前介紹過helm,個人感覺helm把記錄數(shù)據(jù)放到k8s中不是特別好。最近發(fā)現(xiàn)了weave的flux項目(A tool for deploying conta...
摘要:是針對于來說的升級版,做了一個功能上的調(diào)整,以其發(fā)布的版本號命名,目前最新的版本為。個人認(rèn)為必定會成為未來鏈中的關(guān)鍵一環(huán)。是什么熟悉的同學(xué)肯定非常熟悉甚至于每天都會使用到。是用于針對集群運行命令的命令行接口。 簡介: 主要原因是,我不會 vim ,在 linux 上修改 charts 的很蹩腳,所以就想著能不能再 windows 上執(zhí)行 helm 命令,將 charts install...
閱讀 1767·2021-11-24 09:39
閱讀 1560·2021-11-16 11:54
閱讀 3501·2021-11-11 16:55
閱讀 1667·2021-10-14 09:43
閱讀 1450·2019-08-30 15:55
閱讀 1236·2019-08-30 15:54
閱讀 3425·2019-08-30 15:53
閱讀 1343·2019-08-30 14:18