网站首页 > 技术教程 正文
基础设施作为代码(IaC)使用户能够编码基础设施。它允许它们定义系统的期望状态,并且在没有任何配置漂移的情况下轻松地维护该状态。与此同时,GitOps 允许用户以版本控制的方式将这个 IaC 配置存储在 Git 存储库中,并没有自动化基础设施管理过程。因此,它可以被认为是 IaC 的扩展。
工作流程 Git 中的 pull 请求开始。一旦开发人员创建了配置更改,他们就会被提交到存储库中,并创建一个拉取请求。当这些修改被审查和批准后,一个 GitOps 操作员,作为存储库和基础设施之间的中间人,接受新的配置。操作员将其与系统的当前状态进行比较,然后执行所请求的配置更改,以将系统状态更新为新的所需状态。
K8S环境中的 GitOps
Kubernetes 环境中 GitOps 的目标是通过 CI/CD 管道简化整个集群管理和应用程序开发及部署过程。
您可能已经有一个人 CI 进程来构建应用程序容器并将它们推送到容器注册中心,还有一个简单的 CD 进程来部署集群中的容器。GitOps 扩展了这些程序,以提供全自动化的体验,具有更强的控制和观察能力。
GitOps 允许用户将其声明性基础设施配置集成到 CI 进程中。用户将为部署、资源创建、策略等创建 Kubernetes YAML 清单。他们将被推送到 git 仓库,并通过拉请求进行审核和批准。一旦它们与相关的回购协议合并,CD 进程将自动执行配置更改和相关的应用程序部署到 Kubernetes 集群。
最好的部分是,用户可以通过这个工作流管理 k8集群之外的资源。假设您需要提供一个外部防火墙和存储资源来满足您的容器化应用程序的需求。用户可以使用 Terraform 用这样的工具将它们定义为声明性的 IaC 配置,并将它们集成到基于 gitops 的工作流中。它可以直接通过 CI/CD 管道提供必要的资源,而无需任何人工干预。
在 CI/CD 管道内实施 GitOps 的好处
GitOps 带来的主要好处是能更好地控制和观察整个环境。由于应用程序开发和基础设施管理都组合成一个单一的工作流,用户可以更好地理解他们的环境以及基础设施配置和应用程序更改之间的关系。
由于所有这些更改都是版本控制的,用户将有一个清晰的审计跟踪,以了解基础结构更改并轻松排除任何问题。此外,它们可以确保应用程序所需的所有资源在整个应用程序生命周期中保持不变,因为需要的配置状态是持续维护的。
GitOps 还简化了基础设施和配置过程,并使整个过程自动化。唯一的手工任务是开发基础设施配置,并在最终合并到所需存储库之前检查这些配置。这种方法可以实现更快、更一致的部署。此外,配置的编码允许更严格的标准化和审查,从而减少错误和配置错误。它还有助于创建受到良好控制的安全环境。
总结
GitOps 平衡应用程序开发过程,将应用程序和基础设施结合成一个通过 CI/CD 管道促进的统一工作流程。GitOps 的好处是可以加强控制和可观察性,同时仍然提供一种以开发者为中心的更简单的自动化方式来管理任何基础设施。
- 上一篇: 如何实现工作流?有完整的项目案例
- 下一篇: 如何定义一个属于自己的.net工作流
猜你喜欢
- 2024-11-22 CRM系统中的工作流有哪些作用?
- 2024-11-22 如何定义一个属于自己的.net工作流
- 2024-11-22 如何实现工作流?有完整的项目案例
- 2024-11-22 如何改进工作流让设计稿支持多个尺寸?
- 2024-11-22 「一个人的群」工作流
- 2024-11-22 2019年工作流系统需要具备的三个功能
- 2024-11-22 3700字干货!「工作流Workflow」模块设计方法总结
- 2024-11-22 OA:工作流和协同工作两手抓
- 2024-11-22 java工作流(java工作流是什么)
- 2024-11-22 我的前端架构养成记之整洁的工作流
你 发表评论:
欢迎- 最近发表
-
- Oracle 在其新的 Linux 内核中引入了热补丁功能
- CentOS 7.6下安装Oracle 11.2.0.4
- ORACLE体系 - 2(oracle体系讲解)
- ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务
- Hadoop自学系列集(二) ---- CentOS下安装JDK
- 如何升级oracle数据库安全补丁(oraclepsu补丁升级)
- 搭建Oracle数据库服务器(oracle服务器创建用户)
- OGG同步到Kafka(oggforbigdata到kafka)
- oracle是什么软件?(oracle是干什么用的)
- 脚本化修改Oracle用户的密码以及执行sql(增删改查等)
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)