Azure Resource Manager şablonlarını kullanarak Azure Yönetilen Lustre dosya sistemi oluşturma

Azure Resource Manager (ARM) şablonlarını kullanarak Azure Yönetilen Lustre dosya sistemi oluşturmayı otomatikleştirebilirsiniz. Bu makalede temel yordam açıklanır ve ihtiyacınız olan dosyalara örnekler verilmektedir.

Bu makalede ARM şablonları oluşturmaya yönelik iki farklı yönteme örnekler verilmektedir:

  • Arm şablonlarını doğrudan oluşturmak için JSON kullanın. Daha fazla bilgi edinmek için bkz . JSON şablonu söz dizimi.
  • Yapılandırma ayrıntılarını sağlamak için daha basit söz dizimi kullanan Bicep'i kullanın. Şablonu dağıttığınızda, Bicep dosyaları ARM şablon dosyalarına dönüştürülür. Daha fazla bilgi edinmek için Bkz . Bicep belgeleri.

Bu seçenekler hakkında daha fazla bilgi edinmek için bkz . Şablonlar için JSON ve Bicep karşılaştırması.

Dosya sistemi türünü ve boyutunu seçin

Şablon yazmadan önce Azure Yönetilen Lustre dosya sisteminiz hakkında bazı kararlar almalısınız. Yapılandırma seçenekleri hakkında daha fazla bilgi edinmek için Azure Yönetilen Lustre dosya sistemi oluşturma makalesindeki kurulum ayrıntılarına bakın.

Şablon kullandığınızda, oluşturulacak temel Azure Yönetilen Lustre dosya sistemi türünü tanımlamak için bir SKU belirtin. SKU bir ürün katmanını temsil eder. Disk türü, desteklenen depolama miktarı ve maksimum aktarım hızı kapasitesi gibi sistem niteliklerini ayarlar. Azure Yönetilen Lustre dosya sisteminizi oluşturmak için Azure portalını kullanırsanız, özelliklerini seçerek sistem türünü dolaylı olarak belirtirsiniz.

Aşağıdaki tabloda, desteklenen her SKU'da aktarım hızı ve depolama boyutu değerleri gösterilmektedir. Bu SKU'lar dayanıklı SSD depolama kullanan bir dosya sistemi oluşturur.

SKU TiB depolama başına aktarım hızı Depolama en düşük Depolama üst sınırı Artış
AMLFS-Dayanıklı-Premium-40 40 MBps 48 TB 768 TB 48 TB
AMLFS-Dayanıklı-Premium-125 125 MBps 16 TB 128 TB 16 TB
AMLFS-Dayanıklı-Premium-250 250 MBps 8 TB 128 TB 8 TB
AMLFS-Dayanıklı-Premium-500 500 MBps 4 TB 128 TB 4 TB

Listelenen maksimum değerden daha büyük depolama değerlerine ihtiyacınız varsa, seçenekleri keşfetmek için bir destek bileti açabilirsiniz.

SKU özelliklerini denetlemek için Azure portalını kullanarak Yönetilen Lustre dosya sistemi oluşturmak için iş akışını kullanabilirsiniz. SKU'ya özgü ayarlar, Dosya sistemi ayrıntıları'nın altındaki Temel bilgiler sekmesindedir.

Şablon dosyası oluşturma

Yapılandırma seçeneklerine karar verdikten sonra bir şablon dosyası oluşturabilirsiniz. Şablon dosyası, Azure Yönetilen Lustre dosya sisteminizin yapılandırma ayrıntılarını içeren bir JSON veya Bicep dosyasıdır.

Şablon özellik değerleri

ARM şablonu kullanarak Azure Yönetilen Lustre dosya sistemi oluşturmak için şablon dosyanıza aşağıdaki bilgileri eklemeniz gerekir. Tam söz dizimi Bicep ile JSON arasında farklıdır, bu nedenle değişmez değerler için örneklere bakın.

Dosya sistemi

