久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合

站長(zhǎng)資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

Terraform:創(chuàng)建 Azure 虛機(jī)

在前文《Terraform安裝及簡(jiǎn)單介紹》中簡(jiǎn)單介紹了 Terraform 相關(guān)的概念,本文讓我們使用 Terraform 在 Azure 上創(chuàng)建一個(gè)虛機(jī),以此來(lái)直觀體驗(yàn)一下 Terraform 強(qiáng)大威力。說(shuō)明:本文的演示環(huán)境為 Ubuntu 16.04。

provider 與 resource

在 Terraform 的配置文件中,比較常見(jiàn)的配置類型有 provider 和 resource。

provider 在 Terraform 中負(fù)責(zé)管理資源的生命周期:創(chuàng)建、讀取、更新、刪除。比如訪問(wèn) AWS 中的資源需要使用 AWS 的 provider,訪問(wèn) Azure 中的資源需要使用 Azure 的 provider。

resource 是基礎(chǔ)設(shè)施的一個(gè)組件。它可能是一些低級(jí)組件,例如物理服務(wù)器、虛擬機(jī)或容器。也可以是更高級(jí)別的組件,如電子郵件提供程序、DNS記錄或數(shù)據(jù)庫(kù)提供程序。

指定 provider

provider "azurerm" {  }

訪問(wèn) Azure 中的資源需要使用 Azure 的 provider,即這里的 “azurerm”。這里沒(méi)有把訪問(wèn) azure 的認(rèn)證信息寫(xiě)進(jìn)來(lái),還是以前文《Terraform安裝及簡(jiǎn)單介紹》中設(shè)置環(huán)境變量的方式來(lái)提供認(rèn)證信息。

創(chuàng)建 Resource Group

下面的配置文件在 eastasia 的數(shù)據(jù)中心創(chuàng)建名稱為 NickResourceGroup 的 Resource Group:

resource "azurerm_resource_group" "nicktfrg" {      name = "NickResourceGroup"      location = "eastasia"      tags {          environment = "My Terraform Demo"      }     }

在配置文件的其他部分中,可以使用 ${azurerm_resource_group.nicktfrg.name} 引用該 Resource Group。

創(chuàng)建虛擬網(wǎng)絡(luò)

下面的配置在 Resource Group NickResourceGroup 中創(chuàng)建名為 NickVnet 的虛擬網(wǎng)絡(luò),其網(wǎng)絡(luò)空間為 10.0.0.0/16:

resource "azurerm_virtual_network" "nicktfnetwork" {      name                = "NickVnet"      address_space       = ["10.0.0.0/16"]      location            = "eastasia"      resource_group_name = "${azurerm_resource_group.nicktfrg.name}"        tags {          environment = "My Terraform Demo"      }  }

然后在 NickVnet 虛擬網(wǎng)絡(luò)中創(chuàng)建名稱為 NickSubnet 的子網(wǎng):

resource "azurerm_subnet" "nicktfsubnet" {      name                 = "NickSubnet"      resource_group_name  = "${azurerm_resource_group.nicktfrg.name}"      virtual_network_name = "${azurerm_virtual_network.nicktfnetwork.name}"      address_prefix       = "10.0.2.0/24"  }

創(chuàng)建公共 IP 地址

如果要通過(guò)網(wǎng)絡(luò)訪問(wèn) Azure 云端的虛機(jī),需要?jiǎng)?chuàng)建公共的 IP 地址并分配給虛機(jī)。下面的配置創(chuàng)建名為 nickPublicIP 的公共 IP 地址:

resource "azurerm_public_ip" "nicktfpublicip" {      name                         = "NickPublicIP"      location                     = "eastasia"      resource_group_name          = "${azurerm_resource_group.nicktfrg.name}"      public_ip_address_allocation = "dynamic"        tags {          environment = "My Terraform Demo"      }  }

創(chuàng)建網(wǎng)絡(luò)安全組

網(wǎng)絡(luò)安全組控制出入虛機(jī)的網(wǎng)絡(luò)流量。 下面的配置創(chuàng)建名為 NickNetworkSecurityGroup 的網(wǎng)絡(luò)安全組并定義規(guī)則放行 TCP 端口 22 上的 SSH 數(shù)據(jù)包:

