iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 22
1
Microsoft Azure

企業如何用好用滿Azure系列 第 22

Day22:Azure小白如何建立Azure Resource Manager範本進行大量佈署

  • 分享至 

  • xImage
  •  

在昨天我們談完Azure小白如何使用 VPN Gateway打通內網到Azure公有雲

今天我們來聊聊Azure Resource Manager templates如何運用在你日常工作

建置佈署/調整自動化

Azure Resource Manager Template

Resource Manager template會精確地定義部署中的所有Resource Manager

資源,我們可以透過單一作業將resourec maanger template部署到resource

Group中,Resource Manager template是一個 JSON 檔案,使其成為宣告式

自動化的一種形式,宣告式自動化意指您可以定義您需要什麼資源,但無法

定義如何建立這些資源,Resource Manager Template又稱為Azure Resource

Manager Template

https://ithelp.ithome.com.tw/upload/images/20201007/201121821ndgOEQZKr.jpg

為什麼要使用 Resource Manager Template?

使用 Resource Manager Template可讓你的部署更快且可重複性更高。

例如,你不再需要在Azure Portal中建立 VM,等待 VM 完成,然後建立

下一個 VM,Resource Manager會負責整個部署,以下是應考量的其他

優點:

1.範本可提升一致性

Resource Manager Template可提供常用的語言,供你和其他人描述部署之

用,無論是使用工具還是 SDK 部署範本,範本內的結構、格式和運算式都

保持不變。

2.範本有助於表達複雜的部署

範本可讓你依正確順序部署多個資源,例如你不想要先部署虛擬機器,然後

再建立 OS 磁碟或網路介面,Resource Manager會對應每個資源及其相依的

資源,然後先建立相依的資源,相依性對應有助於確保以正確的順序執行

部署。

3.範本可減少手動、容易出錯的工作

手動建立和連線資源可能會很費時,而且過程中很容易犯錯,Resource

Manager可確保每次都以相同的方式進行部署。

4.範本是程式碼

範本可透過程式碼表達你的需求,將範本視為一種可以共用、測試及建立

版本的基礎結構即程式碼。

5.範本促進重複使用

你的範本可以包含範本執行時要填入的參數。 參數可以定義使用者名稱或

密碼、網域名稱等等,範本參數可讓你建立多個版本的基礎結構 (例如Test

和Production),但仍然使用完全相同的範本。

6.範本是可連結的

Resource Manager Template可以連結在一起,使範本變成模組化,你可以撰寫

小型範本,每個範本都定義一個解決方案片段,結合起來就可以建立完整的

系統。

Resource Manager Template的內容

JSON 也是一個描述應用程式和基礎結構設定方式常用的方式,JSON 可讓我們

以文字表達儲存為物件的資料 (例如虛擬機器)。

JSON 文件基本上是索引鍵值組的集合。 每個索引鍵都是一個字串;其值可以

是字串、數字、布林運算式,值的清單或物件 (也就是其他索引鍵值組的集合)

以下為簡單的JSON範例:

"resources": [
{
  "type": "Microsoft.Network/publicIPAddresses",
  "name": "[variables('publicIPAddressName')]",
  "location": "[parameters('location')]",
  "apiVersion": "2018-08-01",
  "properties": {
    "publicIPAllocationMethod": "Dynamic",
    "dnsSettings": {
      "domainNameLabel": "[parameters('dnsLabelPrefix')]"
    }
  }
}
],

如何撰寫 Resource Manager Template?

撰寫 Resource Manager Template有許多種方法,但是通常會從現有的

範本開始,然後再加以修改以符合您的需求,以下是可以取得範本的幾個

方式

1.使用Azure Management Portal,根據現有Resource Group建立Template

2.從你或你的Team針對類似用途所建置的範本著手。

3.從Azure Quickstart template開始

Azure Template Reference點這裡

什麼是 Azure Quickstart templates?

Azure Quickstart templates是由Azure community所提供的 Resource

Manager Template,Quickstart templates可在GitHub上取得。

許多範本都會提供你部署解決方案所需的一切,有些範本則可能會當作你

範本的起點,無論如何你都可以研究這些範本以了解如何妥善編寫和建構

你自己的範本。

搜尋Azure Quickstart Template點這裡

https://ithelp.ithome.com.tw/upload/images/20201007/2011218225y5kHfn2G.jpg

在Azure QuickStart Template選擇一個範本點選Deploy Azure即可使用

https://ithelp.ithome.com.tw/upload/images/20201007/20112182CG6K2dgtKY.jpg

點選Browse on GitHub即可看到GitHub上Template的原始程式碼

https://ithelp.ithome.com.tw/upload/images/20201007/20112182m3ZlhxXvg4.jpg

點選Visualize即可看到下圖

https://ithelp.ithome.com.tw/upload/images/20201007/20112182BEDdv1WOWj.jpg

https://ithelp.ithome.com.tw/upload/images/20201007/20112182uv8mHShW7F.jpg

手把手使用Azure QuickStart Template部署VM步驟:

https://docs.microsoft.com/zh-tw/learn/modules/build-azure-vm-templates/4-deploy-a-vm-quickstart-template?pivots=linux-cloud

手把手將Resource新增至Template步驟:

https://docs.microsoft.com/zh-tw/learn/modules/build-azure-vm-templates/5-add-a-resource?pivots=linux-cloud

手把手擴充QuickStart Template以部署基本Web步驟:

https://docs.microsoft.com/zh-tw/learn/modules/build-azure-vm-templates/6-extend-the-quickstart-template?pivots=linux-cloud

Day22教學講義:

https://docs.microsoft.com/zh-tw/learn/modules/build-azure-vm-templates/


上一篇
Day21:Azure小白如何使用 VPN Gateway打通內網到Azure公有雲
下一篇
Day23:Azure小白如何使用 Azure Event Hub進行應用程式及時傳訊
系列文
企業如何用好用滿Azure30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言