Veri Akışı Adı Açıklama Değer
Tür Oluşturulacak kaynak türü. Microsoft.StorageCache/amlFileSystems
apiVersion Kullanılacak Azure Yönetilen Lustre API'sinin sürümü. Geçerli API sürümünü kullanın, örneğin, 2024-03-01
Adı Azure Yönetilen Lustre dosya sistemi için benzersiz bir ad. dize (gerekli)
konum Kaynağın bulunduğu coğrafi konum. Görünen ad yerine kısa adı kullanın, örneğin yerine kullanın eastus East US. dize (gerekli)
tags Dosya sistemi için kaynak etiketleri. Etiket adlarının ve değerlerinin sözlüğü; bkz . Şablonlardaki etiketler
sku Kaynak için performans SKU'su. Bkz. SKU adı
identity Yapılandırılmışsa, dosya sistemi için kullanılacak yönetilen kimlik. Bkz. Kimlik
özellikler Dosya sisteminin özellikleri. Bkz. Özellikler
Bölge Kaynaklar için kullanılabilirlik alanları. Bu alan dizide yalnızca tek bir öğe içermelidir. string[]

Kimlik

Veri Akışı Adı Açıklama Değer
Tür Kaynak için kullanılan kimlik türü. None, UserAssigned
userAssignedIdentities Her anahtarın kullanıcı tarafından atanan bir kimlik kaynak kimliği olduğu ve her anahtarın değerinin boş bir sözlük olduğu bir sözlük. Bkz. şablon belgeleri

Properties

Veri Akışı Adı Açıklama Değer
encryptionSettings Dosya sisteminin şifreleme ayarları. Bkz. Şifreleme ayarları
filesystemSubnet Dosya sisteminin kullandığı alt ağ. dize (gerekli)
Hsm Dosya sistemi için Blob Depolama kapsayıcı ayarları. Bkz. HSM ayarları
maintenanceWindow Sistem güncelleştirmelerinin gerçekleşebileceği gün ve saati belirtir. Bkz. Bakım penceresi (gerekli)
rootSquashSettings Dosya sistemi için kök sıkıştırma ayarlarını belirtir. Bkz. Kök squash ayarları
storageCapacityTiB TiB'de dosya sisteminin boyutu. SKU'yu temel alarak bu alanın izin verilebilen değerleri hakkında daha fazla bilgi edinmek için bkz . Dosya sistemi türünü ve boyutunu seçme. int (gerekli)

Şifreleme ayarları

Veri Akışı Adı Açıklama Değer
keyEncryptionKey Key Vault'ta şifreleme anahtarının konumunu belirtir. Bkz. şablon belgeleri

HSM ayarları

Veri Akışı Adı Açıklama Değer
kapsayıcı Ad alanını nemlendirmek ve ad alanından arşivleme için kullanılan depolama kapsayıcısının kaynak kimliği. Kaynak sağlayıcısının depolama hesabında SAS belirteçleri oluşturma izni olmalıdır. dize (gerekli)
importPrefix Yalnızca bu yol/ön ek ile başlayan günlüğe kaydetmeyen kapsayıcıdaki bloblar küme ad alanına aktarılır. Bu yalnızca Azure Yönetilen Lustre dosya sisteminin ilk oluşturulması sırasında kullanılır. Dize
importPrefixesInitial Yalnızca bu dizideki yollardan/ön eklerden biriyle başlayan günlük kaydı olmayan kapsayıcıdaki bloblar küme ad alanına aktarılır. Bu değer yalnızca Azure Yönetilen Lustre dosya sisteminin ilk oluşturulması sırasında kullanılır ve varsayılan değer olarak '/' değerine sahiptir. string[]
loggingContainer Olayları ve hataları günlüğe kaydetmek için kullanılan depolama kapsayıcısının kaynak kimliği. Hidrasyon ve arşiv kapsayıcısı ile aynı depolama hesabında ayrı bir kapsayıcı olmalıdır. Kaynak sağlayıcısının depolama hesabında SAS belirteçleri oluşturma izni olmalıdır. dize (gerekli)

Not

importPrefixesInitial özelliği, verileri dosya sistemine aktarmak için birden çok ön ek belirtmenize olanak tanırkenimportPrefix, tek bir ön ek belirtmenize olanak tanır. Her iki özelliğin de varsayılan değeridir /. Özelliklerden birini tanımlarsanız, diğerini tanımlayamazsınız. Her iki özelliği de tanımlarsanız dağıtım başarısız olur.

Daha fazla bilgi edinmek için bkz . Ön eki içeri aktarma.

Bakım penceresi

