Editar

Otimize a administração de instâncias do SQL Server em ambientes locais e multinuvem usando o Azure Arc

Azure
Azure Arc
Azure Kubernetes Service (AKS)
Azure Resource Manager
Azure SQL Managed Instance

Esta arquitetura de referência ilustra como usar o Azure Arc para gerenciamento, manutenção e monitoramento de instâncias do SQL Server em ambientes locais e multicloud.

Arquitetura

Diagram illustrating different scenarios that leverage Azure Arc to optimize administration of SQL Server instances residing on-premises or hosted by third-party cloud providers. The first group of scenarios consists of SQL Server instances running on physical servers or virtual machines. The second group of scenarios comprises on-premises, third-party cloud hosted Kubernetes clusters, or Azure Kubernetes Service clusters running on Azure Stack HCI, with Azure Arc data controller serving as an intermediary management layer. All of these scenarios offer integration with a range of Azure services, such as Azure Monitor and Log Analytics, Azure Policy, Microsoft Defender for Cloud, and Microsoft Sentinel.

Transfira um ficheiro do Visio desta arquitetura.

Componentes

A arquitetura consiste nos seguintes componentes e capacidades:

  • SQL Server. Esta plataforma de dados oferece uma ampla gama de opções de linguagens de desenvolvimento, tipos de dados, ambientes locais ou em nuvem e sistemas operacionais.
  • Azure Arc. Esse serviço baseado em nuvem estende o modelo de gerenciamento baseado no Azure Resource Manager para recursos que não são do Azure, incluindo máquinas virtuais (VMs), clusters Kubernetes e bancos de dados em contêineres.
  • Servidores habilitados para Azure Arc. Este serviço híbrido permite-lhe gerir as suas máquinas Windows e Linux, alojadas fora do Azure, na sua rede empresarial ou noutro fornecedor de nuvem. Isso é semelhante à forma como você gerencia VMs nativas do Azure.
  • Azure Arc habilitado SQL Server. Esta parte dos servidores habilitados para Azure Arc estende os serviços do Azure para instâncias do SQL Server, hospedadas fora do Azure no datacenter do cliente, na borda ou em um ambiente multicloud.
  • Kubernetes. Esta é uma plataforma de código aberto portátil e extensível para gerenciar e orquestrar cargas de trabalho em contêineres.
  • Serviço Kubernetes do Azure. Este é um serviço que simplifica a implantação de um cluster Kubernetes gerenciado no Azure.
  • Azure Stack HCI (20H2). Esta é uma solução de cluster de infraestrutura hiperconvergente (HCI) que hospeda cargas de trabalho virtualizadas do sistema operacional Windows e Linux e seu armazenamento em um ambiente local híbrido. Um cluster consiste de dois a 16 nós físicos.
  • Serviço Kubernetes do Azure no Azure Stack HCI. Esta é uma implementação do AKS, que automatiza a execução de aplicativos em contêineres em escala no Azure Stack HCI.
  • Kubernetes habilitado para Azure Arc. Esse serviço híbrido permite simplificar a implantação e o gerenciamento de clusters Kubernetes dentro ou fora do Azure.
  • Serviços de dados habilitados para Azure Arc. Esse serviço híbrido torna possível executar serviços de dados do Azure no local, na borda e em nuvens públicas usando o Kubernetes e a infraestrutura de sua escolha.
  • Instância Gerenciada SQL do Azure. Este serviço de banco de dados em nuvem inteligente e escalável combina a mais ampla compatibilidade do mecanismo de banco de dados SQL Server com todos os benefícios de uma plataforma como serviço totalmente gerenciada e perene.
  • Azure Arc habilitado SQL Managed Instance. Este serviço de dados SQL do Azure pode ser criado em sua escolha de infraestrutura que hospeda serviços de dados habilitados para Azure Arc.
  • Azure Resource Manager. O Azure Resource Manager é o serviço de implementação e gestão do Azure. Ele fornece uma camada de gerenciamento que permite criar, atualizar e excluir recursos em sua conta do Azure. Você usa recursos de gerenciamento, como controle de acesso, bloqueios e tags para proteger e organizar seus recursos após a implantação.
  • Azure Monitor. Este serviço baseado na nuvem maximiza a disponibilidade e o desempenho de aplicações e serviços ao fornecer uma solução abrangente para recolher, analisar e atuar em telemetria a partir de localizações do Azure e de outros locais.
  • Análise de logs. Esta é a principal ferramenta no portal do Azure para escrever consultas de log e analisar interativamente seus resultados.
  • Microsoft Sentinel. Esta é uma solução escalável, nativa da nuvem, de gerenciamento de eventos de informações de segurança (SIEM) e de resposta automatizada de orquestração de segurança (SOAR).
  • Microsoft Defender para Cloud. Esse sistema unificado de gerenciamento de segurança de infraestrutura fortalece a postura de segurança de seus datacenters e fornece proteção avançada contra ameaças em suas cargas de trabalho híbridas.
  • Backup do Azure. O serviço Azure Backup fornece soluções simples, seguras e económicas que lhe permitem fazer cópias de segurança dos seus dados e recuperá-los a partir da cloud do Microsoft Azure.

