k8s集群CD工具-ArgoCD

ArgoCD是什么


Argo CD 是 Kubernetes 的声明式 GitOps 持续交付工具。应用程序定义、配置和环境应该是声明性的和版本控制的。应用程序部署和生命周期管理应该是自动化的、可审计的且易于理解。
官方文档

CD工作流(无ArgoCD)

假设有一个微服务应用程序在Kubernetes集群里运行,当应用程序代码发生变化时,比如添加新功能或错误修复。

Jenkins上的Pipeline将会自动触发,并测试更改,构建新的镜像,并将其推送到镜像存储库。



那么新镜像如何部署呢?一般做法:

  1. 更新k8s部署的yaml文件里的镜像tag为新镜像tag
  2. 应用此yaml文件在k8s集群里


但是在CD这个过程也可能会遇到一些问题:

  • 安装和设置一些工具,如kubectl,helm,还可能需要在Jenkins上安装一些插件
  • 配置这些工具对k8s集群的访问
  • 不同平台之间的配置,例如AWS的EKS
  • 集群安全性
  • 无法对部署状态进行观察

CD工作流(使用ArgoCD)

工作原理是反转工作流

  • ArgoCD 就是k8s集群的一部分,我们没有将更改推送到集群里
  • ArgoCD agent拉取k8s manifest的改变并将其应用到集群里

  1. 在k8s集群里部署ArgoCD
  2. 配置ArgoCD连接对应的Git仓库
  3. 监视任何更改,如有任何更改,则会自动拉取这些更改并应用到集群里去

关于Git存储库建议将源代码库和配置文件库分开创建,以便更好地应用到集群里去

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/570818.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

<计算机网络自顶向下>

在计算机网络中,网络层包括数据平面和控制平面,它们分别负责网络数据转发和网络路由控制。以下是它们之间的区别: 数据平面(Data Plane): 数据平面负责实际的数据传输和转发,它处理网络中的数据…

AI-数学-高中-40法向量求法

原作者视频:【空间向量】【考点精华】3法向量求法稳固(基础)_哔哩哔哩_bilibili 注意:法向量对长度没有限制,求法向量时,可以假设法向量z为任意一个取非0的值。 示例1: 示例2:

Transformer - 特征预处理