Veri Akışı Adı Açıklama Değer
dayOfWeek Bakım penceresinin oluşabileceği haftanın günü. Sunday, Monday, Tuesday, , Wednesday, Thursday, Friday, Saturday
timeOfDayUTC Bakım penceresinin günün saati (UTC olarak) gerçekleşebilir. dize
Örneği: 22:30

timeOfDayUTC özelliği 24 saatlik bir saat biçimi kullanır. Örneğin, 22:30 22:30'ı temsil eder. Desen şeklindedir ^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$.

Kök squash ayarları

Veri Akışı Adı Açıklama Değer
mod AML dosya sisteminin squash modu. 'Tümü': Dosyalardaki Kullanıcı ve Grup Kimlikleri, güvenilir olmayan sistemlerdeki tüm kullanıcılar için sağlanan değerlere sıkıştırılır. 'RootOnly': Dosyalardaki Kullanıcı ve Grup Kimlikleri, güvenilir olmayan sistemlerde yalnızca kök kullanıcı için sağlanan değerlere göre sıkıştırılır. 'Hiçbiri': Herhangi bir sistemdeki kullanıcılar için Kullanıcı ve Grup Kimliklerinin sıkıştırılması yapılmaz. All, None, RootOnly
noSquashNidLists TrustedSystems'a eklenecek noktalı virgülle ayrılmış NID IP adresi listesi. Dize
squashGID Sıkıştıracak grup kimliği. int
squashUID Sıkıştıracak kullanıcı kimliği. int

SKU adı

Veri Akışı Adı Açıklama Değer
Adı Kaynağın SKU adı. AMLFS-Durable-Premium-40, AMLFS-Durable-Premium-125, AMLFS-Durable-Premium-250, AMLFS-Durable-Premium-500

Şablon kullanarak dosya sistemini dağıtma

Aşağıdaki örnek adımlarda, yeni bir kaynak grubu oluşturmak ve içinde bir Azure Yönetilen Lustre dosya sistemi oluşturmak için Azure CLI komutları kullanılır. Adımlarda, bu makalenin önceki bölümlerinde açıklandığı gibi zaten bir dosya sistemi türü ve boyutu seçtiğiniz ve bir şablon dosyası oluşturduğunuz varsayılır. Ayrıca tüm önkoşulları karşıladığınızdan emin olun.

  1. Varsayılan aboneliğinizi ayarlayın:

    az account set --subscription "<subscription-id>"
    az account show
    
  2. İsteğe bağlı olarak, Azure Yönetilen Lustre dosya sisteminiz için yeni bir kaynak grubu oluşturun. Var olan bir kaynak grubunu kullanmak istiyorsanız, bu adımı atlayın ve şablon komutunu çalıştırdığınızda var olan kaynak grubunun adını belirtin.

    az group create --name <rg-name> --location <region-short-name>
    

    Dosya sisteminiz, aynı abonelikte oldukları sürece kendi kaynak grubu dışındaki kaynakları kullanabilir.

  3. Şablonu kullanarak Azure Yönetilen Lustre dosya sistemini dağıtın. Söz dizimi, dosya sayısıyla birlikte JSON veya Bicep dosyalarını kullanıp kullanmadığınıza bağlıdır.

    Hem Bicep hem de JSON şablonlarını tek dosya veya birden çok dosya olarak dağıtabilirsiniz. Daha fazla bilgi edinmek ve her seçeneğin tam söz dizimini görmek için ARM şablonu belgelerine bakın.

    Örnek JSON komutu:

    az deployment group create \
      --name <example-deployment> \
      --resource-group <resource-group-name> \
      --template-file azlustre-template.json
    

    Örnek Bicep komutu:

    az deployment group create \
     --resource-group <ResourceGroupName> \
     --template-file azlustre.bicep
    

JSON örneği

Bu bölümde bir JSON şablon dosyası için örnek içerik gösterilmektedir. Kendi ARM şablonunuzu oluştururken isteğe bağlı parametreleri kaldırabilirsiniz.

{
    "$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": {}
}

Bicep örneği

Bu bölümde Bicep dosyası için örnek içerik gösterilmektedir. Kendi parametrelerinizi oluştururken isteğe bağlı parametreleri kaldırabilirsiniz.

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'
  ]
}