Detalhes do cenário

Utilizações típicas desta arquitetura:

  • Avaliando a configuração, disponibilidade, desempenho e conformidade do SQL Server habilitados pelo Azure Arc usando o Azure Monitor.
  • Detetar e remediar ameaças de segurança direcionadas ao Azure Arc habilitaram o SQL Server usando o Microsoft Defender for Cloud e o Microsoft Sentinel.
  • Automatizando a implantação e o gerenciamento da Instância Gerenciada SQL habilitada para Azure Arc no Kubernetes habilitado para Azure Arc em ambientes locais e multicloud.
  • Automatizando a implantação e o gerenciamento da Instância Gerenciada SQL habilitada para Azure Arc no Serviço Kubernetes do Azure (AKS) no Azure Stack HCI.

Recomendações

As recomendações seguintes aplicam-se à maioria dos cenários. Siga-as, a não ser que tenha requisitos específicos que as anulem.

Avalie, monitore e otimize o desempenho, a disponibilidade, a conformidade e a segurança das instâncias do SQL Server habilitadas para Azure Arc usando os serviços do Azure

Sem um modelo operacional e de gerenciamento consistente e unificado, administrar instâncias individuais do SQL Server pode levar a custos gerais significativos. Sem um conjunto adequado de ferramentas, você precisa de habilidades avançadas e esforços contínuos para identificar e manter a configuração de alto desempenho, resiliente e segura do SQL Server. É particularmente importante resolver esses desafios à medida que o cenário de tecnologia de negócios evolui e se torna cada vez mais complexo, com várias instâncias do SQL Server em execução em hardware diferente em datacenters locais, várias nuvens públicas e privadas e a borda.

Você pode usar instâncias do SQL Server habilitadas para Azure Arc, hospedadas em máquinas físicas e virtuais residentes fora do Azure, que executam um sistema operacional Windows ou Linux com um agente de Máquina Conectada instalado localmente. O agente é instalado automaticamente quando você registra a instância do SQL Server no Azure. O Azure Arc usa o agente para estabelecer uma conexão lógica entre o recurso que não é do Azure e o Azure. Depois de estabelecer essa conexão, um recurso que não seja do Azure se torna automaticamente um recurso híbrido do Azure, com sua própria identidade e uma ID de recurso do Azure Resource Manager. O Azure Resource Manager serve como a interface de gerenciamento que permite criar, modificar e excluir recursos do Azure. Depois de habilitar um recurso que não seja do Azure, você pode usar o Azure Resource Manager para facilitar a implementação de outros serviços do Azure que aprimoram a capacidade de gerenciamento de instâncias do SQL Server.