resource "azurerm_network_security_group" "nicktfnsg" {      name                = "NickNetworkSecurityGroup"      location            = "eastasia"      resource_group_name = "${azurerm_resource_group.nicktfrg.name}"        security_rule {          name                       = "SSH"          priority                   = 1001          direction                  = "Inbound"          access                     = "Allow"          protocol                   = "Tcp"          source_port_range          = "*"          destination_port_range     = "22"          source_address_prefix      = "*"          destination_address_prefix = "*"      }        tags {          environment = "My Terraform Demo"      }  }

創(chuàng)建虛擬網(wǎng)卡

虛擬網(wǎng)卡(NIC)將虛機(jī)連接到指定的虛擬網(wǎng)絡(luò)、公共 IP 地址和網(wǎng)絡(luò)安全組。下面的 Terraform 配置信息創(chuàng)建名為 NickNIC 的虛擬 NIC,并連接到已創(chuàng)建的虛擬網(wǎng)絡(luò)資源:

resource "azurerm_network_interface" "nicktfnic" {      name                = "NickNIC"      location            = "eastasia"      resource_group_name = "${azurerm_resource_group.nicktfrg.name}"      network_security_group_id = "${azurerm_network_security_group.nicktfnsg.id}"        ip_configuration {          name                          = "NickNicConfiguration"          subnet_id                     = "${azurerm_subnet.nicktfsubnet.id}"          private_ip_address_allocation = "dynamic"          public_ip_address_id          = "${azurerm_public_ip.nicktfpublicip.id}"      }        tags {          environment = "My Terraform Demo"      }  }

創(chuàng)建存儲(chǔ)賬戶

若要為新建的虛機(jī)存儲(chǔ)啟動(dòng)診斷日志,需要一個(gè)存儲(chǔ)帳戶。這些啟動(dòng)診斷日志有助于排查故障和監(jiān)視虛機(jī)狀態(tài)。這里創(chuàng)建的存儲(chǔ)帳戶僅用于存儲(chǔ)啟動(dòng)診斷數(shù)據(jù)。由于每個(gè)存儲(chǔ)帳戶必須具有唯一名稱,下面的配置會(huì)先生成一些隨機(jī)文本:

