成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

從基礎設施即代碼到環境即代碼的進化之路

云計算 云原生
在平臺工程中,每一秒都是寶貴的,每一個資源都很重要。隨著基礎設施變得越來越復雜,以代碼的形式管理環境是現代DevOps組織成熟的下一步。

運用GitOps來啟動環境,可為開發團隊帶來一致性、版本控制、速度等多方面的好處。

譯自How We Evolved from IaC to Environments as Code,作者 Edan Evantal 是 Quali 的CTO Edan Evantal負責Quali基礎設施自動化和環境交付平臺的所有產品工程。在加入Quali之前,Edan曾在Matrix IT和Sibam Ltd擔任工程管理職務。他在高科技行業擁有18年以上的經驗......

這些年來,在構建我們的平臺的過程中,并與我們的產品所支持的其他DevOps和平臺工程師一起工作,我親眼見證了應用基礎架構的演變正在打破它本來意在提供的自動化。

基礎設施即代碼(IaC)工具對于定義和自動交付云服務非常寶貴。當一個開發團隊的需求擴展到此范圍之外時,自動化通常就會中斷。

原因有兩個:

  • IaC工具的設計目的在于速度和自動化,而不是作為環境的真實來源。大型團隊在大規模利用基礎設施和了解代碼更改可能如何擾亂應用性能方面可能會遇到困難。
  • IaC工具之間不兼容。應用日益依賴于用各種技術定義的復雜基礎設施,需要手動編排來協調工具的細微差異。

開發人員在基礎設施自動化功能與應用需求實際情況之間存在鴻溝。其結果是速度降低,基礎設施存在未管理或配置錯誤的風險增加。

我們詢問自己,我們能做些什么來彌合這一鴻溝,這讓我們想到了一個簡單的問題:

如果您可以以代碼的形式啟動所有環境,而不管基礎設施的范圍或用于定義它的 IaC 工具是什么,會怎么樣?

在Git中將環境定義為代碼

為了將環境定義為代碼,我們首先需要以開發人員啟動環境所需的一切來定義,這種格式對于DevOps來說既易于理解,又方便自動化機器讀取。

使用我們的Torque平臺,我們連接到一個Git倉庫,發現其中定義的IaC模塊,并將資源配置打包成一個新的由平臺自動生成的YAML。

從那里,我們可以修改任何YAML代碼,以包含環境啟動時將生成的基礎架構組件、參數、依賴項、元數據、身份驗證和輸出。

下面是YAML代碼片段示例:

kind: environment
environment_name: "Workstation Staging A"
description: "EC2 workstation for staging workloads"
state: inactive
owner_email: "myemail@email.com"
blueprint:
 name: "test-workstation"
 repository_name: "cloud-native-application"
 branch: "main"
 commit: "536955389cd4ecbd1b8895c4a1093fe14a809b65"
inputs:
 service-account: "sa"
 agent: "review3"
grains:
 create-ec2:
   source:
     commit: "697d1"
   specs:
     instance_type: "t2.large"
     ami: "ami-0c55b159ertafe1f0"
     security_groups: ["sg-0246e9ddc2b2f23f4"]
 post-deployment:
   scripts: ["./configure-environment.sh", "./deploy-application.sh"]

這包含了環境所有必要元數據的單一定義,以結構化格式呈現。

簡單來說,我們利用現有的基礎設施代碼來定義環境為代碼。

使用GitOps啟動應用環境

為了滿足客戶的需求,我們需要使這一定義具有操作性。

我們的初始答案是依賴我們的自助門戶。當我們平臺中的管理員創建這些YAML文件(我們稱之為環境的“藍圖”)時,他們可以選擇“發布”它。這會將環境添加到平臺中的一個自助服務目錄中,擁有最終用戶權限的用戶可以按需啟動該環境。對于那些將環境集成到開發者工具、CI/CD或內部開發者門戶的人來說,發布新藍圖也可以通過這些工具訪問。

