自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

基礎(chǔ)架構(gòu)即代碼的8大優(yōu)勢,以及如何選擇工具?

云計(jì)算
越來越多的企業(yè)將主要應(yīng)用或服務(wù)托管在云平臺(tái)上,也使得基礎(chǔ)架構(gòu)即代碼(IaC)變得越來越流行。

越來越多的企業(yè)將主要應(yīng)用或服務(wù)托管在云平臺(tái)上,也使得基礎(chǔ)架構(gòu)即代碼(IaC)變得越來越流行。

[[330525]]

為什么需要基礎(chǔ)架構(gòu)作為代碼?

在傳統(tǒng)基礎(chǔ)設(shè)施上,當(dāng)你需要一臺(tái)服務(wù)器資源,則需要運(yùn)維團(tuán)隊(duì)去創(chuàng)建一個(gè)虛擬機(jī)實(shí)例或?yàn)閼?yīng)用準(zhǔn)備物理服務(wù)器,配置中需要使用到腳本或手動(dòng)安裝的方式。

當(dāng)有了更多應(yīng)用需求,則需要更多的虛擬機(jī),用于DNS,郵件服務(wù)器,數(shù)據(jù)庫等等。還有要對(duì)操作系統(tǒng),Web服務(wù)器,JVM和其他所有相關(guān)架構(gòu)進(jìn)行持續(xù)的更新。而且隨著時(shí)間的發(fā)展,它們彼此之間的配置會(huì)發(fā)生變化,帶來配置的漂移,從而產(chǎn)生了雪花服務(wù)器(snowflake servers)。跟蹤配置更改是很大的挑戰(zhàn)。

如果服務(wù)器很少且使用周期較長,那么還可以接受。

隨著AWS等公有云服務(wù)的廣泛使用,企業(yè)對(duì)計(jì)算資源的選擇發(fā)生了很大變化。許多企業(yè)沒有了在硬件和數(shù)據(jù)中心上的投資,而是開始將其應(yīng)用程序遷移到云中。在云端,可以在數(shù)分鐘內(nèi)部署服務(wù)器。

為了保持最佳性能和可用性,可能必須部署更多實(shí)例來滿足需求。然后,不需要時(shí)對(duì)資源彈性釋放來節(jié)省成本。當(dāng)按小時(shí)付費(fèi)時(shí),可能需要每天按比例彈性的縮放,所以如果每天多次手動(dòng)進(jìn)行操作,顯然具有挑戰(zhàn)性。

通過自動(dòng)化的方式,獲取代碼中部署或終止實(shí)例,以及其他基礎(chǔ)結(jié)構(gòu)組件所需的配置步驟,云可以幫助更快,更可靠地交付價(jià)值。

什么是基礎(chǔ)架構(gòu)即代碼?

所以,基礎(chǔ)設(shè)施即代碼是使用軟件開發(fā)原則和實(shí)踐的基礎(chǔ)設(shè)施自動(dòng)化。

簡單理解,就是基礎(chǔ)架構(gòu)像軟件一樣來對(duì)待,然后編寫,測試和執(zhí)行代碼以定義,部署,更新和釋放基礎(chǔ)架構(gòu)。通過編寫代碼來管理服務(wù)器,數(shù)據(jù)庫,網(wǎng)絡(luò),日志,應(yīng)用程序的部署和配置。當(dāng)要更改基礎(chǔ)結(jié)構(gòu)時(shí),可以更改代碼,對(duì)其進(jìn)行測試,然后將其應(yīng)用于系統(tǒng)中。

基礎(chǔ)架構(gòu)即代碼的8大優(yōu)勢,以及如何選擇工具?

基礎(chǔ)架構(gòu)即代碼與手動(dòng)配置相比,優(yōu)勢顯而易見:

1. 自助服務(wù)

由于將基礎(chǔ)架構(gòu)定義為代碼,因此整個(gè)過程和部署可以自動(dòng)化,并且可以由DevOps團(tuán)隊(duì)中的任何人啟動(dòng),有基礎(chǔ)架構(gòu)需求的用戶可以在需要時(shí)獲得所需的資源。

2. 冪等性

冪等性意味著你定義了所需的狀態(tài),并且無論運(yùn)行腳本多少次,結(jié)果都是相同的。它檢查當(dāng)前狀態(tài)和所需狀態(tài),并僅應(yīng)用所需的更改。而使用bash腳本很難做到這一點(diǎn)。

Ansible和Terraform之類的工具具有內(nèi)置功能,可以使代碼具有冪等性。

3. 降低成本

與手動(dòng)配置相比,降低了配置所需的時(shí)間和精力。

4. 更快的軟件交付

快速為開發(fā),測試和生產(chǎn)配置基礎(chǔ)架構(gòu),使企業(yè)能夠更快地交付軟件。由于部署過程是自動(dòng)化的,因此它也是一致且可重復(fù)的。

5. 自我記錄

基礎(chǔ)結(jié)構(gòu)的狀態(tài)由任何人都易于閱讀的代碼來定義。

6. 版本控制

傳統(tǒng)上,更改生產(chǎn)系統(tǒng)被認(rèn)為是有風(fēng)險(xiǎn)的,但往往改變不可避免。但添加新功能時(shí),可能需要添加新數(shù)據(jù)庫,可能需要向集群添加新服務(wù)器或存儲(chǔ)?;A(chǔ)架構(gòu)即代碼減少了對(duì)基礎(chǔ)架構(gòu)進(jìn)行更改的工作量和風(fēng)險(xiǎn)。

可以在版本控制中載入源文件,這意味著你可以跟蹤對(duì)基礎(chǔ)結(jié)構(gòu)所做的所有更改,并在出現(xiàn)問題時(shí)快速恢復(fù)到以前的版本。

