Уровень производительности масштабирования Azure по runbook

Я использую следующий код в качестве запланированной рабочей книги для автоматического масштабирования уровня производительности моей базы данных sql в Azure.

https://gallery.technet.microsoft.com/scriptcenter/Azure-SQL-Database-e957354f)

workflow Set-AzureSqlDatabaseEdition 
{ 
    param 
    ( 
    # Name of the Azure SQL Database server (Ex: bzb98er9bp) 
    [parameter(Mandatory=$true)]  
    [string] $SqlServerName, 

    # Target Azure SQL Database name  
    [parameter(Mandatory=$true)]  
    [string] $DatabaseName, 

    # Desired Azure SQL Database edition {Basic, Standard, Premium} 
    [parameter(Mandatory=$true)]  
    [string] $Edition, 

    # Desired performance level {Basic, S0, S1, S2, P1, P2, P3} 
    [parameter(Mandatory=$true)]  
    [string] $PerfLevel, 

    # Credentials for $SqlServerName stored as an Azure Automation credential asset 
    # When using in the Azure Automation UI, please enter the name of the credential asset for the "Credential" parameter 
    [parameter(Mandatory=$true)]  
    [PSCredential] $Credential 
) 

inlinescript 
{ 
    Write-Output "Begin vertical scaling script..." 

    # Establish credentials for Azure SQL Database server  
    $Servercredential = new-object System.Management.Automation.PSCredential($Using:Credential.UserName, (($Using:Credential).GetNetworkCredential().Password | ConvertTo-SecureString -asPlainText -Force))  

    # Create connection context for Azure SQL Database server 
    $CTX = New-AzureSqlDatabaseServerContext -ManageUrl “https://$Using:SqlServerName.database.windows.net” -Credential $ServerCredential 

    # Get Azure SQL Database context 
    $Db = Get-AzureSqlDatabase $CTX –DatabaseName $Using:DatabaseName 

    # Specify the specific performance level for the target $DatabaseName 
    $ServiceObjective = Get-AzureSqlDatabaseServiceObjective $CTX -ServiceObjectiveName "$Using:PerfLevel" 

    # Set the new edition/performance level 
    Set-AzureSqlDatabase $CTX –Database $Db –ServiceObjective $ServiceObjective –Edition $Using:Edition -Force 

    # Output final status message 
    Write-Output "Scaled the performance level of $Using:DatabaseName to $Using:Edition - $Using:PerfLevel" 
    Write-Output "Completed vertical scale" 
} 

}

Этот код работает как предназначено для отдельных баз данных на сервере SQL, но меня интересует масштабирование эластичного пула баз данных. Я пытался переписать код для целевого пула эластичных ресурсов вместо одной базы данных, но безуспешно. Я попытался заменить:

$Db = Get-AzureSqlDatabase $CTX –DatabaseName $Using:DatabaseName 

с чем-то, что предназначено для эластичного пула, но я не смог найти полезные функции на ( https://docs.microsoft.com/en-us/powershell/module/azure). Было бы здорово, если бы кто-то указал мне верное направление или сказал, как переписать код для масштабирования пула эластичных объектов в Azure.

0 ответов

Другие вопросы по тегам