はじめに
Azure Stack 1807 updateがリリースされました。本エントリーでは、目玉の一つであるinfrastructure backupのアップデートをまとめます。
#AzureStack 1807 update is available https://t.co/jvctvF6dCD, add nodes, schedule infra backups, newer NRP API, multiple NICS per VM, notification for update availability and more. A lot more than one can put in a tweet:)
— Vijay Tewari (@vtango) 2018年8月10日
参考:What’s new in Azure Stack Update 1807 - Automatic infrastructure backups
Encryption Keyを生成するコマンドレットの追加
1807 update用のAzure Stack PowerShell Module 1.4.0に"New-AzSEncryptionKeyBase64"が追加されました。このコマンドによって、Azure Stackのバックアップを設定する際に必要となる"Encryption Key"の生成が簡単になりました。
1807 updateまで
$BackupEncryptionKeyBase64 = ""
$tempEncryptionKeyString = ""
foreach($i in 1..64) { $tempEncryptionKeyString += -join ((65..90) + (97..122) | Get-Random | % {[char]$_}) }
$tempEncryptionKeyBytes = [System.Text.Encoding]::UTF8.GetBytes($tempEncryptionKeyString)
$BackupEncryptionKeyBase64 = [System.Convert]::ToBase64String($tempEncryptionKeyBytes)
$BackupEncryptionKeyBase64
1807 update以降
$Encryptionkey = New-AzSEncryptionKeyBase64
$Encryptionkey
スケジュールバックアップ
Azure Stack自身が決められた頻度でバックアップを取得するようになりました。これまでは、スケジュールバックアップしたい場合、APIを叩く自動化を自前で実装しなければなりませんでした。大進歩です。
設定項目は"頻度"と"1日当たりの保持期間"です
設定項目 | パラメータ | デフォルト値 | 設定値 |
---|---|---|---|
頻度 | $frequencyInHours | 12 | 4~12 |
1日当たりの保持期間 | $retentionPeriodInDays | 7 | 2~14 |
PowerShellでスケジュールバックアップを設定する場合、次のようなスクリプトを使います。
$username = "azurestack\azurestackadmin"
$sharepath = "\\192.168.200.65\AzSBackupStore"
$password = Read-Host -Prompt ("Password for: " + $username) -AsSecureString
$Encryptionkey = New-AzSEncryptionKeyBase64
$key = ConvertTo-SecureString -String ($Encryptionkey) -AsPlainText -Force
$Encryptionkey = New-AzSEncryptionKeyBase64
$Encryptionkey
$key = ConvertTo-SecureString -String ($Encryptionkey) -AsPlainText -Force
Set-AzSBackupShare -BackupShare $sharepath -Username $username -Password $password `
-EncryptionKey $key -IsBackupSchedulerEnabled $True `
-BackupFrequencyInHours 12 -BackupRetentionPeriodInDays 2
Path : \\192.168.200.65\AzSBackupStore
UserName : azurestack\azurestackadmin
Password :
EncryptionKeyBase64 :
BackupFrequencyInHours : 12
AvailableCapacity : 67.1 GB
IsBackupSchedulerEnabled : True
NextBackupTime : 8/11/2018 11:52:54 PM
LastBackupTime :
BackupRetentionPeriodInDays : 2
Id : /subscriptions/a50b0d02-6ce6-4b62-9ba3-941932921d6e/resourceGroups/system.local/provide
rs/Microsoft.Backup.Admin/backupLocations/local
Name : local
Type : Microsoft.Backup.Admin/backupLocations
Location : local
Tags : {}
ASDKで設定したところ、NextBackupTimeが過去の時間になってしまいました。
手動でバックアップを1回実施したところ、バックアップを取得したタイミングからBackupFrequencyInHours後の時間がNextBackupTimeにスケジューリングされました。初回設定時は手動で1回バックアップした方がいいかもしれません。
GUIでのバックアップ実行
Admin Portal上でバックアップを実行できるようになりました。これまではPowerShellのみでした。大進歩です。
嘘表示の改善
Admin Portalに表示されるバックアップ先の空き容量が実際の値になりました。これまでは10Gがベタ書きされていました。なぜベタ書きでリリースしたのか。謎のままです。
まとめ
最低限の機能としてリリースされていたInfrastructure Backupが、運用管理面で使い勝手の良いものになりました。Hector and team, Great work!!!