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

兴义做网站的东莞网站推广哪里找

兴义做网站的,东莞网站推广哪里找,深圳公司注册资金实缴要求,天津营业执照代办的正规机构基于k8s的Jenkins CI/CD平台部署实践(三):集成ArgoCD实现持续部署 文章目录 基于k8s的Jenkins CI/CD平台部署实践(三):集成ArgoCD实现持续部署一、Argocd简介二、安装Helm三、Helm安装ArgoCD实战1. 添加Arg…

基于k8s的Jenkins CI/CD平台部署实践(三):集成ArgoCD实现持续部署

文章目录

  • 基于k8s的Jenkins CI/CD平台部署实践(三):集成ArgoCD实现持续部署
  • 一、Argocd简介
  • 二、安装Helm
  • 三、Helm安装ArgoCD实战
    • 1. 添加ArgoCD官方仓库
    • 2. 创建argocd命名空间
    • 3. 安装ArgoCD
    • 4. 安装ArgoCD-cli
    • 5. 验证ArgoCD-Pod状态
  • 四、ArgoCD页面配置
    • 1. 查看外部访问端口
    • 2. 访问ui页面和配置
    • 3. 创建ArgoCD应用
  • 五、Jenkins集成ArgoCD
    • 1. 流水线设计
  • 总结


在前两篇文章中,我们已完成 Jenkins 在 Kubernetes 环境中的部署与流水线构建,实现了代码的持续集成与镜像构建。为了进一步提升部署自动化能力,本篇将引入 GitOps 工具 ArgoCD,并与 Jenkins 流水线集成,构建从代码提交到自动部署的完整 CI/CD 流程。通过 ArgoCD 实现基于 Git 仓库的声明式部署,我们不仅能够提升交付效率,还能确保环境一致性和部署可追溯性,为平台稳定性和可维护性提供有力支撑。

一、Argocd简介

ArgoCD 是一款基于 GitOps 模式的持续部署工具,专为 Kubernetes 场景设计。它通过监听 Git 仓库中的应用声明文件(如 Kubernetes YAML/Helm/Kustomize 等),实现集群中资源的自动同步与状态管理。与传统的手动或脚本式部署方式不同,ArgoCD 将“部署即代码”理念贯彻到底,使部署流程标准化、可追溯、易于回滚。其提供了丰富的 Web UI、命令行工具和 API 支持,方便开发团队对应用的部署状态进行可视化管理与操作。

📌 说明:本实践中 ArgoCD 是通过 Helm Chart 进行安装部署的。这种方式便于版本控制和集中化配置管理,更适合中大型团队的自动化部署场景。

在这里插入图片描述

二、安装Helm

curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash
# 验证安装
helm version

在这里插入图片描述

三、Helm安装ArgoCD实战

1. 添加ArgoCD官方仓库

helm repo add argo https://argoproj.github.io/argo-helm
helm repo update

2. 创建argocd命名空间

kubectl create argocd

3. 安装ArgoCD

# 查看想要安装的版本
helm search repo argo/argo-cd --versions | head -n 20# 下载并解压指定版本的 ArgoCD Helm Chart,便于查看或自定义配置后再安装
helm pull argo/argo-cd --version 7.8.24 --untar
vim argocd/values.yaml  #修改成你需要的配置# 使用Helm 安装 ArgoCD
helm install argocd ./argo-cd -n argocd

在这里插入图片描述

4. 安装ArgoCD-cli

curl -sSL -o argocd-linux-amd64 https://github.com/argoproj/argo-cd/releases/latest/download/argocd-linux-amd64
mv argocd-linux-amd64 argocd
chmod 755 argocd
mv argocd /usr/bin/

5. 验证ArgoCD-Pod状态

kubectl get pod -n argocd

在这里插入图片描述

四、ArgoCD页面配置

1. 查看外部访问端口

kubectl get svc -n argocd

在这里插入图片描述

2. 访问ui页面和配置

访问地址:http://ip:30080
初始账号:admin
初始密码:kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d# 提供git仓库访问凭证,这里不配置的话后续配置ui页面会报错
argocd login ip:30080 \--username admin \--password aaa98224 \  #密码是因为我改成aaa98224--insecure# 添加 Git 仓库认证信息到 Argo CD
argocd repo add http://192.168.100.100/yw/hwj.git \  #gitlab仓库地址--username root \--password 'gitlab.hwj'  #gitlab仓库密码

在这里插入图片描述

3. 创建ArgoCD应用

前置条件:Gitlab仓库创建K8s资源文件目录和放入资源文件

在这里插入图片描述

创建ArgoCD应用

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

配置好了以后如下图所示,点击同步

在这里插入图片描述

同步成功,Pod自动部署完成

在这里插入图片描述

五、Jenkins集成ArgoCD

1. 流水线设计

