Partilhar via


O que é um pool de instâncias? - Instância Gerenciada SQL do Azure

Aplica-se a:Instância Gerenciada SQL do Azure

Este artigo apresenta uma visão geral da opção de implementação do pool de instâncias para Azure SQL Managed Instance, que traz benefícios substanciais de poupança de custos aos clientes.

Ao usar pools de instâncias, pode implementar múltiplas instâncias que partilham recursos. Esta configuração oferece uma infraestrutura conveniente e económica para migrar múltiplas bases de dados a partir de instâncias SQL Server. Isto elimina a necessidade de consolidar cargas de trabalho menores e menos intensivas em computação numa Instância SQL Gerida maior.

Para começar, veja Criar um pool de instâncias.

Visão geral

Ao usar pools de instâncias no Azure SQL Managed Instance, pode implementar múltiplas instâncias que partilham recursos numa única máquina virtual subjacente dentro de um cluster virtual.

Grupos de instâncias oferecem os seguintes benefícios principais:

  • Capacidade para alojar instâncias de 2-vCore, disponíveis exclusivamente em pools de instâncias.
  • Tempo de implantação de instância previsível e rápido (até 10 minutos).
  • Infraestrutura economizadora de custos ao migrar várias instâncias do SQL Server.

O diagrama a seguir ilustra um pool de instâncias com várias instâncias gerenciadas implantadas em um cluster virtual em uma sub-rede de rede virtual:

Diagrama do pool de instâncias com várias instâncias em um único pool.

O que há de novo?

Novembro de 2024 traz as seguintes capacidades:

  • Crie pools, crie instâncias dentro de um pool e modifique as definições de configuração do pool no portal do Azure.
  • Atualize as definições de configuração do pool, como tamanho de computação, licença e propriedades, usando PowerShell ou a CLI do Azure.
  • Suporte para hardware de série premium.
  • Mova uma instância para dentro e para fora do pool usando o PowerShell ou a CLI do Azure.
  • Suporte de pool de instâncias para preços de reservas.

Arquitetura

Os pools de instâncias têm uma arquitetura semelhante às instâncias gerenciadas únicas. Para dar suporte a implantações em redes virtuais do Azure e fornecer isolamento e segurança para os clientes, os pools de instâncias também contam com clusters virtuais. Um cluster virtual representa um conjunto dedicado de máquinas virtuais isoladas implantadas dentro da sub-rede de rede virtual do cliente. Todas as instâncias individuais e pools de instâncias dentro da mesma sub-rede pertencem ao mesmo cluster virtual. As instâncias dentro de um pool têm recursos de computação alocados para processos do SQL Server e componentes de gateway, que garantem um desempenho previsível. Após a implementação inicial do pool, as operações de gestão nas instâncias do pool são mais rápidas, pois os processos SQL são criados em recursos de computação que o serviço já tinha provisionado.

O tamanho de computação da máquina virtual baseia-se no número total de vCores alocados ao pool, que o serviço distribui entre as instâncias do pool. Esta arquitetura permite a partição da máquina virtual em várias instâncias que podem ser de qualquer tamanho suportado, incluindo 2 vCores (exclusivos para grupos de instâncias). Por exemplo, ao implantar um pool de instâncias 8-vCore, você pode implantar duas instâncias 2-vCore e uma instância 4-vCore. Em seguida, você pode migrar seus bancos de dados do SQL Server para as instâncias dentro do pool. Como os pools de instâncias oferecem suporte à integração de rede virtual nativa, você pode implantar vários pools de instâncias, bem como várias instâncias únicas, na mesma sub-rede.

Os pools de instâncias proporcionam um elevado nível de isolamento, pois cada instância recebe vCores dedicados na máquina virtual anfitriã subjacente. A principal diferença de um modelo de implementação de pool de instâncias em comparação com uma única instância gerida é que, ao usar pools de instâncias, múltiplos processos SQL Server são criados dentro da mesma máquina virtual. O recurso de serviço governa estes processos utilizando objetos de trabalho do Windows. Se o isolamento ao nível do processo não for suficiente, considere usar instâncias individuais em vez de pools de instâncias. As instâncias individuais têm apenas um processo SQL Server no nó da máquina virtual, que fornece isolamento ao nível da VM.

O diagrama a seguir ilustra a principal diferença de arquitetura entre os dois modelos de implantação:

Diagrama mostrando o pool de instâncias e duas instâncias individuais no cluster virtual.

Cenários de aplicação

Considere o uso de pools de instâncias para os seguintes cenários:

  • A migração de de um grupo de pequenas instâncias do SQL Server ao mesmo tempo, onde as instâncias são de 2 ou 4 vCores.
  • Você precisa de criação de instância rápida e previsível ou dimensionamento. Por exemplo, a implantação de um novo locatário em um ambiente de aplicativo SaaS multilocatário que requer recursos no nível da instância.
  • Ter um custo fixo ou um limite de gastos é importante. Por exemplo, executar ambientes compartilhados de desenvolvimento-teste ou demonstração de tamanho fixo (ou que mudam com pouca frequência), onde você implanta periodicamente instâncias gerenciadas quando necessário.

