ARM (Azure Resource Manager) template được sử dụng để triển khai một dịch vụ Azure API Management (APIM). ARM template là cách cấu hình hạ tầng dưới dạng code (Infrastructure as Code), giúp tự động hóa việc triển khai tài nguyên trên Azure.
Có 2 cách để tạo file templat
- Từ trang APIM, chọn sidebar -> automation -> Export template
- Tự tạo file template
Tự tạo file Template
File template.json mẫu:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.5.6.12127",
"templateHash": "6751554658084889632"
}
},
"parameters": {
"apiManagementServiceName": {
"type": "string",
"defaultValue": "[format('apiservice{0}', uniqueString(resourceGroup().id))]",
"metadata": {
"description": "The name of the API Management service instance"
}
},
"publisherEmail": {
"type": "string",
"minLength": 1,
"metadata": {
"description": "The email address of the owner of the service"
}
},
"publisherName": {
"type": "string",
"minLength": 1,
"metadata": {
"description": "The name of the owner of the service"
}
},
"sku": {
"type": "string",
"defaultValue": "Consumption",
"allowedValues": [
"Consumption"
],
"metadata": {
"description": "The pricing tier of this API Management service"
}
},
"skuCount": {
"type": "int",
"defaultValue": 1,
"allowedValues": [
1,
2
],
"metadata": {
"description": "The instance size of this API Management service."
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for all resources."
}
}
},
"resources": [
{
"type": "Microsoft.ApiManagement/service",
"apiVersion": "2021-08-01",
"name": "[parameters('apiManagementServiceName')]",
"location": "[parameters('location')]",
"sku": {
"name": "[parameters('sku')]",
"capacity": "[if(equals(parameters('sku'), 'Consumption'), 0, parameters('skuCount'))]"
},
"properties": {
"publisherEmail": "[parameters('publisherEmail')]",
"publisherName": "[parameters('publisherName')]"
}
}
]
}
Dưới đây là quickstart nếu bạn muốn sử dụng Bash. Mở Bash Shell trên Azure, chọn Upload file, chọn file template.json. Sau khi upload thành công, gõ lệnh như sau:
az deployment group create --resource-group <resource-group-name> --template-file <template.json> --parameters apiManagementServiceName=<apim-instance-name> publisherName=<publisher-name> publisherEmail=<publisher-email> location=<location> sku=<sku-name>
Bạn thay thế các parameters:
<deployment-name> : APIM
<resource-group-name> : the assigned resource group name.
<template.json> : the template file name you downloaded.
<apim-instance-name> : NhatkyhoctapApim
<publisher-name> : any Name
<publisher-email> : any email address
<location> : eastus
<sku-name> : Consumption
Giả sử bạn thay thế như sau:
az deployment group create --resource-group nhatkyhoctap_168227_1_173419723990 --template-file template.json --parameters apiManagementServiceName=NhatkyhoctapApim publisherName=TestUser publisherEmail=test_test@gmail.com location=eastus sku=Consumption
Nếu template ARM được deploy thành công, bạn sẽ nhận được json trả về chứa chuỗi "provisioningState": "Succeeded":
"provisioningState": "Succeeded",
"templateHash": "6045557826491448882",
"templateLink": null,
"timestamp": "2024-12-14T17:35:54.007244+00:00",
"validatedResources": null
Nhận xét
Đăng nhận xét