Implantar um serviço de banco de dados gerenciado com a Instância Gerenciada SQL habilitada para Azure Arc

Concluído

A Instância Gerenciada SQL habilitada para Azure Arc é um serviço SQL do Azure alimentado pelo mecanismo do SQL Server que pode ser implantado na infraestrutura de sua escolha.

Comparação com o Azure SQL

O Azure SQL é uma família de serviços de banco de dados implantados na infraestrutura do Azure:

SQL Server na Máquina Virtual do Azure

Esta opção de implantação do SQL do Azure permite que um produto SQL Server totalmente licenciado seja executado na versão de sua escolha no Windows ou Linux. O usuário gerencia tudo dentro da máquina virtual convidada, enquanto a Microsoft gerencia a infraestrutura. Essa opção é conhecida como IaaS (infraestrutura como serviço).

Instância Gerida do Azure SQL

Esta opção de implantação do SQL do Azure fornece uma instância do SQL Server pré-instalada e sem versão como um serviço totalmente gerenciado. O usuário tem acesso a quase 100% dos recursos de uma instância do mecanismo do SQL Server. A Microsoft gerencia todos os aspetos da plataforma e da infraestrutura necessários para hospedar a instância. Esta opção é um exemplo de uma plataforma como serviço (PaaS).

Base de Dados SQL do Azure

Esta opção de implantação do SQL do Azure fornece um banco de dados SQL Server contido alimentado por um SQL Server pré-instalado e sem versão como um serviço totalmente gerenciado. O usuário gerencia o banco de dados enquanto a Microsoft gerencia a instância, a plataforma e a infraestrutura SQL subjacentes. Esta opção também é um exemplo de uma plataforma como serviço (PaaS).

SQL Managed Instance preparado para o Azure Arc

A Instância Gerenciada SQL habilitada para Azure Arc é semelhante à Instância Gerenciada SQL do Azure. Tem características e capacidades de gestão semelhantes. A intenção da Instância Gerenciada SQL habilitada para Azure Arc é fornecer os mesmos recursos e experiência de PaaS (Platform as a Service) do Azure, enquanto o cliente escolhe e gerencia a infraestrutura usando a plataforma Kubernetes.

Comparação de funcionalidades

Para entender os recursos da Instância Gerenciada SQL habilitada para Arco do Azure, é importante examinar seus principais recursos, opções de implantação e integração com o Azure.

Principais características

Como a Instância Gerenciada SQL habilitada para Azure Arc é baseada no mecanismo do SQL Server, ela fornece recursos de instância principal quase 100% compatíveis com o SQL Server e a Instância Gerenciada SQL do Azure. A instância inclui uma interface de linguagem T-SQL compatível e todos os recursos de segurança, desempenho e disponibilidade. Você pode saber mais sobre os recursos da instância SQL Managed habilitada para Azure Arc na documentação da Microsoft.

Como a instância SQL Managed do Azure, quando você implanta a instância SQL Managed habilitada para Azure Arc, você obtém um SQL Server pré-instalado e sem versão. A instância SQL Managed habilitada para Azure Arc usa imagens de contêiner do Microsoft Container Registry (MCR).

A Instância Gerenciada SQL do Azure usa servidores gateway para abstrair o aplicativo dos detalhes de conectividade subjacentes. A Instância Gerenciada SQL habilitada para Arco do Azure também fornece abstração de conexão usando os serviços Kubernetes LoadBalancer ou NodePort.

Escalões de serviço

