当前位置:网站首页>How does Argo family bucket make Devops easier?
How does Argo family bucket make Devops easier?
2022-06-24 12:39:00 【My small bowl of soup】
If you are a DevOps The engineer , You may at least have heard of Argo The name , See the friendly cuttlefish (squid) The logo , And want to know : What exactly is this tool that everyone is talking about ?
In short ,Argo Is a popular open source tool , It makes GitOps For any use Kubernetes All people are practical . But this is much more than that , Because by enabling GitOps,Argo Will also make Kubernetes The environment is more robust than ever 、 Safe and reliable .
What is? GitOps, Will replace DevOps Do you ?
GitOps Is a new process and paradigm for development teams to manage infrastructure and deploy applications .GitOps Medium “Git” It refers to the open source version control system .GitOps Use Git As a single source of information for declarative configuration . Based on this declarative configuration , It works its magic .
GitOps Use Git Pull requests automatically manage the configuration and deployment of the infrastructure . When the development team is right Git When the configuration changes , Deployed in the environment GitOps The agent automatically reconciles the changes to the real-time state . Every change to the real-time environment will occur in Git Capture... In the repository , So the team has visibility and auditability for system changes . most important of all , In case of failure in production , Rolling back to the previous working version is easy .
GitOps Build on developer experience , Enable teams to manage infrastructure using the same tools and processes used to develop software , And extend these tools to software deployment and infrastructure management .
Although some people will GitOps Touted as “DevOps 2.0”, But many experts disagree , call GitOps No DevOps A better version of , It will not completely replace DevOps.GitOps Is a kind of right DevOps A very useful technical practice for the team .DevOps Engineers will not be Git Triggered by the robot . but GitOps Will make developers more efficient .
What is? Argo project ?
Argo Is a cloud native Computing Foundation (CNCF) Managed open source projects :
https://www.cncf.io/projects/argo/
For building and managing Kubernetes、GitOps Style continuous delivery workflow .Argo What makes it unique is that it is Kubernetes Native , Designed from scratch for a modern containerized environment .
Argo The project consists of four main sub projects :
- Argo CD: Have the power to GUI and CLI Of GitOps Continuous delivery engine .
- Argo Workflows: A workflow engine , Support workflow and directed acyclic graph (DAG), Each of these process phases is a container .
- Argo Rollouts: An advanced Kubernetes Deployment engine , Support progressive delivery strategies , Such as canary and blue / Green deployment , These are common Kubernetes It's very difficult to achieve .
- Argo Events: One is based on Kubernetes Event dependent management system , Can be used to trigger CI/CD Automated workflows in pipelines .
Argo The advantages of tools in a production environment
ArgoCD
Argo CD yes Kubernetes Native continuous delivery (CD) Tools .
https://argoproj.github.io/cd/
Although most CD The tool only supports push based deployment , but Argo CD Working in pull mode , from Git The repository retrieves the updated code and deploys it directly to Kubernetes resources . This allows developers to manage infrastructure configuration and application updates in one system .
Argo CD Its main functions include :
- Automatically put Kubernetes The application state in the cluster is the same as Git The repository (GitOps) The current version of the declarative configuration in .
- Ability to visualize deployment issues and detect and fix misconfigurations .
- Conveniently based on Web Of GUI and CLI.
- Role-based access control (RBAC) And single sign on (SSO), Including passage GitHub、LinkedIn、Microsoft Wait for login .
- Support in GitLab、GitHub and BitBucket Which triggers the operation webhook.
GitOps Can help you in Kubernetes To achieve real GitOps workflow , Provide the following benefits in a production environment :
- Minimize failed deployments and quickly recover from downtime :Argo CD It allows you to recover and rollback immediately and easily in case of any problems in production , This reduces recovery time to seconds .
- Built in audit history :Argo CD Make sure you are right Kubernetes Every change to the cluster is made in Git Audit in the form of configuration change log . This provides a complete audit trail of who changed the content in the cluster , This enables consistent operation and supports compliance requirements .
- Improve visibility into the development function lifecycle :Argo CD Provide traceability from each change in the infrastructure or application directly to the code submission that caused those changes .
- Improve safety :Argo CD Provide strong security assurance , Use powerful encryption to manage and verify identities , And in CI Create a complete separation between the environment and the production system , Eliminate multiple types of supply chain attacks .
Argo Rollouts
Argo Rollouts It's a group. Kubernetes Controller and CRD, Provides advanced deployment capabilities .
https://codefresh.io/learn/argo-rollouts/
for example Kubernetes Blue in the environment / Green and Canary deployment 、 Experimentation and progressive delivery . It can work with Ingress Controller and service grid integration , To convert the traffic increment to the new version during the update .
Argo Rollouts A key feature of is that it can query and interpret metrics from many sources , To verify that the deployment is working properly and perform an automatic upgrade or rollback .
By default ,Kubernetes Provide Deployment object , This object uses “ Scroll to update ” Policy update application . In large production environments , Rolling updates are considered too risky , Because we can't control the pushing speed , Nor can it be rolled back automatically in the event of a failure .
Another limitation is out of the box ,Kubernetes Deployment Unable to query external indicators , For example, real users' measurement of performance or participation , To determine if the deployment was successful .
Argo Rollouts Can solve all these challenges , And in Kubernetes Fully progressive delivery in the environment , Without complicated configuration .
Argo Workflows
Argo Workflows Is an open source container native workflow engine , Used in Kubernetes Arrange parallel tasks on .Argo Workflow is implemented as Kubernetes Custom resource definition (CRD).
Argo The main features of the workflow include :
- Define a workflow in which each step in the workflow is a container .
- Model a multi-step workflow as a set of actions or DAG To capture dependencies .
- stay Kubernetes Run locally CI/CD The Conduit , No need to configure complex software development products .
Argo Workflows Can let you in any Kubernetes Automate production workflows in the environment , Whether it's local 、 Mixed cloud or cloudy environment . It eliminates manual processes , And ensure that automation is presented in declarative configuration , Make it consistent 、 repeatable 、 Easy rollback and troubleshooting .
Argo Events
Argo Events It's based on Kubernetes Event dependency Manager , It is for different event sources ( for example webhook、 S3、 Dispatch 、 Flow, etc. ), And event dependent Kubernetes Object dependencies were successfully resolved , Provide triggers .
Argo The events themselves are not very useful . To generate value , Need to integrate with systems that can perform workflow steps . therefore , have access to Argo Workflows To integrate Argo Events. This helps orchestrate parallelism Kubernetes Homework .
Argo Events Provides several in production Kubernetes Enable dependency management in the environment :
- Manage the dependencies of various event sources .
- Be able to customize business level constraint logic to solve event dependencies .
- Manage everything from simple linear real-time dependencies to complex multi-source batch job dependencies .
- accord with CloudEvents standard .
- Ability to manage event sources at run time .
Conclusion
This paper introduces GitOps and Argo Basic knowledge of the project , And shows Argo How each key module of the project helps developers and DevOps The engineer made... With minimal effort Kubernetes Prepare for production .Argo Its magic lies in its simplicity and seamless integration into the existing Kubernetes The way of workflow .
边栏推荐
- 11+! Methylation modification patterns based on m6A regulatory factors in colon cancer are characterized by different tumor microenvironment immune spectra
- [Tencent cloud 618 countdown!] Promotion strategy of the promotion activities
- 105. 简易聊天室8:使用 Socket 传递图片
- Listed JD Logistics: breaking through again
- Practice of dynamic load balancing based on open source tars
- Post processing - deep camera deformation effects
- How to solve the problem that MBR does not support partitions over 2T, and lossless transfer to GPT
- Another prize! Tencent Youtu won the leading scientific and technological achievement award of the 2021 digital Expo
- Tencent security monthly report - zero trust development trend forum, digital Expo Technology Award, Mercedes Benz security research results
- Is it safe to open an account under the conditions of new bonds
猜你喜欢

