当前位置: 首页 > news >正文

涿鹿网站建设咸宁做网站

涿鹿网站建设,咸宁做网站,石家庄微网站建设公司,游戏网站平台大全游戏网一、说在前面的话 上文已为我们准备好了以下内容: 制作java应用的docker镜像,并推送至镜像仓库上传helm yaml代码至gitlab仓库(此gitlab和java应用所在的gitlab可以独立,也可以在一起,但是不宜在同一个工程&#xff…

一、说在前面的话

上文已为我们准备好了以下内容:

  • 制作java应用的docker镜像,并推送至镜像仓库
  • 上传helm yaml代码至gitlab仓库(此gitlab和java应用所在的gitlab可以独立,也可以在一起,但是不宜在同一个工程,所以这里特此区分)
  • 安装k8s和argocd
  • argocd的权限设计和对接ldap(非必须)

本文先梳理出整个devops的设计框架,然后将演示java应用是如何在argocd中部署的,以及升级程序的版本号后,自动触发更新部署。

二、总体设计

在这里插入图片描述

  • 这里的jenkins CI部分将交由下文继续展开,不属于本文的范畴
  • 本文重点讲述argocd CD部分是如何部署的细节

三、argocd project

这里我采用的是default–默认组,在实际使用中,你需要创建多个project,用于隔离不同组里的人员其权限。
换句话说,你公司有5个业务组,那么就需要创建5个project。(这里不去翻译为中文,因为工程或者说项目,实在和我们实际的组不是很搭)

  • 我理解的argocd中的project是指物理/虚拟组的概念,和权限是搭配使用的。给不同的人分配至不同的project,隔离不同组之间的权限。

在这里插入图片描述

四、 argocd cluster

因为我们把argocd部署在k8s,所以默认就有一个k8s可供部署应用。
在这里插入图片描述

你如果需要部署到其他k8s里,在这里再新增k8s的配置项即可。后面你在创建argocd 应用的时候就可以选择它。

五、argocd Repositories

这里的仓库,是指Helm yaml文件所存储的地方。前文我们已详细描述了如何制作并推送helm,本文就直接拿来使用,不再赘述。

gitlab的准备工作

在这里插入图片描述
在这里插入图片描述
把ssh密钥对的公钥存储在gitlab, 私钥保存在argocd。
在这里插入图片描述

正式创建argocd的仓库

下面的ssh private key data就是上图中的ssh私钥文件的内容。
在这里插入图片描述
返回仓库列表:
在这里插入图片描述

  • 注意,你仓库的CONNECTION STATUS是Successful,说明授权成功。
  • 接下里就是创建argocd 应用了。

六、argocd application

本文的重头戏了,前文所有的准备皆是为这一步做准备。

创建应用名称,选择所属的组,并设置自动部署还是手动部署

在这里插入图片描述

helm yaml和部署目标

在这里插入图片描述

yaml的部署方式

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

应用详情

创建好的应用见下
在这里插入图片描述
在这里插入图片描述

七、对argocd 应用的补充说明

  • 应用中的参数覆盖,在详情界面,会有一个锤子状的图标以示区分。我这里要说的是,被覆盖的参数,只能手动修改后触发部署。像版本号等字段,是需要采用gitops技术来实现自动更新部署的,不要在argocd中进行参数覆盖,修改入口必须是在gitlab代码库。
    在这里插入图片描述
  • 查看应用的详情:yaml格式
    你查看MANIFEST内容,右上方点击“EDIT”即可修改。
    在这里插入图片描述
  • 同步策略详情见下:
  syncPolicy:automated:prune: trueselfHeal: trueallowEmpty: falsesyncOptions:- Validate=false- CreateNamespace=true- PruneProagationPolicy=foreground- PruneLast=trueretry:limit: 5backoff:duration: 5sfactor: 2maxDuration: 3m

八、总结

每次更新部署的时候,你只要修改git工程里的devops-service/values.yaml中的版本号,argocd就会自动触发部署。

后文有jenkins这款CI工具后,如果要把CI和CD串联起来,做到自动化,只需要在jenkins里修改values.yaml文件中的版本号。这也就是gitops是思想,基于git代码的提交触发以前人工的操作。

本文把我在使用argocd的过程中遇到的坑都一一总结出来,希望后来者有个对照。

踩过的坑,最大就是在helm部署的时候,没有做到gitops,要么没有选择values.yaml文件,要么覆盖了不应该覆盖的参数–程序版本号。

http://www.yayakq.cn/news/454053/

相关文章:

  • 怎么免费建个人网站广州 企业网站建设
  • 网站建设的关键要素广州做网站海珠新科
  • 企业网站销售培训心得体会100字
  • 四川省住房与城乡建设厅官方网站wordpress關閉評論
  • ai智能建站北美跨境电商平台有哪些
  • 网页版梦幻西游伙伴推荐网站做seo需要些什么软件
  • 玉溪住房和城乡建设局网站3gqq网页版
  • 嘉兴网站关键词推广推广资讯
  • 网站设计做哪些准备做设计图的软件
  • 怎么样把网站做火c2c交易平台官方网站
  • 房产网站建设的功能微网站 一键拨号
  • 网站开发语言php5.1网络服务类型及其采用的网络协议
  • 合肥网站建设优化网站页面打不开
  • 网站备案幕布照片ps注册公司法人年龄要求
  • 中山做营销型网站公司梓潼销售网站建设哪家专业
  • 网站建设功能表seo培训机构哪家好
  • 网站超链接怎么做 wordapp开发公司上市
  • 网站建设飠金手指科杰十五百度百科提交入口
  • h5网站开发定制成都电话营销外包公司
  • 魏县做网站网络科技公司名字起名大全
  • 做网站首页需要什么资料wordpress转服务器
  • 靖江市属于哪里有做网站的福田营销型网站建站推广外包
  • flash 做网站济宁网站建设哪家好
  • 做音乐相册的网站虚拟空间可以做视频网站么
  • 新氧网站头图怎么做的烟台网站建设方案咨询
  • 国内哪家网站做的系统纯净多网站建设
  • 未来网站开发需求多wordpress前端框架
  • 让别人做网站图片侵权google wordpress
  • 商城网站建设运营方案wordpress仿砍柴网
  • 电商网站开发制作wordpress添加追番