Rychlý start: Vytvoření úložiště konfigurace Aplikace Azure pomocí šablony ARM
Tento rychlý start popisuje, jak:
- Nasazení app Configuration Storu pomocí šablony Azure Resource Manageru (šablona ARM)
- Pomocí šablony ARM můžete vytvořit hodnoty klíčů v obchodě App Configuration Store.
- Čtení hodnot klíčů v úložišti App Configuration z šablony ARM
Tip
Příznaky funkcí a odkazy služby Key Vault jsou speciální typy hodnot klíčů. Příklady jejich vytvoření pomocí šablony ARM najdete v dalších krocích .
Šablona Azure Resource Manageru je soubor JSON (JavaScript Object Notation), který definuje infrastrukturu a konfiguraci projektu. Tato šablona používá deklarativní syntaxi. Popíšete zamýšlené nasazení, aniž byste museli psát posloupnost programovacích příkazů pro vytvoření nasazení.
Pokud vaše prostředí splňuje požadavky a jste obeznámeni s používáním šablon ARM, vyberte tlačítko Nasazení do Azure. Šablona se otevře v prostředí Azure Portal.
Požadavky
Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.
Autorizace
Správa prostředku konfigurace Aplikace Azure uvnitř šablony ARM vyžaduje roli Azure Resource Manageru, například přispěvatele nebo vlastníka. Přístup ke konfiguračním datům Aplikace Azure (hodnoty klíčů, snímky) vyžaduje roli Azure Resource Manageru a Aplikace Azure roli roviny konfiguračních dat v režimu předávacího ověřování ARM.
Důležité
Konfigurace režimu ověřování ARM vyžaduje verzi 2023-08-01-preview
rozhraní API řídicí roviny konfigurace aplikace nebo novější.
Kontrola šablony
Šablona použitá v tomto rychlém startu je jednou z šablon pro rychlý start Azure. Vytvoří nové úložiště App Configuration se dvěma hodnotami klíčů uvnitř. Potom použije reference
funkci k výstupu hodnot dvou prostředků klíč-hodnota. Čtení hodnoty klíče tímto způsobem umožňuje použití na jiných místech v šabloně.
Rychlý start používá element copy
k vytvoření více instancí prostředku klíč-hodnota. Další informace o elementu copy
najdete v tématu Iterace prostředků v šablonách ARM.
Důležité
Tato šablona vyžaduje verzi 2022-05-01
rozhraní API řídicí roviny konfigurace aplikace nebo novější. Tato verze používá reference
funkci ke čtení hodnot klíče. Funkce listKeyValue
, která byla použita ke čtení hodnot klíčů v předchozí verzi, není k dispozici od verze 2020-07-01-preview
.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.30.23.60470",
"templateHash": "539800420350662594"
}
},
"parameters": {
"configStoreName": {
"type": "string",
"defaultValue": "[format('appconfig{0}', uniqueString(resourceGroup().id))]",
"metadata": {
"description": "Specifies the name of the App Configuration store."
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Specifies the Azure location where the app configuration store should be created."
}
},
"keyValueNames": {
"type": "array",
"defaultValue": [
"myKey",
"myKey$myLabel"
],
"metadata": {
"description": "Specifies the names of the key-value resources. The name is a combination of key and label with $ as delimiter. The label is optional."
}
},
"keyValueValues": {
"type": "array",
"defaultValue": [
"Key-value without label",
"Key-value with label"
],
"metadata": {
"description": "Specifies the values of the key-value resources. It's optional"
}
},
"contentType": {
"type": "string",
"defaultValue": "the-content-type",
"metadata": {
"description": "Specifies the content type of the key-value resources. For feature flag, the value should be application/vnd.microsoft.appconfig.ff+json;charset=utf-8. For Key Value reference, the value should be application/vnd.microsoft.appconfig.keyvaultref+json;charset=utf-8. Otherwise, it's optional."
}
},
"tags": {
"type": "object",
"defaultValue": {
"tag1": "tag-value-1",
"tag2": "tag-value-2"
},
"metadata": {
"description": "Adds tags for the key-value resources. It's optional"
}
}
},
"resources": [
{
"type": "Microsoft.AppConfiguration/configurationStores",
"apiVersion": "2024-05-01",
"name": "[parameters('configStoreName')]",
"location": "[parameters('location')]",
"sku": {
"name": "standard"
}
},
{
"copy": {
"name": "configStoreKeyValue",
"count": "[length(parameters('keyValueNames'))]"
},
"type": "Microsoft.AppConfiguration/configurationStores/keyValues",
"apiVersion": "2024-05-01",
"name": "[format('{0}/{1}', parameters('configStoreName'), parameters('keyValueNames')[copyIndex()])]",
"properties": {
"value": "[parameters('keyValueValues')[copyIndex()]]",
"contentType": "[parameters('contentType')]",
"tags": "[parameters('tags')]"
},
"dependsOn": [
"[resourceId('Microsoft.AppConfiguration/configurationStores', parameters('configStoreName'))]"
]
}
],
"outputs": {
"reference_key_value_value": {
"type": "string",
"value": "[reference(resourceId('Microsoft.AppConfiguration/configurationStores/keyValues', parameters('configStoreName'), parameters('keyValueNames')[0]), '2024-05-01').value]"
},
"reference_key_value_object": {
"type": "object",
"value": {
"name": "[parameters('keyValueNames')[1]]",
"properties": "[reference(resourceId('Microsoft.AppConfiguration/configurationStores/keyValues', parameters('configStoreName'), parameters('keyValueNames')[1]), '2024-05-01')]"
}
}
}
}
V šabloně jsou definované dva prostředky Azure:
- Microsoft.AppConfiguration/configurationStores: Vytvořte úložiště konfigurace aplikací.
- Microsoft.AppConfiguration/configurationStores/keyValues: Vytvořte hodnotu klíče v obchodě App Configuration Store.
Tip
Název keyValues
prostředku je kombinací klíče a popisku. Klíč a popisek jsou spojené oddělovačem $
. Popisek je volitelný. V předchozím příkladu keyValues
vytvoří prostředek s názvem myKey
hodnotu klíče bez popisku.
Kódování v procentech, označované také jako kódování adresy URL, umožňuje klíčům nebo popiskům zahrnout znaky, které nejsou povolené v názvech prostředků šablony ARM. %
není ani povolený znak, takže ~
se používá na svém místě. Chcete-li správně kódovat název, postupujte takto:
- Použití kódování adresy URL
- Nahradit
~
čím~7E
- Nahradit
%
čím~
Pokud například chcete vytvořit pár klíč-hodnota s názvem AppName:DbEndpoint
klíče a názvem Test
popisku , název prostředku by měl být AppName~3ADbEndpoint$Test
.
Poznámka:
App Configuration umožňuje přístup k datům klíč-hodnota přes privátní propojení z vaší virtuální sítě. Pokud je tato funkce povolená, všechny požadavky na data konfigurace aplikace ve veřejné síti se ve výchozím nastavení zamítnou. Vzhledem k tomu, že šablona ARM běží mimo vaši virtuální síť, není povolený přístup k datům ze šablony ARM. Pokud chcete povolit přístup k datům ze šablony ARM při použití privátního propojení, můžete povolit přístup k veřejné síti pomocí následujícího příkazu Azure CLI. V tomto scénáři je důležité zvážit bezpečnostní důsledky povolení přístupu k veřejné síti.
az appconfig update -g MyResourceGroup -n MyAppConfiguration --enable-public-network true
Nasazení šablony
Vyberte následující obrázek a přihlaste se k Azure a otevřete šablonu. Šablona vytvoří úložiště App Configuration se dvěma hodnotami klíčů uvnitř.
Šablonu můžete nasadit také pomocí následující rutiny PowerShellu. Hodnoty klíčů budou ve výstupu konzoly PowerShellu.
$projectName = Read-Host -Prompt "Enter a project name that is used for generating resource names"
$location = Read-Host -Prompt "Enter the location (i.e. centralus)"
$templateUri = "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.appconfiguration/app-configuration-store-kv/azuredeploy.json"
$resourceGroupName = "${projectName}rg"
New-AzResourceGroup -Name $resourceGroupName -Location "$location"
New-AzResourceGroupDeployment -ResourceGroupName $resourceGroupName -TemplateUri $templateUri
Read-Host -Prompt "Press [ENTER] to continue ..."
Kontrola nasazených prostředků
- Přihlaste se k portálu Azure.
- Do vyhledávacího pole webu Azure Portal zadejte App Configuration. V seznamu vyberte App Configuration .
- Vyberte nově vytvořený prostředek App Configuration.
- V části Operace klikněte na Průzkumníka konfigurace.
- Ověřte, že existují dvě hodnoty klíče.
Vyčištění prostředků
Pokud už ji nepotřebujete, odstraňte skupinu prostředků, Úložiště konfigurace aplikací a všechny související prostředky. Pokud plánujete v budoucnu používat obchod App Configuration Store, můžete ho přeskočit. Pokud nebudete dál používat toto úložiště, odstraňte všechny prostředky vytvořené tímto rychlým startem spuštěním následující rutiny:
$resourceGroupName = Read-Host -Prompt "Enter the Resource Group name"
Remove-AzResourceGroup -Name $resourceGroupName
Write-Host "Press [ENTER] to continue..."
Další kroky
Další informace o přidání příznaku funkce a odkazu služby Key Vault do úložiště konfigurace aplikací najdete v následujících příkladech šablon ARM.