7. 驗(yàn)證與測試

基礎(chǔ)架構(gòu)即代碼可以連續(xù)測試和應(yīng)用小的更改。一切都是代碼,因此可以使用靜態(tài)分析和自動(dòng)化測試來檢查錯(cuò)誤。

8. 提升安全性

向基礎(chǔ)架構(gòu)即代碼的轉(zhuǎn)變能夠從一開始就嵌入安全性,然后就可以可靠,安全地應(yīng)用更改。

基礎(chǔ)架構(gòu)即代碼的工具

盡管有許多工具可用,但選擇一種工具可能并不容易。以下是一些注意事項(xiàng),可能對(duì)大家?guī)椭??;A(chǔ)架構(gòu)即代碼的工具大致上可分為兩類:配置管理工具和配置工具。

配置管理工具是用戶管理在現(xiàn)有服務(wù)器上安裝和管理的工具。比如,Chef,Puppet,Ansible和SaltStack都是主要的配置管理工具??梢允褂门渲霉芾砉ぞ咴诜?wù)器上安裝和更新軟件。

基礎(chǔ)架構(gòu)即代碼的8大優(yōu)勢,以及如何選擇工具?

Terraform,CloudFormation,OpenStack Heat是配置工具,即用于創(chuàng)建服務(wù)器,數(shù)據(jù)庫服務(wù)器,負(fù)載均衡,隊(duì)列,子網(wǎng),防火墻以及基礎(chǔ)架構(gòu)的所有其他組件。這些工具對(duì)提供程序進(jìn)行API調(diào)用以創(chuàng)建所需的基礎(chǔ)結(jié)構(gòu)。

基礎(chǔ)架構(gòu)即代碼的8大優(yōu)勢,以及如何選擇工具? 

1. 可變與不可變基礎(chǔ)架構(gòu)

可變基礎(chǔ)架構(gòu)是一種在配置后即可修改的基礎(chǔ)架構(gòu)。Chef,Ansible,Puppet和SaltStack能夠在現(xiàn)有服務(wù)器上安裝或更新軟件。在服務(wù)器的生命周期中,這可能會(huì)發(fā)生很多次。經(jīng)過多次更新后,每臺(tái)服務(wù)器可能與其他服務(wù)器略有不同,從而導(dǎo)致配置漂移。例如,某些在測試服務(wù)器上正常運(yùn)行的更改,可能無法在生產(chǎn)服務(wù)器上運(yùn)行。

Terraform和CloudFormation之類的工具能夠每次通過計(jì)算機(jī)鏡像或容器鏡像創(chuàng)建新服務(wù)器。如果需要更新服務(wù)器,就用用新服務(wù)器替換它們。新服務(wù)器啟動(dòng)后,可以終止舊服務(wù)器。每個(gè)部署都使用不可變的鏡像來創(chuàng)建服務(wù)器,因此避免了配置漂移。不過,效率可能有點(diǎn)慢。

2. 命令式與聲明式工具

命令式工具類似于腳本,列出了達(dá)到所需狀態(tài)所要采取的步驟。聲明性工具可以指定結(jié)束狀態(tài),并且工具將制定實(shí)現(xiàn)該狀態(tài)的步驟。

Chef是主要的命令式工具,而Ansible使用混合方法并支持命令式和聲明式技術(shù)。

Terraform,CloudFormation,Puppet,OpenStack Heat和SaltStack都屬于聲明性工具類別,可以在其中聲明所需的最終狀態(tài)。

3. 使用多種工具

盡管這些工具中的每一個(gè)都可以單獨(dú)使用,但是一種通用的方法是將它們一起使用。例如,可以使用Terraform來構(gòu)建VPC,子網(wǎng),網(wǎng)關(guān),負(fù)載均衡和虛擬機(jī),然后使用Ansible在這些實(shí)例上配置和部署服務(wù)。

 

責(zé)任編輯:趙寧寧 來源: 今日頭條/IaC/云平臺(tái)
相關(guān)推薦

2022-09-19 07:03:47

IaCTerratest測試

2015-08-25 13:13:26

開源云架構(gòu)開源工具

2019-04-17 09:00:00

DevOps基礎(chǔ)架構(gòu)代碼工具

2023-02-19 15:31:09

架構(gòu)軟件開發(fā)代碼

2020-04-17 19:41:57

基礎(chǔ)架構(gòu)即代碼平臺(tái)即代碼云計(jì)算

2020-09-25 07:00:00

基礎(chǔ)架構(gòu)代碼模板

2016-04-14 09:12:20

惠普

2013-09-25 10:05:04

中小企業(yè)共享基礎(chǔ)架構(gòu)平臺(tái)

2022-08-25 14:52:42

技術(shù)架構(gòu)工具

2023-07-14 14:16:31

2024-02-04 09:13:24

基礎(chǔ)設(shè)施代碼DevOps

2022-08-12 15:47:17

工具基礎(chǔ)架構(gòu)IT

2017-09-16 17:28:55

基礎(chǔ)設(shè)施代碼持續(xù)交付

2020-11-30 23:56:20

安全運(yùn)營中心信息安全網(wǎng)絡(luò)安全

2015-01-08 09:28:17

DCIM數(shù)據(jù)中心基礎(chǔ)設(shè)施管理

2016-09-01 15:02:38

混合云多云基礎(chǔ)架構(gòu)

2016-08-30 10:39:44

云計(jì)算

2022-01-10 08:00:00

云原生云計(jì)算技術(shù)

2021-06-15 21:00:24

架構(gòu)測試代碼化

2021-11-11 09:00:00

IaC工具自動(dòng)化
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)