resource "random_id" "randomId" {      keepers = {          # Generate a new ID only when a new resource group is defined          resource_group = "${azurerm_resource_group.nicktfrg.name}"      }        byte_length = 8  }

接下來(lái)就可以創(chuàng)建存儲(chǔ)帳戶了。 下面的配置會(huì)創(chuàng)建一個(gè)存儲(chǔ)帳戶,其名稱基于上一步中生成的隨機(jī)文本:

resource "azurerm_storage_account" "nicktfstorageaccount" {      name                = "nicksa${random_id.randomId.hex}"      resource_group_name = "${azurerm_resource_group.nicktfrg.name}"      location            = "eastasia"      account_replication_type = "LRS"      account_tier = "Standard"        tags {          environment = "My Terraform Demo"      }  }

創(chuàng)建虛機(jī)

準(zhǔn)備好上面的資源后就可以開(kāi)始創(chuàng)建虛機(jī)了,下面的配置創(chuàng)建名為 NickVM 的虛機(jī),并添加虛擬網(wǎng)卡 NickNIC。 新的虛機(jī)基于 Ubuntu 16.04 LTS 映像并禁止通過(guò)密碼登錄,同時(shí)會(huì)創(chuàng)建一個(gè)可以通過(guò)秘鑰登錄的名稱為 nick 的用戶。注意,ssh_keys 部分提供了 SSH 密鑰數(shù)據(jù),key_data 字段需要提供用戶的有效 SSH 公鑰:

resource "azurerm_virtual_machine" "nicktfvm" {      name                  = "NickVM"      location              = "eastasia"      resource_group_name   = "${azurerm_resource_group.nicktfrg.name}"      network_interface_ids = ["${azurerm_network_interface.nicktfnic.id}"]      vm_size               = "Standard_DS1_v2"        storage_os_disk {          name              = "NickOsDisk"          caching           = "ReadWrite"          create_option     = "FromImage"          managed_disk_type = "Premium_LRS"      }        storage_image_reference {          publisher = "Canonical"          offer     = "UbuntuServer"          sku       = "16.04.0-LTS"          version   = "latest"      }        os_profile {          computer_name  = "phoenix"          admin_username = "nick"      }        os_profile_linux_config {          disable_password_authentication = true          ssh_keys {              path     = "/home/nick/.ssh/authorized_keys"              key_data = "xxxxxxxxxxxxxxxxxx"          }      }        boot_diagnostics {          enabled     = "true"          storage_uri = "${azurerm_storage_account.nicktfstorageaccount.primary_blob_endpoint}"      }        tags {          environment = "My Terraform Demo"      }  }

到這里配置文件就完成了,完整的配置文件內(nèi)容請(qǐng)參考這里。

執(zhí)行部署

創(chuàng)建 Terraform 配置文件(也被稱為模板)后,第一步是初始化 Terraform。這一步會(huì)安裝 配置文件中用到的所有 Terraform 插件:

$ terraform init

然后執(zhí)行 plan 驗(yàn)證配置文件的正確性(關(guān)于登錄 Azure 的認(rèn)證信息,請(qǐng)參考前文《Terraform 簡(jiǎn)介》):

$ . azureEnv.sh    $ terraform plan

檢查 plan 的輸出,如果符合預(yù)期,就可以通過(guò) apply 執(zhí)行實(shí)際的部署了:

$ terraform apply -auto-approve

檢查結(jié)果

從 portal 上登錄 Azure 查看我們創(chuàng)建的 Resouce Group NickResourceGroup,其中的資源包括虛擬機(jī) NickVM 及其相關(guān)的網(wǎng)卡、Public IP 地址、虛擬網(wǎng)絡(luò)、網(wǎng)絡(luò)安全組、存儲(chǔ)等組件:

Terraform:創(chuàng)建 Azure 虛機(jī)

獲取虛機(jī)的公共 IP 地址
在 portal 上的 Cloud Shell 中執(zhí)行下面的命令獲得新建虛機(jī)的 IP 地址:

$ az vm show --resource-group NickResourceGroup --name NickVM -d --query [publicIps] --o tsv

或者是直接在 portal 上查看虛機(jī)的信息:

Terraform:創(chuàng)建 Azure 虛機(jī)

通過(guò) SSH 登錄虛機(jī)

$ ssh nick@13.70.0.72

Terraform:創(chuàng)建 Azure 虛機(jī)

這就可以開(kāi)始工作了(當(dāng)然對(duì)于一個(gè)系統(tǒng)管理員來(lái)說(shuō),所謂的工作就常常是指以自動(dòng)化的方式在虛機(jī)上部署各種應(yīng)用)!

總結(jié)

不管是通過(guò) PowerShell 還是 Azure CLI,或者是本文介紹的 Terraform(當(dāng)然,Terraform 強(qiáng)大的功能讓它具有非常大的優(yōu)勢(shì)),我們操作的資源對(duì)象都是一樣的。當(dāng)你手中有多個(gè)工具時(shí),你就可以根據(jù)具體的場(chǎng)景選擇最佳的方式完成任務(wù)。

 

贊(0)
分享到: 更多 (0)
?
網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)
久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合
毛片在线网站| 亚洲综合婷婷| 欧美日韩中文| 国产精品7m凸凹视频分类| 久久天堂av| 欧美亚洲在线日韩| 国产一区亚洲| 一区久久精品| 噜噜噜躁狠狠躁狠狠精品视频 | 亚洲精品无吗| 亚洲1区在线| 青青草国产成人99久久| 欧美日韩亚洲国产精品| 久久激五月天综合精品| 日韩综合一区二区| 日韩和欧美一区二区三区| 日韩精品亚洲专区| 日韩激情网站| 麻豆国产一区| 欧美日韩在线观看首页| 91精品啪在线观看国产18| 91九色精品| 最新日韩av| 一区二区91| 国产精品一国产精品| 国产一区三区在线播放| 亚洲性图久久| 亚洲精品美女| 久久亚洲黄色| 日韩精品电影| 国产手机视频一区二区 | 亚洲va在线| 久久视频精品| 亚洲第一精品影视| 亚洲国内欧美| 亚洲精一区二区三区| 国产精品乱战久久久| 精品福利久久久| 蜜臀av免费一区二区三区| 中文字幕日本一区| 麻豆精品久久| 欧美女激情福利| 国产精品调教视频| 日韩成人精品一区二区| 国产欧美日韩一级| 亚洲精品日本| 国产精品亚洲成在人线| 日韩成人高清| 亚洲精品系列| 91综合网人人| 天堂成人国产精品一区| 久久99久久久精品欧美| 欧美国产91| 国产欧美日韩在线观看视频| 欧美日韩免费看片| 亚洲免费毛片| 色黄视频在线观看| 亚洲深深色噜噜狠狠爱网站| 四虎在线精品| 中文字幕在线视频网站| 婷婷久久免费视频| 日韩一区自拍| 欧美在线看片| 欧美综合社区国产| 久久亚洲成人| 国产精品久av福利在线观看| 在线视频观看日韩| 国产精品大片免费观看| 欧美天堂亚洲电影院在线观看| 国产精品伊人| 亚洲欧美日韩专区| 黑森林国产精品av| 日韩黄色在线观看| 午夜精品成人av| 欧美亚洲一区二区三区| 午夜久久黄色| 欧美国产美女| 欧美日韩中文| 免费在线成人网| 欧美天堂视频| 国产精品分类| 视频一区二区三区中文字幕| 电影91久久久| 久久精品99久久久| 99riav1国产精品视频| 精品成av人一区二区三区| 亚州av日韩av| 国产精品日本| a天堂资源在线| 国产欧美在线| 在线国产精品一区| japanese国产精品| 成人黄色av| 国产精品videossex| 亚洲欧美一级| 91精品福利| 精品国产乱码久久久久久1区2匹| 日韩av在线播放中文字幕| 亚洲视频播放| 激情欧美一区| 日韩在线不卡| 国产+成+人+亚洲欧洲在线| 成午夜精品一区二区三区软件| 亚洲欧洲一区二区天堂久久| 精品一区二区三区中文字幕| 欧美日韩xxxx| 日韩精品一区二区三区中文在线| 久久国产精品99国产| 精品一区毛片| 日韩毛片视频| 国产99在线| 色欧美自拍视频| 国产精品久久久久久久免费观看| 美女久久久久久 | 欧美一级全黄| 亚洲另类黄色| 在线观看一区| 蜜臀av性久久久久蜜臀aⅴ四虎| 欧美福利一区| 激情综合自拍| 欧美日韩日本国产亚洲在线 | 午夜久久免费观看| 今天的高清视频免费播放成人| 久久婷婷久久| 欧美亚洲在线日韩| 999国产精品视频| www.51av欧美视频| а√天堂8资源中文在线| 成人在线丰满少妇av| 国产91在线精品| 欧美日韩免费看片| 亚洲a一区二区三区| 五月婷婷亚洲| 麻豆9191精品国产| 一级成人国产| 日本欧美在线| 国产精品久久久久久久久久齐齐| 欧美激情视频一区二区三区在线播放| 久久99久久人婷婷精品综合| 精品伊人久久久| 亚洲欧洲高清| 中文在线资源| 亚洲一级黄色| 亲子伦视频一区二区三区| 欧美日韩国产传媒| 国产视频一区三区| 亚洲天堂av资源在线观看| 日韩成人在线看| 国产精品久一| 蜜桃精品在线| 99国产精品| 日本成人一区二区| 免费日韩成人| 国产aⅴ精品一区二区四区| 群体交乱之放荡娇妻一区二区| 欧美~级网站不卡| 亚洲女同中文字幕| 日韩在线观看一区二区三区| 国产精品亚洲欧美一级在线| 麻豆精品一区二区综合av| 国产96在线亚洲| 欧美美女一区| 日韩av电影一区| 久久69成人| 好看不卡的中文字幕| 中文字幕av亚洲精品一部二部| 欧美综合精品| 美女一区网站| 国产91在线精品| 亚洲精品在线观看91| 三级久久三级久久久| 国产乱人伦精品一区| аⅴ资源天堂资源库在线| 影院欧美亚洲| 国产精品一站二站| 欧美影院三区| 欧美日韩一区二区三区四区在线观看| 精品国产亚洲日本| 欧美日韩国产探花| 国产精品主播| 欧美日中文字幕| 97精品久久| 亚洲天堂一区二区| 婷婷综合福利| 日韩久久视频| 日本成人在线网站| 国产+成+人+亚洲欧洲在线| 亚州av乱码久久精品蜜桃| 国产日韩1区| 九一国产精品| 蜜桃精品视频| 日韩一区精品字幕| 97精品中文字幕| 亚洲免费一区三区| 欧美成人基地| 国产精品超碰| 亚洲欧美日本国产专区一区| 麻豆高清免费国产一区| 野花国产精品入口| 精品亚洲免a|