ここでは、Terraformを使って構成を管理する際に、Azure API ManagementのバックエンドにAzure Functionsを設定する方法についてご紹介します。
Azure API Managementのバックエンドを作成する場合、”azurerm_api_management”と”azurerm_api_management_backend”の2つの項目を作成します。特に”azurerm_api_management_backend”で定義する必要があるresource_idは、単にAzure FunctionsのIDを指定するだけでは、エラーが発生します。
Terraformのマニュアルなどにはresource_idはURIとしか書かれていませんが、”https~”で始まる必要があり、Azure FunctionsのIDは”/subscriptions/~”から始まるため、エラーとなります。
これを解決する方法として、このAzure Function IDの前に”https://management.azure.com“をつけます。サンプルはこちらになります。
参考サイト
- Terraform: azurerm_api_management
- Terraform: azurerm_api_management_backend
- Azure APIM Management Backend Configuration Issue