Como a Instância Gerenciada SQL do Azure, você pode implantar a instância SQL Gerenciada habilitada para Azure Arc com duas opções de implantação chamadas camadas de serviço:

  • Finalidade geral - Como o próprio nome indica, esta camada de serviço é para a maioria das cargas de trabalho. Essa camada de serviço tem um limite para recursos como núcleo e memória, mas vem com alta disponibilidade básica integrada por meio do Kubernetes e armazenamento compartilhado. As instâncias na camada de uso geral são mapeadas para recursos com suporte no SQL Server Standard Edition.

  • Business Critical - Esta camada de serviço foi projetada para cargas de trabalho que exigem o melhor desempenho e o mais alto nível de disponibilidade. Essa camada de serviço não tem limites para memória ou núcleos e usa grupos de disponibilidade para fornecer alta disponibilidade com escalabilidade horizontal de leitura. As instâncias na camada Crítica de Negócios mapeiam os recursos com suporte no SQL Server Enterprise Edition.

Ambos os níveis de serviço são cobrados por núcleo, mas também incluem a capacidade de usar o licenciamento do Benefício Híbrido do Azure e uma opção de desenvolvedor sem custo. A camada de serviço Crítica para os Negócios está atualmente em pré-visualização, pelo que não incorre em quaisquer encargos pela utilização. Você pode saber mais sobre as camadas de serviço na documentação da Microsoft.

Integração do Azure

Quando você implanta uma instância SQL Managed do Azure, a cobrança, o uso, as métricas e os logs podem ser integrados ao Azure. Além disso, você pode usar interfaces do Azure, como o portal, para implantar e configurar uma Instância Gerenciada SQL do Azure.

A integração com o Azure para instância SQL Gerenciada habilitada para Azure Arc depende do modo conectado que você usa.

A integração com o Azure é tratada automaticamente com o modo de conexão direta por meio dos agentes do Azure Arc e do controlador de dados do Azure Arc. As interfaces do Azure, como o portal do Azure, podem ser usadas para implantação e configuração.

Se você usar o modo de conexão indireta, uma quantidade mínima de dados deverá ser enviada ao Azure para fins de cobrança. Opcionalmente, você pode exportar dados, como métricas e logs. A implantação e a configuração por meio do portal do Azure não são suportadas com o modo de conexão indireta. No entanto, interfaces como a CLI do Azure e o kubectl podem ser usadas para implantação e configuração.

Comparação das capacidades de gestão

Como a instância SQL Managed habilitada para Azure Arc é um serviço gerenciado, é útil comparar os recursos de gerenciamento com a instância SQL Managed do Azure. As seções a seguir comparam o mecanismo sem versão, implantação e configuração, monitoramento, alta disponibilidade, recuperação de desastres e recursos de migração.

Sem versão

Um dos benefícios de usar a Instância Gerenciada SQL do Azure é a eliminação da necessidade de corrigir e atualizar o SQL Server, o sistema operacional e qualquer software de plataforma. O mecanismo para a instância gerenciada do SQL do Azure é frequentemente chamado de sem versão, porque não há o conceito de uma versão principal como no SQL Server. A instância é constantemente atualizada conforme necessário para patches de software ou novas funcionalidades.

A instância SQL Managed habilitada para Azure Arc também usa um mecanismo sem versão para que as atualizações possam ser aplicadas automaticamente, conforme necessário, por meio de imagens de contêiner atualizadas. A disponibilidade é mantida usando o poder do Kubernetes para parar e iniciar novos contêineres.

Implementação e configuração

A implantação da Instância Gerenciada SQL habilitada para Azure Arc é um processo fácil e declarativo, muito parecido com a Instância Gerenciada SQL do Azure. Ao implantar uma Instância Gerenciada SQL habilitada para Azure Arc, você pode especificar: uma camada de serviço, limites principais e de memória, especificações de classe de armazenamento e opções de configuração SQL, como SQL Server Agent, agrupamento e sinalizadores de rastreamento.

No modo de conexão direta, a Instância Gerenciada SQL habilitada para Azure Arc pode ser implantada com o portal do Azure. No modo conectado indireto, a Instância Gerenciada SQL habilitada para Azure Arc pode ser implantada usando a CLI do Azure (usando a extensão arcdata), kubectl ou Azure Data Studio.