Opencv learning notes -- Separation of color channels and multi-channel mixing
![[2022 national tournament simulation] BigBen -- determinant, Du Jiao sieve](/img/ec/6c6e3d878e2a05a6e7a4ca336ae134.jpg)
[2022 national tournament simulation] BigBen -- determinant, Du Jiao sieve

mLife Forum | 微生物组和数据挖掘

Opencv learning notes - regions of interest (ROI) and image blending

WPF from zero to 1 tutorial details, suitable for novices on the road

How can a shell script (.Sh file) not automatically close or flash back after execution?

Opencv learning notes - Discrete Fourier transform

Installation and operation of libuv

文本转语音功能上线,可以体验专业播音员的服务,诚邀试用

一文讲透植物内生菌研究怎么做 | 微生物专题
随机推荐
Another prize! Tencent Youtu won the leading scientific and technological achievement award of the 2021 digital Expo
Mlife forum | microbiome and data mining
OpenGL es shared context for multi-threaded rendering
mLife Forum | 微生物组和数据挖掘
Easynvr user login is modified to share the modification process of ip+ user name restriction
Reset the password, and the automatic login of the website saved by chrome Google browser is lost. What is the underlying reason?
99% of the students can't write good code because of this problem!
JS和TS中常用特殊字符
Coinbase will launch the first encrypted derivative product for retail traders
QT -- the qtabwidget supports dragging tabbar items
[tke] GPU node NVIDIA Tesla driver reinstallation
Google hacking search engine attack and Prevention
WPF从零到1教程详解,适合新手上路
pipeline groovy
How to apply for new bonds is it safe to open an account
RTMP streaming platform easydss video on demand interface search bar development label fuzzy query process introduction
Listed JD Logistics: breaking through again
Jenkins pipeline syntax
Design and implementation of high performance go log library zap
Concentrate on research preparation, Tencent cloud, see you next year!