Enable Write Accelerator
Van toepassing op: ✔️ Linux-VM's ✔️ Windows-VM's ✔️ Flexibele schaalsets ✔️ Uniforme schaalsets
Write Accelerator is een schijfmogelijkheid voor M-Series Virtual Machines (VM's) op Premium Storage met Azure Managed Disks exclusief. Zoals de naam al zegt, is het doel van de functionaliteit het verbeteren van de I/O-latentie van schrijffunctionaliteit voor Azure-Premium Storage. Write Accelerator is ideaal wanneer logboekbestandsupdates vereist zijn om op een zeer goed presterende manier op schijf te blijven werken voor moderne databases.
Write Accelerator is algemeen beschikbaar voor VM's uit de M-serie in de openbare cloud.
Planning voor het gebruik van Write Accelerator
Write Accelerator moet worden gebruikt voor de volumes die het transactielogboek of redo-logboeken van een DBMS bevatten. Het wordt afgeraden om een Write Accelerator voor de gegevensvolumes van een DBMS te gebruiken, omdat de functie is geoptimaliseerd voor gebruik op logboekschijven.
Write Accelerator werkt alleen in combinatie met beheerde Azure-schijven.
Belangrijk
Als Write Accelerator voor de besturingssysteemschijf van de VM inschakelen, wordt de VM opnieuw opgestart.
Als u Write Accelerator wilt inschakelen op een bestaande Azure-schijf die GEEN deel uitmaakt van een volume-build van meerdere schijven met Windows-schijf- of volumemanagers, Windows Opslagruimten, Windows Scale-out bestandsserver (SOFS), Linux LVM of MHOSTM, moet de werkbelasting die toegang heeft tot de Azure-schijf worden afgesloten. Databasetoepassingen die gebruikmaken van de Azure-schijf moeten worden afgesloten.
Als u Write Accelerator wilt in- of uitschakelen voor een bestaand volume dat is gebouwd op meerdere Azure Premium Storage-schijven en gestriped met behulp van Windows-schijf- of volumemanagers, Windows Opslagruimten, Windows Scale-out bestandsserver (SOFS), Linux LVM of MLVM, moeten alle schijven die het volume bouwen b e is ingeschakeld of uitgeschakeld voor Write Accelerator in afzonderlijke stappen. Voordat u de virtuele Azure-Write Accelerator in een dergelijke configuratie in- of uit te stellen, moet u de Azure-VM afsluiten.
Het inschakelen Write Accelerator voor besturingssysteemschijven mag niet nodig zijn voor SAP-gerelateerde VM-configuraties.
Beperkingen bij het gebruik van Write Accelerator
Wanneer u Write Accelerator voor een Azure-schijf/VHD gebruikt, gelden deze beperkingen:
- De Premium schijf caching moet worden ingesteld op 'Geen' of 'Alleen-lezen'. Alle andere cachingmodi worden niet ondersteund.
- Momentopnamen worden momenteel alleen ondersteund Write Accelerator ingeschakelde gegevensschijven en niet de besturingssysteemschijf. Tijdens de back-up maakt Azure Backup service automatisch een back-up en Write Accelerator gegevensschijven die zijn gekoppeld aan de VM.
- Alleen kleinere I/O-grootten (<=512 KiB) nemen het versnelde pad. In workloadsituaties waarin gegevens bulksgewijs worden geladen of waarin de transactielogboekbuffers van de verschillende DBMS's in een grotere mate worden opgevuld voordat ze naar de opslag worden opgeslagen, is de kans groot dat de I/O die naar de schijf wordt geschreven, niet het versnelde pad neemt.
Er gelden limieten voor Azure Premium Storage-VHD's per VM die kunnen worden ondersteund door Write Accelerator. De huidige limieten zijn:
| VM-SKU | Aantal Write Accelerator schijven | Write Accelerator schijf-IOPS per VM |
|---|---|---|
| M416ms_v2, M416s_v2 | 16 | 20.000 |
| M208ms_v2, M208s_v2 | 8 | 10.000 |
| 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 | 10.000 |
| M32ms, M32ls, M32ts, M32s, M32dms_v2, M32ms_v2 | 4 | 5000 |
| M16ms, M16s | 2 | 2500 |
| M8ms, M8s | 1 | 1250 |
De IOPS-limieten zijn per VM en niet per schijf. Alle Write Accelerator schijven delen dezelfde IOPS-limiet per VM. Gekoppelde schijven mogen de IOPS-limiet voor schrijfversnellers voor een VM niet overschrijden. Hoewel de gekoppelde schijven bijvoorbeeld 30.000 IOPS kunnen doen, staat het systeem niet toe dat de schijven hoger zijn dan 20.000 IOPS voor M416ms_v2.
Write Accelerator inschakelen op een bepaalde schijf
In de volgende secties wordt beschreven hoe Write Accelerator kunnen worden ingeschakeld op Azure Premium Storage-VHD's.
Vereisten
De volgende vereisten zijn van toepassing op het gebruik van Write Accelerator op dit moment:
- De schijven op wie u Azure-schijven wilt Write Accelerator, moeten beheerde Azure-schijven zijn op Premium Storage.
- U moet een VM uit de M-serie gebruiken
Azure Write Accelerator inschakelen met behulp van Azure PowerShell
De Azure Power Shell-module van versie 5.5.0 bevat de wijzigingen in de relevante cmdlets voor het in- of uitschakelen van Write Accelerator voor specifieke Azure Premium Storage-schijven. Als u schijven wilt inschakelen of implementeren die door Write Accelerator worden ondersteund, zijn de volgende Power Shell-opdrachten gewijzigd en uitgebreid om een parameter voor de Write Accelerator.
Er is een nieuwe switchparameter , -WriteAccelerator, toegevoegd aan de volgende cmdlets:
Als u de parameter niet opgeeft, wordt de eigenschap op false (onwaar) en worden schijven geïmplementeerd die niet worden ondersteund door Write Accelerator.
Er is een nieuwe switchparameter - OsDiskWriteAccelerator toegevoegd aan de volgende cmdlets:
Als u de parameter niet opgeeft, wordt de eigenschap standaard ingesteld op false en worden schijven die geen gebruik maken van Write Accelerator.
Er is een nieuwe optionele Booleaanse parameter (niet-nullable) - OsDiskWriteAccelerator toegevoegd aan de volgende cmdlets:
Geef een $true of $false ondersteuning van Azure-Write Accelerator met de schijven.
Voorbeelden van opdrachten kunnen er als volgende uitzien:
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
Er kunnen twee hoofdscenario's worden gescript, zoals wordt weergegeven in de volgende secties.
Een nieuwe schijf toevoegen die wordt ondersteund door Write Accelerator powershell
U kunt dit script gebruiken om een nieuwe schijf toe te voegen aan uw VM. De schijf die met dit script is gemaakt, gebruikt Write Accelerator.
Vervang myVM , , , grootte van de schijf en LunID van de schijf door waarden die myWAVMs geschikt zijn voor uw specifieke log001 implementatie.
# 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
Een Write Accelerator op een bestaande Azure-schijf inschakelen met behulp van PowerShell
U kunt dit script gebruiken om een Write Accelerator een bestaande schijf in te stellen. Vervang myVM , en door waarden die geschikt zijn voor uw specifieke myWAVMs test-log001 implementatie. Het script voegt Write Accelerator toe aan een bestaande schijf waar de waarde voor $newstatus is ingesteld op '$true'. Als u de waarde '$false' gebruikt, worden Write Accelerator op een bepaalde schijf uitgeschakeld.
#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
Notitie
Door het bovenstaande script uit te voeren, wordt de opgegeven schijf losgekoppeld, Write Accelerator ingeschakeld op de schijf en wordt de schijf opnieuw gekoppeld
Write Accelerator inschakelen met behulp van de Azure-portal
U kunt deze Write Accelerator via de portal waar u de instellingen voor schijf-caching opgeeft:

Write Accelerator inschakelen met behulp van Azure CLI
U kunt de Azure CLI gebruiken om de Write Accelerator.
Als u Write Accelerator op een bestaande schijf wilt inschakelen, gebruikt u az vm update.U kunt de volgende voorbeelden gebruiken als u diskName, VMName en ResourceGroup vervangt door uw eigen waarden: az vm update -g group1 -n vm1 -write-accelerator 1=true
Als u een schijf wilt Write Accelerator ingeschakeld, gebruikt u az vm disk attach.U kunt het volgende voorbeeld gebruiken als u uw eigen waarden vervangt: az vm disk attach -g group1 -vm-name vm1 -disk d1 --enable-write-accelerator
Als u Write Accelerator, gebruikt u az vm updateen zet u de eigenschappen op false: az vm update -g group1 -n vm1 -write-accelerator 0=false 1=false
Inschakelen Write Accelerator behulp van REST API's
Als u wilt implementeren via Azure REST API, moet u de Azure-armclient installeren.
Armclient installeren
Als u armclient wilt uitvoeren, moet u deze installeren via Chocolatey. U kunt deze installeren via cmd.exe of PowerShell. Gebruik verhoogde rechten voor deze opdrachten ('Als administrator uitvoeren').
Voer cmd.exe opdracht uit met behulp van cmd.exe opdracht: @"%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"
Voer met behulp van Power Shell de volgende opdracht uit: Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
U kunt nu de armclient installeren met behulp van de volgende opdracht in cmd.exe of PowerShell choco install armclient
Uw huidige VM-configuratie verkrijgen
Als u de kenmerken van uw schijfconfiguratie wilt wijzigen, moet u eerst de huidige configuratie in een JSON-bestand op te halen. U kunt de huidige configuratie krijgen door de volgende opdracht uit te voeren: armclient GET /subscriptions/<<subscription-ID<</resourceGroups/<<ResourceGroup>>/providers/Microsoft.Compute/virtualMachines/<<virtualmachinename>>?api-version=2017-12-01 > <<filename.json>>
Vervang de termen in '<< >>' door uw gegevens, inclusief de bestandsnaam die het JSON-bestand moet hebben.
De uitvoer kan er als volgende uitzien:
{
"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"
Werk vervolgens het JSON-bestand bij en schakel Write Accelerator schijf met de naam 'log1' in. Dit kan worden bereikt door dit kenmerk toe te voegen aan het JSON-bestand na de cache-vermelding van de schijf.
{
"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
}
Werk vervolgens de bestaande implementatie bij met deze opdracht: armclient PUT /subscriptions/<<subscription-ID<</resourceGroups/<<ResourceGroup>>/providers/Microsoft.Compute/virtualMachines/<<virtualmachinename>>?api-version=2017-12-01 @<<filename.json>>
De uitvoer moet er als de onderstaande uitzien. U kunt zien dat Write Accelerator voor één schijf is ingeschakeld.
{
"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"
Nadat u deze wijziging hebt aangebracht, moet het station worden ondersteund door Write Accelerator.