Transformer - 特征预处理 flyfish 原始数据 train_data.values [[ 5.827 2.009 1.599 0.462 4.203 1.34 30.531][ 5.76 2.076 1.492 0.426 4.264 1.401 30.46 ][ 5.76 1.942 1.492 0.391 4.234 1.31 30.038][ 5.76 1.942 1.492 0.426 4.234 1.31…

AndroidStudio中虚拟机(AVD)无法启动,出现unable to locate adb错误

1.检查Android SDK Platform-Tools是否安装(个人是通过这个方法解决的) 首先通过File-Project Structure-Project SDK检查SDK有没有被选中 步骤:打开file -> settings ,搜索SDK 之后点击"-",在点击Apply进行安装 2.可能是驱动的问题 电脑…

牛客NC179 长度为 K 的重复字符子串【simple 哈希,滑动窗口 C++、Java、Go、PHP】

题目 题目链接: https://www.nowcoder.com/practice/eced9a8a4b6c42b79c95ae5625e1d5fd 思路 哈希统计每个字符出现的次数。没在窗口内的字符要删除参考答案C class Solution {public:/*** 代码中的类名、方法名、参数名已经指定,请勿修改&#xff0c…

python(一)

一、字面量 字面量:在代码中,被写下来的固定的值,称之为字面量。 Python中常用的有6种值(数据)的类型: 二、注释 注释的分类: 单行注释:以#开头,#右边的所有文字当作说明,而不是真正要执行的程序&#…

2024新算法爱情进化算法(LEA)和经典灰狼优化器(GWO)进行无人机三维路径规划设计实验

简介: 2024新算法爱情进化算法(LEA)和经典灰狼优化器(GWO)进行无人机三维路径规划设计实验。 无人机三维路径规划的重要意义在于确保飞行安全、优化飞行路线以节省时间和能源消耗,并使无人机能够适应复杂环…

多模态模型

转换器成功作为构建语言模型的一种方法,促使 AI 研究人员考虑同样的方法是否对图像数据也有效。 研究结果是开发多模态模型,其中模型使用大量带有描述文字的图像进行训练,没有固定的标签。 图像编码器基于像素值从图像中提取特征,…

C++笔记:类和对象(一)->封装

类和对象 认识类和对象 先来回忆一下C语言中的类型和变量,类型就像是定义了数据的规则,而变量则是根据这些规则来实际存储数据的容器。类是我们自己定义的一种数据类型,而对象则是这种数据类型的一个具体实例。类就可以理解为类型&#xff0c…

vue2知识点————(父子通信)

vue2的知识点,更多前端知识在主页,还有其他知识会持续更新 vue组件 在Vue.js 2.x中,父子组件之间的通信是非常常见的情况,Vue提供了多种方法来实现这种通信。 Props 父向子通信 Props 是父组件向子组件传递数据的一种方式。通过…

Java的八大基本数据类型和 println 的介绍

前言 如果你有C语言的基础,这部分内容就会很简单,但是会有所不同~~ 这是我将要提到的八大基本数据类型: 注意,Java的数据类型是有符号的!!!和C语言不同,Java不存在无符号的数据。 整…

【电控笔记5.8】数字滤波器设计流程频域特性

数字滤波器设计流程&频域特性 2HZ : w=2pi2=12.56 wc=2*pi*5; Ts=0.001; tf_lpf =

【行为型模式】解释器模式

一、解释器模式概述 解释器模式定义:给分析对象定义一个语言,并定义该语言的文法表示,再设计一个解析器来解释语言中的句子。也就是说,用编译语言的方式来分析应用中的实例。这种模式实现了文法表达式处理的接口,该接口…

设计模式——状态模式19

状态模式是一种行为设计模式, 允许一个对象在其内部状态改变时改变它的行为,对象看起来好像修改了它的类。状态模式的核心是状态与行为绑定,不同的状态对应不同的行为。 设计模式,一定要敲代码理解 状态行为抽象 //在某种状态下&…

数据库——实 验 8 SQL 编程

1.T-SQL 语言简介 SQL Server 使用的语言称作 Transact-SQL, 它不仅包括基本 SQL 操作的内容,如 SQL 的数据查询功能和数据操作功能等,还有一般程序设计的能力。 2. 局部变量和全局变量的概念 1)局部变量 局部变量是一个能够拥有特定数据类型的对…

多目标应用:基于非支配排序粒子群优化算法NSPSO求解无人机三维路径规划(MATLAB代码)

一、无人机多目标优化模型 无人机三维路径规划是无人机在执行任务过程中的非常关键的环节,无人机三维路径规划的主要目的是在满足任务需求和自主飞行约束的基础上,计算出发点和目标点之间的最佳航路。 1.1路径成本 无人机三维路径规划的首要目标是寻找…

html网页在展示时,监听网络是否断网,如果断网页面暂停点击响应

序言: 集合百家之所长,方著此篇文章,废话少说,直接上代码,找好你的测试网页,进行配置,然后复制粘贴代码,就可以了。 1.css文件内容 #newbody{display: none;width: 100%;height: 9…

【用户投稿】Apache SeaTunnel 2.3.3+Web 1.0.0版本安装部署

项目概要 Apache SeaTunnel 是一个分布式、高性能、易扩展的数据集成平台,用于实时和离线数据处理,支持多种数据源之间的数据迁移和转换。 其中,Apache-seatunnel-web-1.0.0-bin.tar.gz和apache-seatunnel-2.3.3-bin.tar.gz代表了 Apache SeaTunnel Web…

python语言实现语音合成(文字转语音)

python语言实现语音合成(文字转语音) 在Python中实现文本到语音——语音朗读功能,可以使用pyttsx3库。pyttsx3库的安装和使用也相对简单,但在控制语音的暂停、继续和停止功能方面可能存在一定的困难。 首先,您需要安装…

北航计算机软件技术基础课程作业笔记【4】

题目&#xff08;好像以前没加&#xff09; 二叉树与哈希表 作业 1.二叉树前序遍历结果 二叉树结构为 代码实现中序后序推理前序表达式 #include <iostream> #include <stack> #include <string> #include <vector> #include <deque> ​ // …