Fora da instância SQL, a Instância Gerenciada SQL habilitada para Azure Arc também pode ser configurada no modo de conexão direta usando o portal do Azure. Em qualquer um dos modos conectados, as opções podem ser configuradas fora da instância SQL com a CLI do Azure ou kubectl.

Dentro da instância SQL, interfaces padrão do SQL Server, como sp_configure, ALTER SERVER CONFIGURATION e ALTER DATABASE podem ser usadas para configurar a instância e as opções do banco de dados.

Monitorização

Como a Instância Gerenciada SQL do Azure, você pode monitorar a instância SQL Gerenciada habilitada para Azure Arc usando o monitor do Azure para métricas importantes. Localmente dentro do cluster, você também pode usar o monitoramento interno com painéis Grafana para nós ou a instância SQL.

Os logs da Instância Gerenciada SQL habilitada para Azure Arc estão disponíveis para exibição no portal do Azure por meio da análise de log. Localmente dentro do cluster, você também pode usar logs integrados com o Kibana.

Como a Instância Gerenciada SQL habilitada para Azure Arc é baseada no SQL Server, os arquivos ERRORLOG padrão estão disponíveis para exibir erros SQL e detalhes da instância. A Instância Gerenciada SQL habilitada para Azure Arc também dá suporte a todas as Exibições de Gerenciamento Dinâmico (DMV) e Eventos Estendidos disponíveis.

Elevada disponibilidade

Um dos benefícios de usar um serviço gerenciado como a Instância Gerenciada SQL habilitada para Azure Arc é a alta disponibilidade. Como a Instância Gerenciada SQL do Azure, o método usado para obter alta disponibilidade depende da camada de serviço.

Para a camada de serviço de uso geral, a alta disponibilidade interna do Kubernetes StatefulSets é usada com armazenamento compartilhado.

Para a camada de serviço Business Critical, a alta disponibilidade interna é fornecida usando uma combinação de réplicas do Kubernetes StatefulSets e do SQL Server Always On Availability Group. As réplicas do Grupo de Disponibilidade são implantadas e configuradas automaticamente para o usuário. Como a Instância Gerenciada SQL do Azure, uma réplica somente leitura está disponível para descarregar cargas de trabalho de leitura. Os bancos de dados do sistema, como mestre e modelo, fazem parte do grupo de disponibilidade. Objetos no nível do sistema, como trabalhos do SQL Agent, estarão automaticamente disponíveis após um evento de failover.

Kubernetes LoadBalancers e NodePorts fornecem abstração de conexão para o aplicativo caso a instância se mova dentro do cluster. Além disso, um ponto de abstração de conexão somente leitura é fornecido para camadas de serviço críticas para os negócios.

Como a Microsoft gerencia a plataforma completa e a infraestrutura da Instância Gerenciada SQL do Azure, os usuários obtêm o benefício de um Contrato de Nível de Serviço (SLA). Como os clientes devem gerenciar a infraestrutura da Instância Gerenciada SQL habilitada para Azure Arc, o cliente possui e gerencia qualquer SLA.

Recuperação após desastre

Como a Instância Gerenciada SQL do Azure, a Instância Gerenciada SQL habilitada para Azure Arc fornece um sistema de backup automático para bancos de dados, incluindo restauração point-in-time. Os usuários podem executar manualmente COPY_ONLY backups e restaurá-los a qualquer momento.

Os usuários configuram um RPO (Recovery Point Objetive, objetivo de ponto de recuperação) desejado e um período de retenção. Essas configurações determinam com que frequência os backups de log de transações são feitos e por quanto tempo os backups são mantidos.

A Instância Gerenciada SQL do Azure fornece redundância interna para backups usando o armazenamento do Azure. Os usuários da Instância Gerenciada SQL habilitada para Azure Arc podem configurar uma classe de armazenamento Kubernetes específica para ser usada para backups SQL, mas são responsáveis por quaisquer necessidades de redundância.

