Criar um pool de instâncias (versão prévia): Instância Gerenciada de SQL do Azure
Aplica-se a: Instância Gerenciada de SQL do Azure
Este artigo ensina a criar um pool de instâncias para a Instância Gerenciada de SQL do Azure usando o portal do Azure, o PowerShell ou a CLI do Azure, bem como a mover instâncias de e para o pool usando o PowerShell ou a CLI do Azure.
Os pools de instâncias possibilitam implantar várias instâncias com recursos compartilhados em uma única máquina virtual, o que fornece uma infraestrutura conveniente e econômica para migrar várias instâncias do SQL Server sem a necessidade de consolidar cargas de trabalho menores e com menos uso intensivo de computação em uma Instância Gerenciada SQL maior.
Observação
Os pools de instâncias da Instância Gerenciada de SQL do Azure estão em versão prévia no momento.
Pré-requisitos
Para criar um pool de instâncias, você deve ter:
- Uma rede virtual existente com um intervalo de sub-redes de tamanho adequado.
- O módulo Az.SQL mais recente para a versão atual do PowerShell ou a versão mais recente da CLI do Azure.
- Propriedades sobre instâncias e pools revisadas.
Considerações sobre tamanho de sub-rede
Planeje cuidadosamente o tamanho de sua sub-rede ao usar um pool de instâncias. Consulte Determinar o tamanho e intervalo de sub-rede necessários para obter diretrizes de dimensionamento de sub-rede.
Use a seguinte fórmula ao calcular o número de endereços IP exigidos por um pool de instâncias que contém diversas instâncias de uso geral:
2 * (5 + (3 * # of MIs)) + 5
# of MIs
refere-se ao número potencial máximo de instâncias que você planeja provisionar. O número máximo possível de instâncias no pool é 40.
Criar pool de instâncias
Você pode criar um pool de instâncias usando o portal do Azure, o PowerShell ou a CLI do Azure. Considere o seguinte:
- No momento, apenas a camada de serviço de uso geral em hardware da série padrão (Gen5) ou da série premium está disponível.
- O nome do pool pode conter apenas letras minúsculas, números e hifens e não pode começar com um hífen.
- O Benefício Híbrido do Azure é aplicado no nível do pool de instâncias. Você pode definir o tipo de licença ao criar o pool e atualizar o tipo de licença após a criação do pool.
Importante
A implantação de um pool de instâncias é uma operação demorada que pode levar até 4,5 horas.
Para criar um pool de instâncias no portal do Azure, siga estas etapas:
Pesquise por pools de instâncias no portal do Azure e selecione o serviço Pools de instâncias para abrir a página Pools de instâncias.
Na página Pools de instância, selecione + Criar para abrir a página Criar pool de Instâncias Gerenciadas de SQL do Azure:
Em Criar pool de Instâncias Gerenciadas de SQL do Azure:
- Forneça os detalhes do projeto e da instância na guia Informações básicas.
- Use a opção Configurar pool de instâncias em Computação + armazenamento para abrir a página Computação + Armazenamento e escolha a camada de serviço, o hardware de computação e a licença do SQL Server que o pool deve usar. Use Aplicar para salvar as configurações de computação e voltar para a página Criar pool de Instâncias Gerenciadas de SQL do Azure.
- Selecione uma rede virtual existente ou configure uma nova na guia Rede.
- (Opcional) Configure uma janela de manutenção não padrão para o pool na guia Configurações adicionais.
- Revise sua configuração na guia Revisar + criar e selecione Criar para criar seu pool de instâncias.
Você pode monitorar a implantação do pool em Notificações.
Depois de criar seu pool de instâncias, é possível criar uma instância no pool usando o portal do Azure. Também é possível mover uma instância existente para o pool usando o PowerShell ou a CLI do Azure.
Crie uma nova instância no pool
Após a criação do pool, você poderá criar uma instância no pool usando o portal do Azure, o PowerShell ou a CLI do Azure.
Considere o seguinte:
- É necessário especificar o tipo de licença da nova instância, que deve corresponder ao tipo de licença do pool.
Para criar uma instância dentro de um pool usando o portal do Azure, siga estas etapas:
Acesse a página SQL do Azure no portal do Azure.
Na página SQL do Azure, selecione + Criar para abrir a página Selecionar opção de implantação do SQL.
No bloco Instâncias gerenciadas de SQL, escolha Instância única como o tipo de recurso e selecione Criar para abrir a página Criar Instância Gerenciada de SQL do Azure.
Na guia Informações básicas da página Criar Instância Gerenciada de SQL do Azure:
- Selecione o grupo de recursos que contém o pool de instâncias existente.
- Escolha Sim para Pertence a um pool de instâncias? em Detalhes da instância gerenciada para criar sua instância dentro de um pool de instâncias.
- Selecione o pool na lista suspensa Pool de instâncias.
Preencha os detalhes restantes na página Criar Instância Gerenciada de SQL do Azure para criar sua instância dentro do pool. Para obter detalhes, consulte Criar Instância Gerenciada de SQL do Azure.
Selecione Revisar + criar para revisar as configurações da nova instância e use Criar para implantar a instância dentro do pool selecionado.
Mover instância existente
Você pode mover uma instância existente para dentro e para fora de um pool usando o PowerShell ou a CLI do Azure se:
- Está no mesmo grupo de recursos que o pool.
- Está na mesma rede virtual e sub-rede que o pool.
- Ajusta-se aos limites de recursos do pool de instâncias.
Quando uma instância existente é movida para um pool, as configurações no nível do pool prevalecem sobre as configurações no nível da instância. Por exemplo, a instância herda o tipo de licença e a janela de manutenção definida no nível do pool. Quando uma instância é movida para fora do pool, ela mantém as configurações herdadas do pool. A única exceção é com o tipo de licença, cujo padrão volta para 'LicenseIncluded' quando uma instância é removida do pool de instâncias: o Benefício Híbrido do Azure e o benefício dos direitos de failover híbrido devem ser configurados manualmente depois que uma instância é movida para fora de um pool.
No momento, não há suporte para mover uma instância existente dentro de um pool usando o portal do Azure.
Para mover uma instância para um pool com o PowerShell, forneça o nome do pool ao usar Set-AzSqlInstance:
$instance01 | Set-AzSqlInstance -InstancePoolName $instancePoolName
Para mover uma instância para fora de um pool, forneça um nome de pool em branco:
$instance01 | Set-AzSqlInstance -InstancePoolName ''
Conectar-se à instância em um pool
É possível optar por se conectar a uma instância em um pool com um ponto de extremidade privado ou um ponto de extremidade público. Para usar um ponto de extremidade privado, é necessário usar o Link Privado do Azure.
Para se conectar a uma instância em um pool com um ponto de extremidade público, é necessário habilitar o ponto de extremidade e permitir o tráfego do ponto de extremidade público no grupo de segurança de rede.
Criar um banco de dados
Criar um banco de dados para uma instância em um pool é o mesmo que criar um banco de dados para uma única instância. Você pode criar um banco de dados usando o portal do Azure, o PowerShell ou a CLI do Azure.
Para criar um banco de dados para uma instância gerenciada de SQL existente usando o portal do Azure, siga estas etapas:
- Acesse a Instância Gerenciada de SQL no portal do Azure.
- No painel Visão geral, selecione + Novo banco de dados na barra de comandos para abrir a página Criar banco de dados gerenciado do SQL do Azure.
- Forneça os detalhes do novo banco de dados.
- Selecione Revisar + criar para conferir a configuração do novo banco de dados e use Criar para implantá-lo.
Obter uso do pool
Você pode usar o PowerShell para determinar como os recursos estão sendo usados em um pool.
Para obter uma lista de instâncias em um pool, use Get-AzSqlInstance:
$instancePool | Get-AzSqlInstance
Para obter o uso de recursos do pool, use Get-AzSqlInstancePoolUsage:
$instancePool| Get-AzSqlInstancePoolUsage
Você pode adicionar o parâmetro -ExpandChildren para obter uma visão geral detalhada do pool e das instâncias dentro dele:
$instancePool | Get-AzSqlInstancePoolUsage –ExpandChildren
Para listar os bancos de dados em uma instância, use Get-AzSqlInstanceDatabase:
$databaseParams = @{
InstanceName = $instance01Name
ResourceGroupName = $resourceGroupName
}
$databases = Get-AzSqlInstanceDatabase @databaseParams
Observação
Para verificar os limites das instâncias implantadas em um pool e dos bancos de dados por pool de instâncias, examine os limites de recursos.
Atualizar um pool de instâncias
É possível atualizar as configurações de um pool de instâncias existente usando o PowerShell ou a CLI do Azure.
Você pode usar o PowerShell para fazer alterações nos limites do pool de instâncias.
O script de exemplo a seguir altera o tipo de licença, o tamanho do vCore e o tipo de hardware:
Alterar tipo de licença:
$instancePoolParams = @{
LicenseType = "BasePrice"
VCores = 16
ComputeGeneration = "Gen8"
}
$instancePool | Set-AzSqlInstancePool @instancePoolParams
Você também pode determinar agendas de janela de manutenção disponíveis:
$parameters = @{
Location = $location
MaintenanceScope = "SQLManagedInstance"
}
$configurations = Get-AzMaintenancePublicConfiguration @parameters
$maintenanceWindowOptions = $configurations | Where-Object { $_.Location -eq $location -and $_.MaintenanceScope -eq "SQLManagedInstance" }
Então você poderá alterar a janela de manutenção especificando uma opção de janela, como:
$instancePoolParams = @{
MaintenanceConfigurationId = $maintenanceWindowOptions[1].Id
}
$instancePool | Set-AzSqlInstancePool @instancePoolParams
Atualizar uma instância em pool
Se os limites de recursos do pool não tiverem sido excedidos, você poderá modificar as configurações de recursos de uma instância em um pool usando o PowerShell ou a CLI do Azure,
Para modificar parâmetros de recursos para uma instância em um pool, use Set-AzSqlInstance.
A seguinte amostra atualiza os vCores para 8 e altera o tamanho do armazenamento da Instance1 para 512 GB:
$instancePoolParams = @{
VCore = 8
StorageSizeInGB = 512
InstancePoolName = $instancePoolName
}
$instance1name | Set-AzSqlInstance @instancePoolParams
Excluir um pool de instância
Você poderá excluir um pool de instâncias usando o PowerShell ou a CLI do Azure, depois que todas as instâncias do pool tiverem sido excluídas ou movidas para fora do pool.
Para eliminar um conjunto de instâncias, use Remove-AzSqlInstancePool.
O seguinte exemplo de script exclui um pool de instâncias vazio:
$params = @{
ResourceGroupName = "<resource group name>"
Name = "<instance pool name>"
}
Remove-AzSqlInstancePool @params
Operações de pool de instâncias
A seguinte tabela mostra as operações de pool de instâncias disponíveis:
Comando | Portal do Azure | PowerShell | CLI do Azure |
---|---|---|---|
Criar um pool de instância | Sim | Sim | Sim |
Atualizar propriedades do pool | Não | Sim | Sim |
Verificar o uso e as propriedades de uma pool | Sim | Sim | Sim |
Excluir um pool de instância | Sim | Sim | Sim |
Criar uma instância gerenciada em um pool | Sim | Sim | Sim |
Mover uma instância gerenciada para um pool | Não | Sim | Sim |
Excluir uma instância gerenciada de um pool | Sim | Sim | Sim |
Mover uma instância gerenciada para fora de um pool | Não | Sim | Sim |
Criar um banco de dados em instância em um pool | Sim | Sim | Sim |
Excluir um banco de dados de uma Instância Gerenciada de SQL | Sim | Sim | Sim |
Para usar o PowerShell, instale a última versão do PowerShell Core e siga as instruções para Instalar o módulo do Azure PowerShell.
Comandos do PowerShell disponíveis:
Cmdlet | Descrição |
---|---|
New-AzSqlInstancePool | Criar um pool de instâncias. |
Get-AzSqlInstancePool | Devolve informações sobre um pool de instância. |
Set-AzSqlInstancePool | Definir propriedades para um pool de instâncias. |
Remove-AzSqlInstancePool | Remover um pool de instâncias. |
Get-AzSqlInstancePoolUsage | Retornar informações sobre o uso do pool de instâncias. |
Para operações relacionadas a instâncias dentro de pools e instâncias únicas, use os comandos de instância gerenciada padrão, mas o nome do pool de instâncias propriedade deve ser populada ao usar esses comandos para uma instância em um pool.
Limitações
Durante a versão prévia pública, as instâncias de um pool têm as seguintes limitações:
- O nome do pool pode conter apenas letras minúsculas, números e hifens e não pode começar com um hífen.
- Todas as instâncias do pool usam o mesmo modelo de licenciamento. Ao especificar um modelo de licença para uma instância que seja diferente do modelo de licença do pool, o modelo de licença do pool será usado. Quando a instância é movida para fora do pool, ela muda automaticamente para uma licença completa paga (
LicenseType
= 'LicenseIncluded'). Ative manualmente o Benefício Híbrido do Azure ou o benefício de direitos de failover híbrido para alterar o modelo de licenciamento. - As instâncias agrupadas devem pertencer à mesma sub-rede e grupo de recursos. Mover uma instância para dentro e para fora do pool só é possível na sub-rede do pool e do mesmo grupo de recursos.
- Somente a camada de serviço de uso geral está disponível em hardware da série padrão (Gen5) ou da série premium. A camada de serviço Uso Geral de Última Geração e Comercialmente Crítico e o hardware com otimização de memória da série Premium não estão disponíveis.
- O número máximo possível de instâncias no pool é 40.
- Um pool de instâncias só poderá ser excluído depois que todas as instâncias do pool forem excluídas ou movidas para fora do pool.
- Não é possível usar o portal do Azure para:
- Configurar o pool de instâncias. Use o PowerShell ou a CLI do Azure.
- Mover instâncias para dentro e para fora do pool. Use o PowerShell ou a CLI do Azure.
- Os seguintes recursos de Instância Gerenciada de SQL não têm suporte quando as instâncias estão em um pool:
- Grupos de failover. Os direitos de failover não estão disponíveis para instâncias de um pool.
- Iniciar/Parar.
- Redundância de Zona.
- O preço da instância de capacidade reservada não está disponível.
Solicitações de suporte
Criar e gerenciar solicitações de suporte para pools de instância no portal do Azure.
Para criar uma solicitação de suporte no portal do Azure, siga estas etapas:
Abra a página Nova solicitação de suporte no portal do Azure.
Forneça as seguintes informações em Nova solicitação de suporte:
- Em Tipo de problema, selecione
Technical
. - Escolha a Assinatura apropriada na lista suspensa.
- Em Tipo de serviço, selecione
SQL Managed Instance
. - Em Recurso, forneça o nome da sua Instância Gerenciada de SQL, se ela existir, ou selecione Pergunta geral se não for possível implantar sua instância no pool.
- Em Resumo, digite
instance pools
. - Em Tipo de problema, escolha
Create, Scale, Stop, Start, or Delete Resources
. - Em Subtipo de problema, escolha
Instance Pools
.
- Em Tipo de problema, selecione
Selecione Avançar nas páginas subsequentes até que você possa criar sua solicitação de suporte.
Para criar implantações maiores de Instância Gerenciada de SQL (com ou sem pools de instâncias), talvez seja necessário obter uma cota regional maior. Para mais informações, consulte Solicitar aumentos de cotas para Banco de Dados SQL do Azure. A lógica de implantação para pools de instâncias compara o consumo total de vCore no nível do pool com sua cota para determinar se você tem permissão para criar novos recursos sem aumentar ainda mais sua cota.
Conteúdo relacionado
- Recursos comuns do SQL
- Configuração da rede virtual da Instância Gerenciada de SQL
- Criar início rápido de instância gerenciada
- Migração de Instância Gerenciada de SQL usando o Serviço de Migração de Banco de Dados
- Monitorar a Instância Gerenciada de SQL do Azure usando o observador de banco de dados
- Preços da Instância Gerenciada de SQL