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

了解如何使用Terraform管理多云?

譯文
云計算 開源
多云戰(zhàn)略可能會給企業(yè)IT團隊帶來很多復(fù)雜性。雖然Puppet、Chef和Ansible等幾款開源端點管理工具有所幫助,但能夠通過單一入口點而不是通過典型的服務(wù)器/客戶端關(guān)系將服務(wù)部署到多個提供者來得尤其重要。

【51CTO.com快譯】多云戰(zhàn)略可能會給企業(yè)IT團隊帶來很多復(fù)雜性。雖然Puppet、Chef和Ansible等幾款開源端點管理工具有所幫助,但能夠通過單一入口點而不是通過典型的服務(wù)器/客戶端關(guān)系將服務(wù)部署到多個提供者來得尤其重要。

[[252809]]

HashiCorp的Terraform是一個開源基礎(chǔ)架構(gòu)即代碼(IaC)工具,可以為管理員建立單一的工作流程,以便跨任何云提供商對基礎(chǔ)架構(gòu)進行可預(yù)測、可重現(xiàn)的更改。除了簡化管理虛擬機和依賴項外,它還簡化了跨多家提供商部署服務(wù)的工作。Terraform是一種IaC工具,它還使團隊能夠共享、重用、部署和回滾基礎(chǔ)架構(gòu)更改,就像它們使用代碼版本一樣。

開始入手

不妨看一下一個基本的Terraform配置文件,它同時配置AWS EC2實例和Google App Engine應(yīng)用程序。

  1. provider "aws" { 
  2.   access_key = "ACCESS_KEY_HERE" 
  3.   secret_key = "SECRET_KEY_HERE" 
  4.   region     = "us-east-1" 
  5.   
  6. provider "google" { 
  7.   credentials = "${file("account.json")}" 
  8.   project     = "my-project-id" 
  9.   region      = "us-central1" 
  10.   
  11. resource "aws_instance" "example" { 
  12.   ami           = "ami-123456789" 
  13.   instance_type = "t2.micro" 
  14.   
  15. resource "google_project" "my_project" { 
  16.   name       = "My Project" 
  17.   project_id = "your-project-id" 
  18.   org_id     = "1234567" 
  19.   
  20. resource "google_app_engine_application" "app" { 
  21.   project     = "${google_project.my_project.project_id}" 
  22.   location_id = "us-central' 

上述配置定義了兩個提供者(provider)和三個資源。在Terraform中,提供者是指與某種API交互的服務(wù),本例中是AWS和谷歌云平臺(GCP)。雖然提供者指令最直觀的用途是用來配置一個或多個云平臺,但也有其他許多資源可供使用,比如數(shù)據(jù)庫驅(qū)動程序、網(wǎng)絡(luò)平臺和版本控制系統(tǒng)。

你在定義提供者后,可以為該提供者聲明資源。在上述例子中,有三個已定義的資源:AWS EC2實例、GCP項目和Google App Engine應(yīng)用程序。資源是某個云提供的任何工具或服務(wù),比如存儲、數(shù)據(jù)庫或計算。然而,資源也可以定義本地文件,甚至定義隨機數(shù)據(jù)生成器。

適應(yīng)變化

使用Terraform時要采取一切預(yù)防措施,以避免任何意外的成本。

除了能夠使用定義明確的配置文件配置應(yīng)用程序基礎(chǔ)架構(gòu)外,Terraform還可以適應(yīng)不斷變化的需求。這項獨特功能使管理員能夠?qū)ε渲梦募M行更改,不用成倍增加工作或基礎(chǔ)架構(gòu)。比如說,假設(shè)我們的上述配置文件更改為以下內(nèi)容:

  1. provider "aws" { 
  2.   access_key = "ACCESS_KEY_HERE" 
  3.   secret_key = "SECRET_KEY_HERE" 
  4.   region     = "us-east-1" 
  5.   
  6. resource "aws_instance" "example" { 
  7.   ami           = "ami-123456789" 
  8.   instance_type = "t2.micro" 

添加和刪除資源時,Terraform會識別這些更改并相應(yīng)地更新你的基礎(chǔ)架構(gòu)。由于Terraform保留任何應(yīng)用的配置文件的先前狀態(tài),因此它知道刪除先前配置的GCP資源,又不嘗試重新配置AWS資源。這在更改可能隨時變化的版本控制環(huán)境中尤其有用。

面臨的挑戰(zhàn)

Terraform***的好處之一也帶來了***的風(fēng)險:由于它很容易使用,如果不仔細考慮,用戶可能會面臨巨大成本。只要使用一個命令,用戶就可以將任何配置文件應(yīng)用于已配置的提供者,這可能導(dǎo)致眾多資源部署到任意數(shù)量的云提供者。雖然Terraform通過計劃讀出和確認機制有助于防范這種情況,但事故可能會發(fā)生。使用Terraform時要采取一切預(yù)防措施,以避免任何意外的成本。

此外,Terraform可以適應(yīng)針對任何已配置環(huán)境作出的更改,因為它可以存儲已配置基礎(chǔ)架構(gòu)的狀態(tài)。雖然這為創(chuàng)建、修改和刪除基礎(chǔ)架構(gòu)提供了一種快速的機制,但該工具并不在每次運行時都檢查云資源,這意味著你從多臺計算機更改基礎(chǔ)架構(gòu)時難免增添共享狀態(tài)的開銷。

原文標題:Learn how to use Terraform for multi-cloud management,作者:Zachary Flower

【51CTO譯稿,合作站點轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】

責(zé)任編輯:未麗燕 來源: 51CTO.com
相關(guān)推薦

2023-03-01 13:52:00

TerraformOpenStack運維

2020-12-28 10:43:49

KMaaS多云密鑰管理

2019-08-15 10:20:19

云計算技術(shù)安全

2019-03-22 14:20:26

管理多云云計算

2022-07-17 15:53:09

云計算多云云管理

2022-07-18 10:48:24

多云云計算

2022-09-15 18:10:52

混合云開源云計算

2019-03-29 15:38:33

2023-02-21 08:01:20

AWSTerraform管理

2020-02-06 09:37:18

云計算工具技術(shù)

2019-02-11 10:00:23

云網(wǎng)絡(luò)云平臺微服務(wù)

2020-07-27 10:39:18

多云云計算云計算提供商

2020-02-27 17:12:44

戴爾

2022-09-14 11:15:33

多云混合云云數(shù)據(jù)庫

2017-01-21 10:31:01

云計算迪斯尼

2020-10-26 07:40:17

Terraform

2023-03-03 08:10:15

TerraformAzure虛擬機

2018-03-01 16:25:52

Linux內(nèi)核內(nèi)存管理

2019-12-12 11:47:29

多云云平臺云計算

2021-02-20 10:02:11

多云架構(gòu)云平臺云架構(gòu)
點贊
收藏

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