Migração

Como as Instâncias Gerenciadas do SQL habilitadas para Azure Arc usam um mecanismo do SQL Server, as versões existentes do SQL Server podem ser migradas usando backup e restauração de banco de dados. Os bancos de dados podem ser restaurados diretamente do Armazenamento do Azure ou copiando um backup local no contêiner da Instância Gerenciada do SQL.

Interfaces para a Instância Gerenciada SQL habilitada para Azure Arc

As interfaces a seguir podem ser usadas com a Instância Gerenciada SQL habilitada para Azure Arc para gerenciar a instância e criar aplicativos:

SQL Server Management Studio (SSMS)

O SQL Server Management Studio (SSMS) é totalmente compatível para consultar e gerenciar uma Instância Gerenciada SQL habilitada para Azure Arc.

Azure Data Studio (ADS)

O Azure Data Studio (ADS) é uma ferramenta multiplataforma que pode consultar e gerenciar uma Instância Gerenciada SQL habilitada para Azure Arc. O ADS suporta consultas usando T-SQL junto com blocos de anotações T-SQL. Além disso, você pode usar a extensão ADS Azure Arc para criar e gerenciar recursos de serviços de dados habilitados para Azure Arc, como o controlador de dados, a Instância Gerenciada SQL e o servidor PostgreSQL (visualização).

Ferramentas de linha de comando SQL

Ferramentas de linha de comando SQL, como sqlcmd e bcp, têm suporte com a Instância Gerenciada SQL habilitada para Azure Arc.

Portal do Azure

Se estiver a utilizar o modo de ligação direta, pode criar, ver e gerir serviços de dados ativados para o Azure Arc a partir do portal do Azure. Além disso, se você carregar dados usando o modo conectado indireto, poderá exibir os detalhes da Instância Gerenciada SQL habilitada para Azure Arc no portal do Azure.

CLI do Azure

Você pode usar a extensão arcdata com a CLI (Interface de Linha de Comando) do Azure multiplataforma para criar, exibir e gerenciar serviços de dados habilitados para Azure Arc, como a Instância Gerenciada SQL. A CLI do Azure só pode ser usada no modo conectado indireto para implantar uma Instância Gerenciada SQL habilitada para Azure Arc. A CLI do Azure é a interface principal para carregar cobrança, métricas e logs ao usar o modo de conexão indireta.

kubectl

Você pode usar a interface de linha de comando (CLI) kubectl multiplataforma para criar, exibir e gerenciar serviços de dados habilitados para Azure Arc, incluindo a Instância Gerenciada SQL. A CLI do Azure é a interface de linha de comando preferida a ser usada com a Instância Gerenciada SQL habilitada para Azure Arc, mas você pode usar arquivos yaml com kubectl para criar e gerenciar recursos. O Kubectl só pode ser usado no modo de conexão indireta para implantar uma Instância Gerenciada SQL habilitada para Azure Arc. Existem alguns cenários, como a edição da configuração de restauração point-in-time padrão, que requer o uso de kubectl.

Drivers SQL

Você pode usar qualquer driver do SQL Server com suporte para seu aplicativo para se conectar e executar consultas em uma Instância Gerenciada SQL habilitada para Azure Arc. O suporte a drivers está incluído para linguagens de programação populares como C#, Java, Node.js, PHP, Python e Ruby.

Verifique o seu conhecimento

1.

Qual camada de serviço fornece alta disponibilidade com réplicas usando Grupos de Disponibilidade Always On?

2.

Você pode exibir cobrança, métricas e logs para a Instância Gerenciada SQL habilitada para Azure Arc no portal do Azure usando o modo conectado indireto.

3.

Os usuários configuram o backup automatizado para a Instância Gerenciada SQL habilitada para Azure Arc usando quais opções?

4.

Qual ferramenta pode ser usada para gerenciar uma Instância Gerenciada SQL habilitada para Azure Arc?