pipeline {agent anyenvironment {git_address = "http://192.168.100.100/yw/hwj.git"    // gitlab仓库地址git_auth = "jenkins-to-gitlab"     // Jenkins中配置的GitLab凭据IDdocker_build_host = "192.168.100.30"    // 构建镜像主机branch_name = "master"// BUILD_NUMBER 是 Jenkins 的内置环境变量,代表当前构建的编号(递增)// 例如第一次构建为 1,第二次为 2,用于版本号控制}stages {stage('清空工作目录') {steps {echo '清理工作目录...'deleteDir()}}stage('拉取代码') {steps {checkout([$class: 'GitSCM',branches: [[name: "*/${branch_name}"]],doGenerateSubmoduleConfigurations: false,extensions: [],submoduleCfg: [],userRemoteConfigs: [[credentialsId: "${git_auth}", url: "${git_address}"]]])}}stage('代码打包') {steps {sh "mvn -U clean package -Dmaven.test.skip=true"}}stage('传输 Jar 包到 Docker 主机') {steps {sh """scp -rp hwj-main/target/hwj-main.jar root@${docker_build_host}:/root/docker-build/hwj/"""}}stage('Docker 主机构建镜像') {steps {sh """ssh root@${docker_build_host} 'cd /root/docker-build/hwj &&docker build -t harbor.local/k8s/hwj:v1.0.${BUILD_NUMBER} . &&docker push harbor.local/k8s/hwj:v1.0.${BUILD_NUMBER}'"""}}stage('更新 YAML 并提交 Git') {steps {script {def newTag = "v1.0.${BUILD_NUMBER}"def yamlPath = "k8s/hwj/hwj-deploy.yaml"    // gitlab仓库中存放K8s资源文件的目录def imageLine = "image: harbor.local/k8s/hwj:${newTag}"// 修改 YAML 镜像地址sh "sed -i 's|image: harbor.local/k8s/hwj:.*|${imageLine}|' ${yamlPath}"// 使用凭据进行 Git 提交和推送withCredentials([usernamePassword(credentialsId: "${git_auth}", usernameVariable: 'GIT_USER', passwordVariable: 'GIT_PASS')]) {sh """git config user.name 'hwj'git config user.email 'hwj@940415171.com'git remote set-url origin http://$GIT_USER:$GIT_PASS@192.168.100.100/yw/hwj.gitgit add ${yamlPath}git commit -m '更新镜像版本为 ${newTag}' || echo "No changes to commit"git push origin HEAD:${branch_name}"""}}}}}
}

在这里插入图片描述

再次同步 ArgoCD,这里也可以配置自动同步,每次 Jenkins 推送 YAML 改动后即可自动完成部署

在这里插入图片描述


总结

本篇文章基于前两篇 Jenkins CI/CD 系列的内容,进一步集成了 ArgoCD 实现自动部署能力:
✅ 使用 Helm 安装 ArgoCD,便于版本管理和企业级配置维护
✅ 配置 ArgoCD 与 Git 仓库同步,构建 GitOps 部署模型
✅ 利用 Jenkins 流水线自动更新部署清单,实现构建即部署

http://www.dtcms.com/wzjs/309672.html

相关文章:

  • 免费新闻网站建设关键词优化公司前十排名
  • 大业工业设计公司官网seo的搜索排名影响因素有哪些
  • 学术会议网站怎么做可以进入任何网站的浏览器
  • wordpress发文章设置文字大小抖音矩阵排名软件seo
  • ps切图做网站腾讯体育nba
  • 制作网站建设规划书的结构为资深seo顾问
  • 网站建设有趣名称信息流优化师面试常见问题
  • 怎么让百度多收录网站国家大事新闻近三天
  • 怎么评价一个网站设计做的好坏公司网站制作模板
  • 网站 验证码错误北京seo方法
  • .net网站开发过程电商网站开发
  • 衡阳做网站的公司360优化大师官方下载最新版
  • 河北邯郸网站制作今日热搜榜排名
  • 新疆生产建设兵团六师网站关键词都有哪些
  • 开办网站原因网络营销推广及优化方案
  • 什么是网络营销产品组合策略百度seo优
  • github做网站空间seo发包技术教程
  • 政府旅游网站建设seo页面内容优化
  • 东莞公司网站建设营销型网站建设免费推广
  • 网站排名不稳定怎么办临沂做网站推广的公司
  • 网站建设有哪些工作需需要筹备产品关键词大全
  • 网站主页设计抖音优化排名
  • 小俊哥网站建设商丘优化公司
  • 简要列举网站常见类型营销网站建设多少钱
  • 南宁青秀网站建设qq引流推广软件哪个好
  • install.php空白 wordpress廊坊网站排名优化公司哪家好
  • 学做效果图网站免费大数据平台
  • 广州网站设计推荐柚米新产品推广方案怎么写
  • 网站开发与维护能做什么职业短视频运营是做什么的
  • 可以做热图的工具网站爱站网关键词挖掘机