Nota

A instalação do Azure Connected Machine Agent também faz parte da implementação dos servidores habilitados para Azure Arc. Efetivamente, não há necessidade de sua instalação ao implementar o SQL Server habilitado para Azure Arc em servidores habilitados para Azure Arc.

Depois de satisfazer todos os pré-requisitos para o SQL Server habilitado para Azure Arc, incluindo a instalação do agente do Log Analytics, você terá automaticamente a opção de usar a seguinte funcionalidade do Azure:

  • Avaliação SQL sob demanda do SQL Server habilitado para Azure Arc. A avaliação depende do agente do Log Analytics para coletar dados relevantes e carregá-los no espaço de trabalho do Log Analytics que você designar. Com logs carregados no espaço de trabalho, a solução SQL Server Assessment Log Analytics gerencia a análise de dados e permite que você revise seus resultados diretamente no portal do Azure. Sempre que aplicável, a solução também fornece recomendações sobre possíveis melhorias. Os resultados da análise estão organizados em quatro categorias: qualidade da avaliação, segurança e conformidade, disponibilidade e continuidade, e desempenho e escalabilidade. O agente do Log Analytics verifica se há atualizações em intervalos regulares e as carrega automaticamente no espaço de trabalho do Log Analytics para garantir que os resultados que você está revisando estejam atualizados.

Nota

O agente do Log Analytics é comumente chamado de Microsoft Monitoring Agent (MMA).

  • Segurança de dados avançada para o SQL Server habilitado para Azure Arc. Essa funcionalidade ajuda você a detetar e corrigir anomalias de segurança e ameaças a instâncias do SQL Server habilitadas para Azure Arc. Como a Avaliação SQL sob demanda, para habilitar o SQL Server habilitado para Azure Arc, você precisa instalar o agente do Log Analytics no servidor que hospeda a instância do SQL Server. Você também deve habilitar o recurso Microsoft Defender for Cloud do Microsoft Defender for Cloud para definir automaticamente o escopo da coleta de dados e analisá-lo. Você pode revisar os resultados dessa análise no Microsoft Defender for Cloud e, depois de integrar o Microsoft Sentinel, usá-lo para investigar alertas de segurança diretamente no portal do Azure.

Automatize a implantação e o gerenciamento da Instância Gerenciada SQL habilitada para Azure Arc em ambientes locais e multicloud

A Instância Gerenciada SQL habilitada para Azure Arc torna-se uma implantação em contêiner executada sobre os serviços de dados habilitados para Azure Arc. Para hospedar sua implantação, você pode usar as seguintes opções:

  • Serviços de dados habilitados para o Azure Arc em um cluster Kubernetes habilitado para Azure Arc. O Kubernetes habilitado para Azure Arc dá suporte a uma ampla variedade de distribuições Kubernetes hospedadas em ambientes de nuvem ou locais em servidores virtuais ou físicos.
  • Serviços de dados habilitados para o Azure Arc em um cluster AKS hospedado em um cluster HCI do Azure Stack físico local.

Ambas as opções oferecem suporte a recursos equivalentes relacionados ao SQL Server porque esses recursos dependem da camada de serviços de dados habilitados para Azure Arc. No entanto, ao usar o Azure Stack HCI, você deve implementar o AKS porque isso simplifica a implementação e o gerenciamento da infraestrutura do Kubernetes e suas cargas de trabalho.

A Instância Gerenciada SQL habilitada para Azure Arc oferece quase 100% de compatibilidade com o mecanismo de banco de dados SQL Server mais recente. Isso facilita as migrações de elevação e deslocamento para serviços de dados habilitados para Azure Arc com alterações mínimas de aplicativos e bancos de dados.