Os pools de instâncias funcionam bem para migrar múltiplas instâncias do SQL Server. Quando pré-provisiona recursos de computação partilhados com base nos requisitos totais de migração, reduz o custo total de posse após a migração. Por exemplo, considere um cenário em que migra quatro pequenas instâncias SQL Server on-premises para Azure SQL Managed Instance. Sem um pool de instâncias, você provisionaria quatro instâncias gerenciadas SQL únicas separadas com um mínimo de 4 vCores cada, todas com seus próprios recursos dedicados. Um pool de instâncias reduz esse custo, pois você pode implantar todas as instâncias com 2 vCores cada no pool onde os recursos são compartilhados pelo pool.

Propriedades da instância e do pool

Configura as seguintes propriedades ao nível do pool para todas as instâncias do pool:

Além disso, considere o seguinte:

  • As instâncias geridas SQL que cria em pools suportam os mesmos níveis de compatibilidade e funcionalidades disponíveis para instâncias geridas individuais.
  • Configura funcionalidades opcionais ou funcionalidades que exigem que escolha valores específicos (como colação ao nível da instância, fuso horário, endpoint público para tráfego de dados, grupos de failover) ao nível da instância. Cada instância num pool pode ter valores diferentes.
  • Como as instâncias que implementa num pool partilham a mesma máquina virtual, considere desativar funcionalidades que introduzam riscos de segurança mais elevados. Para controlar firmemente as permissões de acesso a estas funcionalidades, desative funcionalidades como integração com CLR, backup e restauro nativos, Correio de Base de Dados e outras.
  • Pode configurar o SQL Managed Instance para usar autenticação Microsoft Entra antes ou depois de a adicionar ao pool.
  • Cada instância gerida SQL que implementas num pool tem um Agente SQL Server separado.

Limites de recursos

Quando implementas uma instância num pool, a instância individual agrupada tem limites, e o pool geral tem limites no uso de recursos.

A tabela seguinte detalha os limites tanto para instâncias agrupadas como para o pool:


Limites da piscina Limites de instâncias agrupadas
Camada de serviço Fins Gerais Fins Gerais
Camada de hardware Série padrão (Gen5)
Série Premium
Série padrão (Gen5)
Série Premium
Número de vCores1 8-16-24-32-40-64-80 2-4-8-16-24-32-40-64-80
Armazenamento máximo 32 TB2 - 640 GB para 2 vCores
- 2 TB para 4 vCores
- 8 TB para 8 vCores
-16 TB para 16+ vCores
Número máximo de bases de dados 500 - 50 para 2 vCores
- 100 para 4+ vCores
Número máximo de instâncias 40 N/A

1 opções de vCore para instâncias em pool dependem do número de vCores disponíveis no pool de instâncias.
O limite de armazenamento do pool 2 é ditado pela soma do armazenamento de todas as instâncias no pool.

Para todos os outros limites ao nível da instância, veja Limites de recursos.

Considerações sobre desempenho

Embora as instâncias geridas por SQL dentro dos pools tenham vCore e RAM dedicados, partilham um disco local (para tempdb) e recursos de rede. É possível, embora improvável, experienciar um efeito de vizinho ruidoso quando várias instâncias no pool têm um elevado consumo de recursos ao mesmo tempo.

Se experienciar este comportamento, considere aumentar o tamanho do pool ou redistribuir as instâncias de maior consumo como instâncias isoladas fora do pool.

Faturamento do conjunto de instâncias

Os pools de instâncias ajudam-te a escalar computação e armazenamento de forma independente. Você paga por:

  • Capacidade de computação atribuída ao pool, medida em vCores.
  • Armazenamento associado a cada instância, medido em gigabytes (os primeiros 32 GB são gratuitos para cada instância).

Pagas o preço do vCore por um pool, independentemente de quantas instâncias implementes nesse pool. Não podes definir opções de preços diferentes para instâncias individuais num pool. Todas as instâncias no pool devem usar o mesmo modelo de licenciamento. Podes mudar o modelo de licença do pool depois de criares o pool.

O preço de computação (medido em vCores) depende se está a pagar o preço total da licença SQL Server. Estão disponíveis duas opções de preço:

  • Licença incluída: O preço das licenças do SQL Server está incluído.
  • Benefício Híbrido do Azure: um preço reduzido que inclui o Benefício Híbrido do Azure para SQL Server. Para usar este preço, deve ter licenças SQL Server existentes com Software Assurance.

Para obter detalhes completos sobre preços de pools de instâncias, consulte a secção pools de instâncias na página de preços de Instâncias Geridas SQL.

Observação

Quando cria grupos de instâncias em subscrições elegíveis para o benefício de dev-test, recebe automaticamente descontos de até 55% nas tarifas do Azure SQL Managed Instance.

Preços de reservas

O Azure Reservations ajuda-o a poupar nos custos de cálculo ao oferecer um grande desconto quando reserva o preço dos recursos por um período pré-determinado. Agora você pode alocar reservas para um pool de instâncias, o que cria a maneira mais econômica de executar várias instâncias.

Limitações

Para saber mais, consulte limitações do pool de instâncias.

Próximo passo