Vytvoření systému souborů Lustre spravovaného Azure pomocí šablon Azure Resource Manageru
Vytvoření systému souborů Lustre spravovaného Azure můžete automatizovat pomocí šablon Azure Resource Manageru (ARM). Tento článek vysvětluje základní postup a uvádí příklady potřebných souborů.
Tento článek obsahuje příklady dvou různých metod pro vytváření šablon ARM:
- Pomocí KÓDU JSON můžete vytvářet šablony ARM přímo. Další informace najdete v tématu Syntaxe šablony JSON.
- Použijte Bicep, který k zadání podrobností konfigurace používá jednodušší syntaxi. Při nasazení šablony se soubory Bicep převedou na soubory šablon ARM. Další informace najdete v dokumentaci k Bicep.
Další informace o těchto možnostech najdete v tématu Porovnání json a Bicep pro šablony.
Volba typu a velikosti systému souborů
Než napíšete šablonu, musíte se rozhodnout o systému souborů Azure Managed Lustre. Další informace o možnostech konfigurace najdete v podrobnostech o nastavení v systému souborů Create an Azure Managed Lustre.
Při použití šablony zadejte skladovou položku pro definování základního typu systému souborů Azure Managed Lustre, který se má vytvořit. Skladová položka představuje úroveň produktu. Nastavuje systémové vlastnosti, jako je typ disků, podporovaná velikost úložiště a maximální kapacita propustnosti. Pokud k vytvoření systému souborů Lustre spravované služby Azure použijete Azure Portal, určíte typ systému nepřímo výběrem jeho možností.
V následující tabulce jsou uvedeny hodnoty propustnosti a velikosti úložiště v každé podporované skladové posílce. Tyto skladové položky vytvářejí systém souborů, který používá odolné úložiště SSD.
Skladová jednotka (SKU) | Propustnost na úložiště TiB | Minimum úložiště | Maximální velikost úložiště | Přírůstek |
---|---|---|---|---|
AMLFS-Durable-Premium-40 | 40 MB/s | 48 TB | 768 TB | 48 TB |
AMLFS-Durable-Premium-125 | 125 MB/s | 16 TB | 128 TB | 16 TB |
AMLFS-Durable-Premium-250 | 250 MB/s | 8 TB | 128 TB | 8 TB |
AMLFS-Durable-Premium-500 | 500 MB/s | 4 TB | 128 TB | 4 TB |
Pokud požadujete hodnoty úložiště větší než uvedené maximum, můžete otevřít lístek podpory a prozkoumat možnosti.
Pokud chcete zkontrolovat možnosti skladové položky, můžete použít pracovní postup pro vytvoření spravovaného systému souborů Lustre pomocí webu Azure Portal. Nastavení specifická pro skladovou položku jsou na kartě Základy v části Podrobnosti o systému souborů.
Vytvoření souboru šablony
Po rozhodnutí o možnostech konfigurace můžete vytvořit soubor šablony. Soubor šablony je soubor JSON nebo Bicep, který obsahuje podrobnosti konfigurace pro váš systém souborů Lustre spravovaného Azure.
Hodnoty vlastností šablony
Pokud chcete vytvořit systém souborů Lustre spravovaného Azure pomocí šablony ARM, musíte do souboru šablony zahrnout následující informace. Přesná syntaxe se mezi Bicep a JSON liší, proto si projděte příklady hodnot literálů.
Systém souborů
Název | Popis | Hodnota |
---|---|---|
type | Typ prostředku, který chcete vytvořit. | Microsoft.StorageCache/amlFileSystems |
apiVersion | Verze rozhraní LUstre API spravovaného v Azure, která se má použít. | Použijte například aktuální verzi rozhraní API. 2024-03-01 |
name | Jedinečný název systému souborů Azure Managed Lustre. | string (povinné) |
location | Geografické umístění, ve kterém se nachází zdroj. Místo zobrazovaného názvu použijte krátký název, například místo eastus East US . |
string (povinné) |
značky | Značky prostředků pro systém souborů | Slovník názvů a hodnot značek; Zobrazit značky v šablonách |
sku | Skladová položka výkonu prostředku | Zobrazit název skladové položky |
Identity | Spravovaná identita, která se má použít pro systém souborů( pokud je nakonfigurovaná). | Viz Identita |
vlastnosti | Vlastnosti systému souborů | Zobrazit vlastnosti |
zóny | Zóny dostupnosti pro prostředky Toto pole by mělo obsahovat pouze jeden prvek v poli. | string[] |
Identita
Název | Popis | Hodnota |
---|---|---|
type | Typ identity používané pro prostředek. | None , UserAssigned |
userAssignedIdentities | Slovník, kde každý klíč je ID prostředku identity přiřazené uživatelem a hodnota každého klíče je prázdný slovník. | Zobrazení dokumentace k šablonám |
Vlastnosti
Název | Popis | Hodnota |
---|---|---|
encryptionSettings | Nastavení šifrování pro systém souborů. | Viz Nastavení šifrování |
filesystemSubnet | Podsíť, kterou systém souborů používá. | string (povinné) |
Hsm | Nastavení kontejneru Blob Storage pro systém souborů. | Viz nastavení HSM |
maintenanceWindow | Určuje den a čas, kdy může dojít k aktualizacím systému. | Viz Časové období údržby (povinné) |
rootSquashSettings | Určuje nastavení root squash pro systém souborů. | Viz Nastavení kořenové squashe |
storageCapacityTiB | Velikost systému souborů v TiB. Další informace o povolenýchhodnotách | int (povinné) |
Nastavení šifrování
Název | Popis | Hodnota |
---|---|---|
keyEncryptionKey | Určuje umístění šifrovacího klíče ve službě Key Vault. | Zobrazení dokumentace k šablonám |
Nastavení HSM
Název | Popis | Hodnota |
---|---|---|
kontejner | ID prostředku kontejneru úložiště používaného pro hydrataci oboru názvů a archivace z oboru názvů. Poskytovatel prostředků musí mít oprávnění k vytváření tokenů SAS v účtu úložiště. | string (povinné) |
importPrefix | Do oboru názvů clusteru se naimportují pouze objekty blob v kontejneru bez protokolování, které začínají touto cestou nebo předponou. Používá se pouze při počátečním vytváření systému souborů Azure Managed Lustre. | string |
importPrefixesInitial | Do oboru názvů clusteru se naimportují pouze objekty blob v kontejneru bez protokolování, které začínají jednou z cest nebo předpon v tomto poli. Tato hodnota se používá pouze při počátečním vytváření systému souborů Azure Managed Lustre a má výchozí hodnotu /. | string[] |
loggingContainer | ID prostředku kontejneru úložiště používaného k protokolování událostí a chyb Musí být samostatný kontejner ve stejném účtu úložiště jako hydrace a archivní kontejner. Poskytovatel prostředků musí mít oprávnění k vytváření tokenů SAS v účtu úložiště. | string (povinné) |
Poznámka:
Vlastnost importPrefixesInitial
umožňuje zadat více předpon pro import dat do systému souborů, zatímco importPrefix
umožňuje zadat jednu předponu. Výchozí hodnota obou vlastností je /
. Pokud definujete jednu z vlastností, nemůžete definovat druhou. Pokud definujete obě vlastnosti, nasazení selže.
Další informace najdete v tématu Import předpony.
Časové období údržby
Název | Popis | Hodnota |
---|---|---|
denOfWeek | Den v týdnu, kdy může dojít k časovému období údržby. | Sunday , Monday , Tuesday , Wednesday , Thursday , , Friday Saturday |
timeOfDayUTC | K času dne (v UTC) může dojít k časovému období údržby. | Příklad řetězce : 22:30 |
Vlastnost timeOfDayUTC
používá 24hodinový formát hodin. Například 22:30
představuje 10:30 PM. Vzor je ^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$
.
Nastavení kořenové squashe
Název | Popis | Hodnota |
---|---|---|
režim | Squash režim systému souborů AML. All (Vše): ID uživatelů a skupin u souborů se zamknou na zadané hodnoty pro všechny uživatele v nedůvěryhodných systémech. RootOnly: ID uživatelů a skupin v souborech jsou zamyšlovány na zadané hodnoty výhradně uživatele root v nedůvěryhodných systémech. Žádná: Žádné zmáčknutí ID uživatelů a skupin se neprovádí pro všechny uživatele v jakémkoli systému. | All , , None RootOnly |
noSquashNidLists | Středník oddělený seznam IP adres NID, který se má přidat do trustedSystems. | string |
squashGID | ID skupiny, na které se má squashovat. | int |
squashUID | ID uživatele, na které se má squashovat. | int |
Název skladové položky
Název | Popis | Hodnota |
---|---|---|
name | Název skladové položky prostředku | AMLFS-Durable-Premium-40 , AMLFS-Durable-Premium-125 , , AMLFS-Durable-Premium-250 AMLFS-Durable-Premium-500 |
Nasazení systému souborů pomocí šablony
Následující příklad kroků používá příkazy Azure CLI k vytvoření nové skupiny prostředků a vytvoření systému souborů Azure Managed Lustre v něm. Kroky předpokládají, že jste již zvolili typ a velikost systému souborů a vytvořili soubor šablony, jak je popsáno výše v tomto článku. Ujistěte se také, že splňujete všechny požadavky.
Nastavení výchozího předplatného:
az account set --subscription "<subscription-id>" az account show
Volitelně můžete vytvořit novou skupinu prostředků pro systém souborů Azure Managed Lustre. Pokud chcete použít existující skupinu prostředků, přeskočte tento krok a při spuštění příkazu šablony zadejte název existující skupiny prostředků.
az group create --name <rg-name> --location <region-short-name>
Váš systém souborů může používat prostředky mimo vlastní skupinu prostředků, pokud jsou ve stejném předplatném.
Pomocí šablony nasaďte systém souborů Azure Managed Lustre. Syntaxe závisí na tom, jestli používáte soubory JSON nebo Bicep spolu s počtem souborů.
Šablony Bicep a JSON můžete nasadit jako jednotlivé soubory nebo více souborů. Další informace a přesné syntaxe jednotlivých možností najdete v dokumentaci k šabloně ARM.
Příklad příkazu JSON:
az deployment group create \ --name <example-deployment> \ --resource-group <resource-group-name> \ --template-file azlustre-template.json
Příklad příkazu Bicep:
az deployment group create \ --resource-group <ResourceGroupName> \ --template-file azlustre.bicep
Příklad JSON
Tato část ukazuje příklad obsahu souboru šablony JSON. Volitelné parametry můžete odebrat při vytváření vlastní šablony ARM.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.StorageCache/amlFilesystems",
"apiVersion": "2024-03-01",
"name": "amlfs-example",
"location": "eastus",
"tags": {
"Dept": "ContosoAds"
},
"sku": {
"name": "AMLFS-Durable-Premium-250"
},
"identity": {
"type": "UserAssigned",
"userAssignedIdentities": {
"/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/<rg-name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<identity-name>": {}
}
},
"properties": {
"encryptionSettings": {
"keyEncryptionKey": {
"keyUrl": "https://<keyvault-name>.vault.azure.net/keys/kvk/<key>",
"sourceVault": {
"id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/<rg-name>/providers/Microsoft.KeyVault/vaults/<keyvault-name>"
}
}
},
"filesystemSubnet": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/<rg-name>/providers/Microsoft.Network/virtualNetworks/<vnet-name>/subnets/<subnet-name>",
"hsm": {
"settings": {
"container": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/<rg-name>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>/blobServices/default/containers/<container-name>",
"loggingContainer": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/<rg-name>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>/blobServices/default/containers/<logging-container-name>",
"importPrefixesInitial": [
"/"
]
}
},
"maintenanceWindow": {
"dayOfWeek": "Saturday",
"timeOfDayUTC": "22:00"
},
"rootSquashSettings": {
"mode": "All",
"noSquashNidLists": "10.0.0.[5-6]@tcp;10.0.1.2@tcp",
"squashGID": "99",
"squashUID": "99"
},
"storageCapacityTiB": "16"
},
"zones": [
"1"
],
}
],
"outputs": {}
}
Příklad Bicep
Tato část ukazuje příklad obsahu souboru Bicep. Při vytváření vlastních parametrů můžete odebrat volitelné parametry.
resource filesystem 'Microsoft.StorageCache/amlFilesystems@2024-03-01' = {
name: 'amlfs-example'
location: 'eastus'
tags: {
Dept: 'ContosoAds'
}
sku: {
name: 'AMLFS-Durable-Premium-250'
}
identity: {
type: 'UserAssigned'
userAssignedIdentities: {
'/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/<rg-name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<identity-name>': {}
}
}
properties: {
encryptionSettings: {
keyEncryptionKey: {
keyUrl: 'https://<keyvault-name>.vault.azure.net/keys/kvk/<key>'
sourceVault: {
id: '/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/<rg-name>/providers/Microsoft.KeyVault/vaults/<keyvault-name>'
}
}
}
filesystemSubnet: '/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/<rg-name>/providers/Microsoft.Network/virtualNetworks/<vnet-name>/subnets/<subnet-name>'
hsm: {
settings: {
container: '/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/<rg-name>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>/blobServices/default/containers/<container-name>'
importPrefixesInitial: [
'/'
]
loggingContainer: '/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/<rg-name>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>/blobServices/default/containers/<logging-container-name>'
}
}
maintenanceWindow: {
dayOfWeek: 'Saturday'
timeOfDayUTC: '22:00'
}
rootSquashSettings: {
mode: 'All'
noSquashNidLists: '10.0.0.[5-6]@tcp;10.0.1.2@tcp'
squashGID: 99
squashUID: 99
}
storageCapacityTiB: 16
}
zones: [
'1'
]
}