A Instância Gerenciada SQL habilitada para Azure Arc depende do controlador de dados do Azure Arc para estabelecer e manter uma conexão lógica com o plano de controle do Azure Resource Manager. O controlador de dados torna-se um grupo de pods em execução dentro do cluster Kubernetes ou AKS local. Os pods orquestram tarefas operacionais e de gerenciamento de instâncias gerenciadas SQL, como provisionamento e desprovisionamento, failover automático, atualizações, dimensionamento, backup e restauração e monitoramento.

Ao planejar os serviços de dados habilitados para Azure Arc, você precisa decidir se o controlador de dados operará no modo de conectividade Conectado Diretamente ou Indiretamente Conectado. Sua decisão tem implicações importantes para os recursos de gerenciamento e a quantidade de dados que estão sendo enviados para o Azure. Se os serviços de dados habilitados para Azure Arc estiverem diretamente conectados ao Azure, você poderá gerenciá-los usando as interfaces e ferramentas padrão baseadas no Azure Resource Manager, incluindo o portal do Azure, a CLI do Azure (Interface de Linha de Comando do Azure) ou os modelos do Azure Resource Manager. Se os serviços de dados habilitados para Azure Arc estiverem indiretamente conectados ao Azure, o Azure Resource Manager fornecerá seu inventário somente leitura. Da mesma forma, o modo Diretamente Conectado é necessário se você quiser fornecer serviços de dados habilitados para Azure Arc com suporte para Microsoft Entra ID, controle de acesso baseado em função do Azure (Azure RBAC) ou integrá-los com serviços do Azure como Microsoft Defender for Cloud, Azure Monitor ou Backup do Azure.

Atenção

O modo de conectividade Conectado Indiretamente exige que uma quantidade mínima de dados seja entregue ao Azure para fins de inventário e cobrança pelo menos uma vez por mês.

Embora o modo Conectado Indiretamente ofereça funcionalidade reduzida, ele permite acomodar uma variedade de cenários que impedem o uso do modo Conectado Diretamente. Isso se aplica, por exemplo, a datacenters locais que bloqueiam a conectividade externa direta devido a requisitos comerciais ou regulatórios ou devido a preocupações com ataques externos ou exfiltração de dados. Ele também fornece suporte para locais de ponto de presença com conectividade limitada ou nenhuma conexão direta com a Internet.

O conjunto comum de recursos da Instância Gerenciada SQL habilitada para Azure Arc inclui:

  • Suporte para atualizações automatizadas. A Microsoft frequentemente fornece atualizações para os serviços de dados habilitados para Azure Arc por meio do Microsoft Container Registry (MCR). Isso inclui a manutenção de patches e novos recursos e o fornecimento de uma experiência semelhante aos serviços de dados gerenciados do Azure. No entanto, você controla o cronograma e a cadência de implantação.
  • Dimensionamento elástico. A arquitetura baseada em contêiner suporta inerentemente a escala elástica, com limites que dependem da capacidade de sua infraestrutura. Esse recurso acomoda cenários de burst com necessidades voláteis, incluindo ingestão e consulta de dados em tempo real, em qualquer escala, com tempo de resposta inferior a um segundo.
  • Provisionamento de autoatendimento. Com a orquestração baseada em Kubernetes, você pode provisionar um banco de dados em segundos usando a interface gráfica ou as ferramentas da CLI do Azure.
  • Monitorização e gestão flexíveis. Com a Instância Gerenciada SQL habilitada para o Azure Arc, você pode coletar e analisar logs e telemetria de APIs do Kubernetes e implementar o monitoramento local usando os painéis Kibana e Grafana. Você também tem a capacidade de provisionar e gerenciar a Instância Gerenciada SQL habilitada para Azure Arc usando várias ferramentas de gerenciamento padrão do SQL Server, incluindo o Azure Data Studio e a CLI do Azure, e ferramentas de gerenciamento do Kubernetes, como Helm e kubectl.

Além disso, como a Instância Gerenciada SQL habilitada para Azure Arc é executada no Kubernetes habilitado para Azure Arc ou AKS no Azure Stack HCI, você também pode usar seus recursos de gerenciamento, segurança e conformidade, incluindo:

Atenção

Verifique se os recursos do Azure Arc que você pretende usar em seu ambiente de produção estão disponíveis.

Considerações

O Microsoft Azure Well-Architected Framework é um conjunto de princípios orientadores que são seguidos nesta arquitetura de referência. As considerações a seguir são enquadradas no contexto desses princípios.

Otimização de custos

A otimização de custos consiste em procurar formas de reduzir despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, consulte Visão geral do pilar de otimização de custos.

  • O Azure Arc ajuda a minimizar ou até mesmo eliminar a necessidade de sistemas de gerenciamento e monitoramento locais, o que reduz a complexidade operacional e o custo, especialmente em ambientes grandes, diversificados e distribuídos. Isso ajuda a compensar os custos adicionais associados aos serviços relacionados ao Arco do Azure. Por exemplo, a segurança avançada de dados para a instância do SQL Server habilitada para Azure Arc requer a funcionalidade [Microsoft Defender for Cloud] do Microsoft Defender for Cloud, o que tem implicações de preço.
  • Contentorizar o seu ambiente do SQL Server utilizando a Instância Gerida SQL ativada para Azure Arc ajuda a aumentar a densidade e a mobilidade da carga de trabalho. Isso facilita uma utilização mais eficiente do hardware, o que tende a maximizar o retorno sobre o investimento (ROI) e minimizar os custos operacionais, ajudando a acelerar as iniciativas de consolidação do datacenter.

Excelência operacional

A excelência operacional abrange os processos operacionais que implantam um aplicativo e o mantêm em execução na produção. Para obter mais informações, consulte Visão geral do pilar de excelência operacional.

  • Para executar o registro de instâncias individuais do SQL Server habilitadas para Azure Arc, você pode executar interativamente um script disponível diretamente no portal do Azure. Para implantações em grande escala, você pode executar o mesmo script de maneira autônoma, aproveitando uma entidade de serviço do Microsoft Entra.

  • Para executar a avaliação sob demanda da configuração e da integridade das instâncias do SQL Server habilitadas para Azure Arc usando o Azure Monitor, você deve implantar o agente do Log Analytics no servidor que hospeda essa instância do SQL Server. Você pode automatizar essa implantação em escala usando a Política do Azure para habilitar o Azure Monitor para VMs para servidores habilitados para Azure Arc.

  • A Avaliação SQL sob demanda e a segurança avançada de dados estão disponíveis para instâncias do SQL Server que não estão habilitadas para o Azure Arc. No entanto, o Azure Arc simplifica seu provisionamento e configuração. Você pode, por exemplo, usar o recurso de extensão de VM para automatizar a implantação do agente do Log Analytics em servidores que hospedam instâncias do SQL Server.

  • A Instância Gerenciada do SQL habilitada para Azure Arc compartilha a base de código com a versão estável mais recente do SQL Server, fornecendo suporte para o mesmo conjunto de recursos de gerenciamento.

Eficiência de desempenho

