李振良基于Kubernetes構(gòu)建DevOps體系
2022-09-04 21:53 作者:OoAmandaOoo | 我要投稿
基于kubernetes devops的整體方案
已報名?
1、基于此devops解決方案的整體工作過程如下所示:
1)開發(fā)人員基于eclipse集成開發(fā)環(huán)境鏡像代碼開發(fā)的,將代碼到gitlab中進行托管;
2)jenkins從gitlab拉取代碼;
3)jenkins調(diào)用Maven對代碼進行打包構(gòu)建;
4)jenkins調(diào)用docker構(gòu)建鏡像;
5)jenkins將構(gòu)建好的鏡像上傳至基于Nexus的私有鏡像倉庫;
6)jenkins拉取鏡像,并部署鏡像至Rancher中。

2、組件安裝部署
此部分描述需要為devops部署的組件,根據(jù)整體方案,devops需要使用gitlab、jenkins、nexus、maven、docker和kubernetes這些組件和系統(tǒng)。 其中,gitlab、jenkins、nexus都在kubernetes中安裝部署,在jenkins中包含了maven; docker直接在物理機提供,對于docker的部署不在此部分進行闡述。
2.1 代碼托管工具-Gitlab
在本文的方案中,代碼的托管基于Gitlab。下面是在Kubernetes中部署gitlab的YAML配置文件,在此文件中定義了gitlab部署和服務(wù)。gitlab部署使用的鏡像為gitlab/gitlab-ce:latest,并暴露了443、80和22這三個端口,并通過NFS對配置文件、日志和數(shù)據(jù)進行持久化。在服務(wù)中,端口的類型為NodePort,即允許集群外的用戶可以通過映射在主機節(jié)點上的端口對gitlab進行訪問。
標(biāo)簽: