Povolení akcelerátoru zápisu

Platí pro: ✔️ Virtuální počítače s Windows s Linuxem ✔️ ✔️ – Flexibilní škálovací sady Uniform Scale Sets ✔️

Akcelerátor zápisu je funkce disku pro virtuální počítače řady M-Series ve službě Premium Storage s Azure Spravované disky výhradně. Jak uvádí název, účelem této funkce je zlepšit latenci vstupně-výstupních operací zápisů v Azure Premium Storage. Akcelerátor zápisu je ideální v případě, že se aktualizace souborů protokolu vyžadují k zachování na disk vysoce výkonným způsobem pro moderní databáze.

Akcelerátor zápisu je obecně dostupný pro virtuální počítače řady M ve veřejném cloudu.

Plánování použití akcelerátoru zápisu

Akcelerátor zápisu by se měl použít pro svazky, které obsahují transakční protokol nebo znovu protokoly DBMS. Nedoporučuje se používat akcelerátor zápisu pro datové svazky DBMS, protože tato funkce je optimalizovaná pro použití s disky protokolu.

Akcelerátor zápisu funguje jenom ve spojení se spravovanými disky Azure.

Důležité

Povolení akcelerátoru zápisu pro disk operačního systému virtuálního počítače restartuje virtuální počítač.

Pokud chcete povolit akcelerátor zápisu na existující disk Azure, který není součástí sestavení svazku s více disky se správci disků nebo svazků s Windows, Windows Prostory úložiště, souborový server se škálováním na více systémů Windows (SOFS), Linux LVM nebo MDADM, musí být úloha přistupující k disku Azure vypnutá. Databázové aplikace používající disk Azure musí být vypnuté.

Pokud chcete povolit nebo zakázat akcelerátor zápisu pro existující svazek, který je sestavený z více disků Azure Premium Storage a prokládání pomocí správců disků nebo svazků s Windows, Windows Prostory úložiště, souborového serveru se škálováním na více systémů Windows (SOFS), Linux LVM nebo MDADM, musí být všechny disky, které vytvářejí svazek, povolené nebo zakázané pro akcelerátor zápisu v samostatných krocích. Před povolením nebo zakázáním akcelerátoru zápisu v takové konfiguraci vypněte virtuální počítač Azure.

Povolení akcelerátoru zápisu pro disky s operačním systémem by nemělo být nezbytné pro konfigurace virtuálních počítačů souvisejících se SAP.

Omezení při použití Akcelerátorů zápisu

Při použití akcelerátoru zápisu pro disk Nebo virtuální pevný disk Azure platí tato omezení:

  • Ukládání do mezipaměti na disku Úrovně Premium musí být nastaveno na Žádné nebo Jen pro čtení. Všechny ostatní režimy ukládání do mezipaměti nejsou podporovány.
  • Snímky jsou v současné době podporovány pouze pro datové disky s podporou akcelerátoru zápisu, a ne pro disk s operačním systémem. Během zálohování služba Azure Backup automaticky zálohuje a chrání datové disky s podporou akcelerátoru zápisu připojené k virtuálnímu počítači.
  • Akcelerovanou cestu využívají pouze menší vstupně-výstupní velikosti (<=64 KiB). V situacích úloh, kdy se data hromadně načítají nebo kde se vyrovnávací paměti transakčního protokolu různých DBMS vyplní do většího stupně, než se zachovají do úložiště, je pravděpodobné, že vstupně-výstupní operace zapsané na disk nepřebírají akcelerovanou cestu.

Existují omezení virtuálních pevných disků Azure Premium Storage na virtuální počítač, které může akcelerátor zápisu podporovat. Aktuální limity jsou:

Skladová položka virtuálního počítače Počet disků akcelerátoru zápisu IOPS disku akcelerátoru zápisu na virtuální počítač
M416ms_v2, M416s_8_v2, M416s_v2 16 20 000
M208ms_v2, M208s_v2 8 10000
M192ids_v2, M192idms_v2, M192is_v2, M192ims_v2, 16 20 000
M128ms, M128s, M128ds_v2, M128dms_v2, M128s_v2, M128ms_v2 16 20 000
M64ms, M64ls, M64s, M64ds_v2, M64dms_v2, M64s_v2, M64ms_v2 8 10000
M32ms, M32ls, M32ts, M32s, M32dms_v2, M32ms_v2 4 5000
M16ms, M16s 2 2500
M8ms, M8s 0 1250
Standard_M12s_v3, Standard_M12ds_v3 0 5000
Standard_M24s_v3, Standard_M24ds_v3 2 5000
Standard_M48s_1_v3, Standard_M48ds_1_v3 4 5000
Standard_M96s_1_v3, Standard_M96ds_1_v3, Standard_M96s_2_v3, Standard_M96ds_2_v3 8 10000
Standard_M176s_3_v3, Standard_M176ds_3_v3, Standard_M176s_4_v3, Standard_M176ds_4_v3 16 20 000

Limity IOPS jsou na virtuální počítač a ne na disk. Všechny disky akcelerátoru zápisu sdílejí stejný limit IOPS na virtuální počítač. Připojené disky nemůžou překročit limit IOPS akcelerátoru zápisu pro virtuální počítač. Například i když připojené disky můžou provádět 30 000 IOPS, systém neumožňuje, aby disky pro M416ms_v2 překročily 20 000 IOPS.

Povolení Akcelerátoru zápisu na konkrétním disku

V následujících několika částech se dozvíte, jak je možné na virtuálních pevných discích Azure Premium Storage povolit akcelerátor zápisu.

Požadavky

Následující požadavky platí pro použití akcelerátoru zápisu v tomto okamžiku:

  • Disky, na které chcete použít akcelerátor zápisu Azure, musí být spravované disky Azure ve službě Premium Storage.
  • Musíte používat virtuální počítač řady M.řady.

Povolení Akcelerátoru zápisu Azure s využitím Azure PowerShellu

Modul Azure PowerShellu z verze 5.5.0 zahrnuje změny příslušných rutin pro povolení nebo zakázání akcelerátoru zápisu pro konkrétní disky Azure Premium Storage. Pokud chcete povolit nebo nasadit disky podporované akcelerátorem zápisu, změnily se následující příkazy PowerShellu a rozšířily se tak, aby přijímaly parametr akcelerátoru zápisu.

Do následujících rutin se přidal nový parametr přepínače -WriteAccelerator :

Poznámka:

Pokud ve škálovacích sadách virtuálních počítačů povolíte akcelerátor zápisu pomocí flexibilního režimu orchestrace, musíte ho povolit pro každou jednotlivou instanci.

Neudělování parametru nastaví vlastnost na false a nasadí disky, které nemají podporu akcelerátorem zápisu.

Do následujících rutin se přidal nový parametr přepínače -OsDiskWriteAccelerator :

Nezadání parametru nastaví vlastnost na false ve výchozím nastavení a vrací disky, které nepoužívají akcelerátor zápisu.

Do následujících rutin se přidal nový volitelný logický parametr (bez nullable), -OsDiskWriteAccelerator :

Pokud chcete řídit podporu akcelerátoru zápisu Azure s disky, zadejte $true nebo $false.

Příklady příkazů můžou vypadat takto:

New-AzVMConfig | Set-AzVMOsDisk | Add-AzVMDataDisk -Name "datadisk1" | Add-AzVMDataDisk -Name "logdisk1" -WriteAccelerator | New-AzVM

Get-AzVM | Update-AzVM -OsDiskWriteAccelerator $true

New-AzVmssConfig | Set-AzVmssStorageProfile -OsDiskWriteAccelerator | Add-AzVmssDataDisk -Name "datadisk1" -WriteAccelerator:$false | Add-AzVmssDataDisk -Name "logdisk1" -WriteAccelerator | New-AzVmss

Get-AzVmss | Update-AzVmss -OsDiskWriteAccelerator:$false

Dva hlavní scénáře se dají skriptovat, jak je znázorněno v následujících částech.

Přidání nového disku podporovaného akcelerátorem zápisu pomocí PowerShellu

Tento skript můžete použít k přidání nového disku do virtuálního počítače. Disk vytvořený pomocí tohoto skriptu používá akcelerátor zápisu.

Nahraďte myVM, , myWAVMsvelikost log001disku a lunID disku hodnotami odpovídajícími vašemu konkrétnímu nasazení.

# Specify your VM Name
$vmName="myVM"
#Specify your Resource Group
$rgName = "myWAVMs"
#data disk name
$datadiskname = "log001"
#LUN Id
$lunid=8
#size
$size=1023
#Pulls the VM info for later
$vm=Get-AzVM -ResourceGroupName $rgname -Name $vmname
#add a new VM data disk
Add-AzVMDataDisk -CreateOption empty -DiskSizeInGB $size -Name $vmname-$datadiskname -VM $vm -Caching None -WriteAccelerator:$true -lun $lunid
#Updates the VM with the disk config - does not require a reboot
Update-AzVM -ResourceGroupName $rgname -VM $vm

Povolení akcelerátoru zápisu na existujícím disku Azure pomocí PowerShellu

Tento skript můžete použít k povolení akcelerátoru zápisu na existujícím disku. Nahraďte hodnotu a test-log001myWAVMsnahraďte myVMhodnotami vhodnými pro vaše konkrétní nasazení. Skript přidá akcelerátor zápisu do existujícího disku, kde je hodnota pro $newstatus nastavená na hodnotu $true. Použitím hodnoty $false zakážete akcelerátor zápisu na daném disku.

#Specify your VM Name
$vmName="myVM"
#Specify your Resource Group
$rgName = "myWAVMs"
#data disk name
$datadiskname = "test-log001"
#new Write Accelerator status ($true for enabled, $false for disabled)
$newstatus = $true
#Pulls the VM info for later
$vm=Get-AzVM -ResourceGroupName $rgname -Name $vmname
#add a new VM data disk
Set-AzVMDataDisk -VM $vm -Name $datadiskname -Caching None -WriteAccelerator:$newstatus
#Updates the VM with the disk config - does not require a reboot
Update-AzVM -ResourceGroupName $rgname -VM $vm

Poznámka:

Spuštění výše uvedeného skriptu odpojije zadaný disk, povolí akcelerátor zápisu na disk a pak disk znovu připojí.

Povolení Akcelerátoru zápisu s využitím webu Azure Portal

Akcelerátor zápisu můžete povolit na portálu, kde zadáte nastavení ukládání do mezipaměti disku:

Akcelerátor zápisu na webu Azure Portal

Povolení Akcelerátoru zápisu s využitím rozhraní příkazového řádku Azure

K povolení akcelerátoru zápisu můžete použít Azure CLI .

Pokud chcete povolit akcelerátor zápisu na existujícím disku, použijte příkaz az vm update, můžete použít následující příklady, pokud nahradíte diskName, VMName a ResourceGroup vlastními hodnotami: az vm update -g group1 -n vm1 -write-accelerator 1=true

Pokud chcete připojit disk s povoleným akcelerátorem zápisu pomocí příkazu az vm disk attach, můžete použít následující příklad, pokud nahradíte vlastními hodnotami: az vm disk attach -g group1 -vm-name vm1 -disk d1 --enable-write-accelerator

Pokud chcete zakázat akcelerátor zápisu, použijte příkaz az vm update a nastavte vlastnosti na false: az vm update -g group1 -n vm1 -write-accelerator 0=false 1=false

Povolení akcelerátoru zápisu pomocí rozhraní REST API

Pokud chcete nasadit prostřednictvím rozhraní Azure REST API, musíte nainstalovat Azure armclient.

Instalace armclient

Pokud chcete spustit armclient, musíte ho nainstalovat přes Chocolatey. Můžete ho nainstalovat prostřednictvím cmd.exe nebo PowerShellu. Pro tyto příkazy použijte zvýšená práva (Spustit jako Správa istrator).

Pomocí cmd.exe spusťte následující příkaz: @"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"

Pomocí PowerShellu spusťte následující příkaz: Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

Teď můžete armclient nainstalovat pomocí následujícího příkazu v cmd.exe nebo PowerShellu. choco install armclient

Získání aktuální konfigurace virtuálního počítače

Pokud chcete změnit atributy konfigurace disku, musíte nejprve získat aktuální konfiguraci v souboru JSON. Aktuální konfiguraci můžete získat spuštěním následujícího příkazu: armclient GET /subscriptions/<<subscription-ID<</resourceGroups/<<ResourceGroup>>/providers/Microsoft.Compute/virtualMachines/<<virtualmachinename>>?api-version=2017-12-01 > <<filename.json>>

Nahraďte termíny uvnitř<<>> '' vašimi daty, včetně názvu souboru JSON.

Výstup by mohl vypadat takto:

{
  "properties": {
    "vmId": "2444c93e-f8bb-4a20-af2d-1658d9dbbbcb",
    "hardwareProfile": {
      "vmSize": "Standard_M64s"
    },
    "storageProfile": {
      "imageReference": {
        "publisher": "SUSE",
        "offer": "SLES-SAP",
        "sku": "12-SP3",
        "version": "latest"
      },
      "osDisk": {
        "osType": "Linux",
        "name": "mylittlesap_OsDisk_1_754a1b8bb390468e9b4c429b81cc5f5a",
        "createOption": "FromImage",
        "caching": "ReadWrite",
        "managedDisk": {
          "storageAccountType": "Premium_LRS",
          "id": "/subscriptions/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/resourceGroups/mylittlesap/providers/Microsoft.Compute/disks/mylittlesap_OsDisk_1_754a1b8bb390468e9b4c429b81cc5f5a"
        },
        "diskSizeGB": 30
      },
      "dataDisks": [
        {
          "lun": 0,
          "name": "data1",
          "createOption": "Attach",
          "caching": "None",
          "managedDisk": {
            "storageAccountType": "Premium_LRS",
            "id": "/subscriptions/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/resourceGroups/mylittlesap/providers/Microsoft.Compute/disks/data1"
          },
          "diskSizeGB": 1023
        },
        {
          "lun": 1,
          "name": "log1",
          "createOption": "Attach",
          "caching": "None",
          "managedDisk": {
            "storageAccountType": "Premium_LRS",
            "id": "/subscriptions/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/resourceGroups/mylittlesap/providers/Microsoft.Compute/disks/data2"
          },
          "diskSizeGB": 1023
        }
      ]
    },
    "osProfile": {
      "computerName": "mylittlesapVM",
      "adminUsername": "pl",
      "linuxConfiguration": {
        "disablePasswordAuthentication": false
      },
      "secrets": []
    },
    "networkProfile": {
      "networkInterfaces": [
        {
          "id": "/subscriptions/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/resourceGroups/mylittlesap/providers/Microsoft.Network/networkInterfaces/mylittlesap518"
        }
      ]
    },
    "diagnosticsProfile": {
      "bootDiagnostics": {
        "enabled": true,
        "storageUri": "https://mylittlesapdiag895.blob.core.windows.net/"
      }
    },
    "provisioningState": "Succeeded"
  },
  "type": "Microsoft.Compute/virtualMachines",
  "location": "westeurope",
  "id": "/subscriptions/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/resourceGroups/mylittlesap/providers/Microsoft.Compute/virtualMachines/mylittlesapVM",
  "name": "mylittlesapVM"

Dále aktualizujte soubor JSON a povolte akcelerátor zápisu na disku s názvem log1. Toho lze dosáhnout přidáním tohoto atributu do souboru JSON po položce mezipaměti disku.

        {
          "lun": 1,
          "name": "log1",
          "createOption": "Attach",
          "caching": "None",
          "writeAcceleratorEnabled": true,
          "managedDisk": {
            "storageAccountType": "Premium_LRS",
            "id": "/subscriptions/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/resourceGroups/mylittlesap/providers/Microsoft.Compute/disks/data2"
          },
          "diskSizeGB": 1023
        }

Potom pomocí tohoto příkazu aktualizujte existující nasazení: armclient PUT /subscriptions/<<subscription-ID<</resourceGroups/<<ResourceGroup>>/providers/Microsoft.Compute/virtualMachines/<<virtualmachinename>>?api-version=2017-12-01 @<<filename.json>>

Výstup by měl vypadat jako v následujícím příkladu. Uvidíte, že akcelerátor zápisu je povolený pro jeden disk.

{
  "properties": {
    "vmId": "2444c93e-f8bb-4a20-af2d-1658d9dbbbcb",
    "hardwareProfile": {
      "vmSize": "Standard_M64s"
    },
    "storageProfile": {
      "imageReference": {
        "publisher": "SUSE",
        "offer": "SLES-SAP",
        "sku": "12-SP3",
        "version": "latest"
      },
      "osDisk": {
        "osType": "Linux",
        "name": "mylittlesap_OsDisk_1_754a1b8bb390468e9b4c429b81cc5f5a",
        "createOption": "FromImage",
        "caching": "ReadWrite",
        "managedDisk": {
          "storageAccountType": "Premium_LRS",
          "id": "/subscriptions/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/resourceGroups/mylittlesap/providers/Microsoft.Compute/disks/mylittlesap_OsDisk_1_754a1b8bb390468e9b4c429b81cc5f5a"
        },
        "diskSizeGB": 30
      },
      "dataDisks": [
        {
          "lun": 0,
          "name": "data1",
          "createOption": "Attach",
          "caching": "None",
          "managedDisk": {
            "storageAccountType": "Premium_LRS",
            "id": "/subscriptions/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/resourceGroups/mylittlesap/providers/Microsoft.Compute/disks/data1"
          },
          "diskSizeGB": 1023
        },
        {
          "lun": 1,
          "name": "log1",
          "createOption": "Attach",
          "caching": "None",
          "writeAcceleratorEnabled": true,
          "managedDisk": {
            "storageAccountType": "Premium_LRS",
            "id": "/subscriptions/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/resourceGroups/mylittlesap/providers/Microsoft.Compute/disks/data2"
          },
          "diskSizeGB": 1023
        }
      ]
    },
    "osProfile": {
      "computerName": "mylittlesapVM",
      "adminUsername": "pl",
      "linuxConfiguration": {
        "disablePasswordAuthentication": false
      },
      "secrets": []
    },
    "networkProfile": {
      "networkInterfaces": [
        {
          "id": "/subscriptions/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/resourceGroups/mylittlesap/providers/Microsoft.Network/networkInterfaces/mylittlesap518"
        }
      ]
    },
    "diagnosticsProfile": {
      "bootDiagnostics": {
        "enabled": true,
        "storageUri": "https://mylittlesapdiag895.blob.core.windows.net/"
      }
    },
    "provisioningState": "Succeeded"
  },
  "type": "Microsoft.Compute/virtualMachines",
  "location": "westeurope",
  "id": "/subscriptions/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/resourceGroups/mylittlesap/providers/Microsoft.Compute/virtualMachines/mylittlesapVM",
  "name": "mylittlesapVM"

Po provedení této změny by jednotka měla být podporována akcelerátorem zápisu.