Eficiência de desempenho é a capacidade da sua carga de trabalho para dimensionar para satisfazer as exigências que os utilizadores lhe colocam de forma eficiente. Para obter mais informações, consulte Visão geral do pilar de eficiência de desempenho.

  • A Instância Gerenciada SQL habilitada para Azure Arc compartilha a base de código com a versão estável mais recente do SQL Server, fornecendo suporte para o mesmo conjunto de recursos de alta escalabilidade e desempenho.

  • Ao planejar a implantação da Instância Gerenciada SQL habilitada para Azure Arc, você deve identificar a quantidade correta de computação, memória e armazenamento que serão necessários para executar o controlador de dados do Azure Arc e os grupos de servidores de instância gerenciada SQL pretendidos. Observe, no entanto, que você tem a flexibilidade de estender a capacidade do cluster Kubernetes ou AKS subjacente ao longo do tempo, adicionando nós de computação ou armazenamento adicionais.

  • O Kubernetes ou AKS oferece uma camada de abstração sobre a pilha de virtualização e o hardware subjacentes. As classes de armazenamento implementam essa abstração para armazenamento. Ao provisionar um pod, você precisa decidir qual classe de armazenamento usar para seus volumes. A sua decisão é importante do ponto de vista do desempenho porque uma escolha incorreta pode resultar num desempenho abaixo do ideal. Ao planejar a implantação da Instância Gerenciada SQL habilitada para Azure Arc, você deve considerar uma série de fatores que afetam a configuração de armazenamento kubernetes-storage-class-factors para instâncias de controlador de dados e de banco de dados.

Fiabilidade

A confiabilidade garante que seu aplicativo possa atender aos compromissos que você assume com seus clientes. Para obter mais informações, consulte Visão geral do pilar de confiabilidade.

  • Com a Instância Gerenciada SQL habilitada para o Azure Arc, o planejamento do armazenamento também é fundamental do ponto de vista da resiliência de dados. Se houver uma falha de hardware, uma escolha incorreta pode introduzir o risco de perda total de dados. Para evitar esse risco, você deve considerar uma série de fatores que afetam a configuração de armazenamento kubernetes-storage-class-factors para instâncias de controlador de dados e banco de dados.

  • Com a Instância Gerenciada SQL habilitada para o Azure Arc, você pode implantar bancos de dados individuais em um padrão de pod único ou múltiplo. Por exemplo, o nível de preços do desenvolvedor ou de uso geral implementa um padrão de pod único, enquanto um nível de preço crítico de negócios altamente disponível implementa um padrão de vários pods. Uma instância gerenciada SQL do Azure altamente disponível usa Grupos de Disponibilidade Always On para replicar os dados de uma instância para outra de forma síncrona ou assíncrona.

  • A Instância Gerenciada SQL habilitada para Azure Arc compartilha a base de código com a versão estável mais recente do SQL Server, fornecendo suporte para a maioria de seus recursos de alta disponibilidade.

  • A Instância Gerenciada SQL habilitada para Azure Arc fornece backups locais automáticos, independentemente do modo de conectividade. No modo Conectado Diretamente, você também tem a opção de aplicar o Backup do Azure para retenção de backup externo de longo prazo.

Segurança

A segurança oferece garantias contra ataques deliberados e o abuso de seus valiosos dados e sistemas. Para obter mais informações, consulte Visão geral do pilar de segurança.

  • A Instância Gerenciada do SQL habilitada para Azure Arc compartilha a base de código com a versão estável mais recente do SQL Server, fornecendo suporte para o mesmo conjunto de recursos de segurança.

  • Com a Instância Gerenciada SQL habilitada para o Azure Arc, no modo Diretamente Conectado, você deve fornecer ao controlador de dados acesso direto ao MCR para facilitar atualizações e patches automáticos. Como alternativa, você tem a opção de importar imagens de contêiner do MCR e disponibilizá-las em um registro de contêiner local e privado acessível pelo controlador de dados.

  • O Agente de Máquina Conectada do Azure comunica a saída para o Azure Arc pela porta TCP 443 usando o protocolo TLS (Transport Layer Security).

  • Com a Instância Gerenciada SQL habilitada para o Azure Arc no modo Diretamente Conectado, não há necessidade de abrir portas de entrada no perímetro dos datacenters locais. O controlador de dados iniciou a conectividade de saída de forma segura pela porta TCP 443 usando o protocolo TLS (Transport Layer Security).

Atenção

Para melhorar a segurança dos dados em trânsito para o Azure, você deve configurar os servidores que hospedam as instâncias do SQL Server para usar o Transport Layer Security (TLS) 1.2.

Próximos passos