為了支持采用GitOps的團隊,我們需要將已發布的藍圖集成到日常工作流程中。

通過在我們發現IaC模塊的原始倉庫中存儲這個新的YAML文件,我們使環境定義在GitOps中可訪問。實際上,我們為能夠訪問該倉庫的用戶“發布”了環境定義。

現在,開發人員可以使用單個命令啟動完整的環境。

這種方法還提供了幾個額外的優勢:

  • 版本控制: 就像應用代碼一樣,環境可以進行版本控制,以確保跟蹤每一次更改,并在必要時進行回滾。
  • 一致性: 利用這一定義每次都以一致的方式預配環境,消除了“它在我的機器上能工作”的問題。
  • 速度: 開發人員可以通過簡單地提交代碼來預配環境——這是他們熟悉的動作,所以他們可以快速響應開發、測試或生產需求,而無需其他團隊的幫助。
  • 協作和治理: 創建環境的共享定義為僅靠IaC本身所不能輕松做到的協作奠定了基礎。
  • 運營效率: 自動化預配流程意味著減少冗余的手動工作(和疲憊),以及DevOps工程師可以承擔更有價值的任務。

在平臺工程中,每一秒都是寶貴的,每一個資源都很重要。隨著基礎設施變得越來越復雜,以代碼的形式管理環境是現代DevOps組織成熟的下一步。

責任編輯:武曉燕 來源: 云云眾生s
相關推薦

2017-09-16 17:28:55

基礎設施代碼持續交付

2016-08-18 16:55:00

基礎設施

2022-01-10 08:00:00

云原生云計算技術

2022-06-17 10:24:57

IaC

2022-04-11 19:08:06

設施作用域pod

2020-02-24 11:08:27

云計算網絡攻擊數據

2016-08-30 10:20:57

云計算

2021-11-11 09:00:00

IaC工具自動化

2021-06-18 11:02:12

云計算infrastruct云安全

2021-07-26 09:53:58

IaC基礎設施即代碼云數據中心

2022-04-12 19:38:44

PostgresOperator數據庫

2023-11-02 00:16:26

2017-06-22 17:23:13

超融合塑合代碼

2021-05-20 09:00:00

數字化轉型IT技術

2023-11-08 00:25:14

CI云原生DevOps

2017-12-04 12:49:16

跨國互聯網基礎設施即代碼

2022-09-09 12:27:57

工具基礎設施IaC

2019-02-25 12:16:02

服務器功能服務

2020-04-17 19:41:57

基礎架構即代碼平臺即代碼云計算

2023-02-19 15:31:09

架構軟件開發代碼
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲精品区 | 在线免费观看一区二区 | 亚洲视频第一页 | 国产在线观看网站 | av无遮挡 | 国产三区视频在线观看 | 一区二区日韩 | 蜜桃特黄a∨片免费观看 | 精品在线一区二区 | 91一区二区在线观看 | 精品无码久久久久国产 | 一本一道久久a久久精品蜜桃 | 亚洲欧美一区二区三区1000 | 麻豆精品国产91久久久久久 | 国产成人福利在线观看 | 亚洲午夜精品视频 | 久久久成人一区二区免费影院 | 亚洲欧美国产一区二区三区 | 日韩精品中文字幕一区二区三区 | 亚洲一区二区三区四区五区中文 | 精品福利在线 | 超碰欧美| 亚洲一级黄色 | 亚洲色在线视频 | 日本中出视频 | 一区二区在线 | 午夜码电影 | 91一区二区| 黄色网毛片 | 免费视频久久 | 国产日韩精品一区二区 | 久久久日韩精品一区二区三区 | 中文字幕一区二区三区在线观看 | 亚洲精品视频导航 | 久久久久国产精品一区二区 | 日日操夜夜操天天操 | 亚洲精品一区二区三区中文字幕 | 在线观看免费毛片 | 精品国产网 | www.色午夜.com | 97国产一区二区精品久久呦 |