[Azure] 101-front-door-create-basic テンプレート読み解き
はじめに
Azure QuickStart Templates を読み込んで勉強しよう!
ということで、アウトプットもしてみます。第3弾です。
今回の読み解き対象
テンプレートの概要
こちらのテンプレートをデプロイすると、指定した URL をバックエンドに持つ Azure Front Door がデプロイされます。
こちらの公式チュートリアルのものです。一緒に Azure Front Door を勉強しよう、と。
読み解く
よくあるテンプレートのパターンは
- パラメータ指定 (parameters)
 - 変数の設定 (variables)
 - デプロイするリソースの記述 (resources)
 
ですが、今回はシンプルということもあり、2. の「変数の設定 (variables)」はありません。
パラメータ指定 (parameters)
前半の "parameters": から始まる部分では、テンプレート内で使われるパラメータ (変数) の設定です。テンプレートのデプロイ時に選択肢として表示させたりすることができます。ここでは、インスタンス名とバックエンドの URL を指定させるようになっています。
  "parameters": {
    "frontDoorName": {
      "type": "string",
      "metadata": {
        "description": "The name of the frontdoor resource."
      }
    },
    "backendAddress": {
      "type": "string",
      "metadata": {
        "description": "The hostname of the backend. Must be an IP address or FQDN."
      }
    }
  },
    ...
デプロイするリソースの記述 (resources)
"resources": セクションで、デプロイするリソースを記述しています。
Front Door の定義の枠はひとつですね。Microsoft.Network/frontDoors にて作成。
  "resources": [
    {
      "type": "Microsoft.Network/frontDoors",
      "apiVersion": "2020-07-01",
      "name": "[parameters('frontDoorName')]",
      "location": "global",
      "properties": {
        "routingRules": [
          {
            "name": "routingRule1",
    ...
その中で、routingRules、healthProbeSettings、loadBalancingSettings、backendPools、frontendEndpoints といった Front Door に関わる設定を記述し、先ほどの Microsoft.Network/frontDoors のメンバとして記述する感じですね。
参考 : Microsoft.Network frontDoors template reference
最後に
Azure QuickStart Templates は、Azure を勉強するにあたっては結構宝の山だとも思うので、今後も面白そうなものを読み解いてはアウトプットしていきたいな、と思います。
とりあえず3回目達成。まずは10回を目標に!
Discussion