Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A fase de avaliação garante que você tenha visibilidade total de todos os componentes, dependências e requisitos antes de migrar para o Microsoft Azure. Ao coletar informações detalhadas sobre arquitetura, desempenho, segurança, código e bancos de dados, você pode prever problemas, minimizar riscos e tomar decisões de migração informadas.
| Tipo de carga de trabalho | Ferramenta de descoberta | Ferramenta de avaliação | Examples |
|---|---|---|---|
| On-premises | Azure Migrate | • Azure Migrate • Dr Migrate |
• Servidores físicos • VMware VMs • Hyper-V VMs • Bancos de dados SQL • Aplicativos Web |
| IaaS (infraestrutura do AWS) | Azure Migrate | • Azure Migrate • Diretrizes para migração do AWS para o Azure |
• Instâncias do AWS EC2 • Bancos de dados RDS do AWS • Volumes de EBS do AWS |
| IaaS (infraestrutura do Google Cloud) | Azure Migrate | • Azure Migrate • Diretrizes de migração do Google Cloud para o Azure |
VMs do Google Cloud Compute Engine Google Cloud SQL • Google Cloud Persistent Disk |
| PaaS (serviços de plataforma) do AWS | Gerenciador de Recursos do AWS | • Diretrizes de migração do AWS para o Azure • Comparação de serviços do AWS e do Azure • Cloudockit |
• Lambda do AWS • AWS Elastic Beanstalk • AWS DynamoDB |
| Serviços de plataforma do Google Cloud (PaaS) | Inventário de ativos do Google Cloud | • Guia do Google Cloud para o Azure • Comparação de serviços do Google Cloud e do Azure • Cloudockit |
• Google Cloud BigQuery • Google Cloud App Engine • Google Cloud Run Functions (funções do Google Cloud Run) |
| Código do aplicativo |
CAST Highlight • Dr Migrate |
• Dr Migrate • CloudPilot • Realce CAST • CloudAtlas • GitHub Copilot |
• GitHub • Repositórios do Azure • GitLab |
Avaliar a arquitetura da carga de trabalho
Uma avaliação de arquitetura completa fornece visibilidade de todos os componentes da carga de trabalho e como eles interagem. Essa visibilidade dá suporte a um planejamento de migração preciso identificando quais componentes precisam se mover juntos e quais componentes podem exigir modificação.
Use ferramentas de avaliação. Ferramentas como o Azure Migrate ou outros produtos automatizam a identificação de componentes e configurações de workloads. Essas ferramentas reduzem o esforço manual e fornecem coleta de dados consistente em seu ambiente, embora possam perder dependências não documentadas. Você pode usar uma ferramenta como o Cloudockit para gerar seus diagramas. Você também pode criar seus próprios diagramas usando ícones do Azure ou ajustando os diagramas para download no Centro de Arquitetura do Azure.
Valide a arquitetura com experiência no assunto. Os proprietários da carga de trabalho podem confirmar as descobertas da ferramenta e identificar informações ausentes ou desatualizadas. Realize entrevistas ou sessões de revisão de arquitetura para fechar lacunas nos dados de descoberta automatizados.
Arquitetura do documento. Armazene diagramas de arquitetura, listas de componentes e dados de configuração em um formato que dê suporte a planejamento e validação. Use ferramentas como o Microsoft Visio, planilhas ou wikis do Azure DevOps para manter essas informações.
Avaliar componentes da carga de trabalho
Para cada carga de trabalho, colete métricas detalhadas de desempenho e uso da linha de base do ambiente atual. Esses dados são essenciais para o dimensionamento correto dos recursos do Azure e para comparar o desempenho após a migração.
Coletar métricas de carga de trabalho. Acompanhe a utilização da CPU, o uso de memória, a E/S do disco (leituras/gravações, IOPS), a taxa de transferência de rede e a simultaneidade de pico ou a carga do usuário. Identifique picos diários ou semanais para entender as necessidades de capacidade. Medir tempo médio de resposta para transações de usuário, número de trabalhos processados por hora e quaisquer métricas relacionadas ao Acordo de Nível de Serviço (SLA). Essas informações ajudam a garantir que as cargas de trabalho migradas atendam aos mesmos requisitos de desempenho de negócios.
Capturar detalhes da configuração. Observe configurações de dimensionamento, tamanhos de VM (máquina virtual) atuais, especificações de servidor físico (núcleos de CPU, RAM), tipo e versão do sistema operacional, tipo de armazenamento (SSD/HDD) e capacidade e qualquer hardware especial, como GPUs. Esses detalhes informam a escolha de tamanhos de VM do Azure ou serviços de PaaS. Registre também informações de licenciamento de software. Essas informações podem habilitar o uso do Benefício Híbrido do Azure ou exigir a migração de licença.
Documente todas as configurações de segurança e identidade. Inventário de todas as configurações de segurança e identidade: listar contas de serviço, credenciais codificadas, métodos de criptografia usados e regras de firewall. Essas configurações precisam ser replicadas ou ajustadas no Azure.
Componente de segurança Action Purpose Inventário de identidades Registrar todas as contas de serviço, contas de usuário e chaves de API que os aplicativos usam para autenticação Afeta o sequenciamento do processo de migração quando você escolhe entre abordagens de lift-and-shift ou modernização. Documentação de criptografia Documentar métodos de criptografia atuais para dados em repouso e em trânsito Mapear esses requisitos para os serviços de criptografia do Azure para manter os padrões de segurança Configuração de segurança de rede Capturar regras de segurança de rede, configurações de firewall e listas de controle de acesso Use essas informações para criar grupos de segurança de rede do Azure e políticas de acesso Identificar problemas de compatibilidade. As ferramentas automatizadas fornecem análise sistemática de sistemas operacionais, middleware e estruturas de aplicativos em relação às políticas de suporte do Azure. Essas ferramentas sinalizam componentes sem suporte, preteridos ou que se aproximam do fim do suporte. Ferramentas como as Migrações para Azure e outras ferramentas de avaliação podem detectar esses problemas em seu ambiente sem revisões de configuração manuais.
Listar as correções necessárias. Crie uma lista abrangente de todos os problemas de compatibilidade e seus requisitos de correção. Priorize os que devem ser corrigidos antes da migração (bloqueadores) e os que podem ser resolvidos após a migração, se necessário. Envolva os fornecedores, se necessário, para entender os caminhos de atualização para o software comercial.
Mapear dependências internas e externas
Mapear dependências internas. Mapeie como os componentes de uma carga de trabalho se comunicam entre si e com outros sistemas em sua organização. Use ferramentas de monitoramento de rede ou monitoramento de desempenho de aplicativos para ver conexões de runtime entre serviços. Esse mapeamento ajuda você a determinar o agrupamento em ondas de migração. Por exemplo, se o Aplicativo A chamar constantemente o Banco de Dados B, você os migrará juntos ou fornecerá conectividade de rede entre o Azure e o ambiente de origem até que ambos estejam na nuvem.
Identifique todas as dependências externas. Liste todos os serviços externos com os quais a carga de trabalho interage. Essas dependências incluem plataformas SaaS, APIs de parceiros, sistemas locais e serviços de terceiros que os aplicativos precisam para funcionar corretamente. Você deve catalogar todas as integrações upstream e downstream, serviços compartilhados e pipelines de dados para entender o cenário de dependência completo. APIs de documento, sistemas de mensagens, processos ETL, bancos de dados compartilhados, métodos de autenticação, padrões de troca de dados e contratos de nível de serviço. Examine a documentação de integração e realize entrevistas com proprietários de aplicativos para garantir a visibilidade completa de todas as conexões externas. Esse mapeamento abrangente impede falhas de integração e dá suporte ao sequenciamento de migração preciso.
Envolva os proprietários da carga de trabalho para validar e concluir os dados de dependência. Os proprietários de carga de trabalho oferecem insights críticos sobre o comportamento do sistema, os recursos compartilhados e as integrações informais que as ferramentas podem não detectar. Você deve realizar entrevistas estruturadas ou workshops com proprietários de aplicativos e cargas de trabalho para validar dados gerados por ferramentas e identificar dependências não documentadas. Esta etapa garante a integridade e a precisão do mapa de dependência e ajuda a capturar o contexto de negócios que informa o sequenciamento de migração.
Documente todas as dependências em um repositório central. Armazene dados de dependência em um formato que dá suporte ao planejamento de migração e colaboração entre equipes, como planilhas, diagramas de arquitetura ou ferramentas de mapeamento de dependência. Verifique se o repositório está acessível e atualizado regularmente para refletir as alterações durante o processo de migração.
Use dependências para planejar migrações. Organize cargas de trabalho em ondas de migração que minimizem dependências quebradas. Para obter mais informações, consulte Planejamento de ondas de migração.
Avaliar a conformidade e os requisitos operacionais
Identifique os requisitos de conformidade regulatória. Uma compreensão clara dos requisitos de conformidade regulatória garante que sua arquitetura do Azure esteja alinhada com obrigações legais, do setor e organizacionais. Esses requisitos influenciam a seleção da região, a disponibilidade do serviço, a proteção de dados e as decisões de arquitetura. Os padrões regulatórios e de conformidade incluem políticas globais, regionais, específicas do setor e internas. Esses padrões podem incluir GDPR, HIPAA, FedRAMP, ISO 27001 ou regulamentações financeiras como SOX. Cada padrão impõe requisitos específicos sobre manipulação de dados, controle de acesso, criptografia e auditoria. Você deve identificar todos os padrões aplicáveis para cada carga de trabalho consultando os stakeholders legais, de conformidade e de segurança.
Documente SLAs, RPOs e RTOs. SLAs (contratos de nível de serviço), RPOs (objetivos de ponto de recuperação) e RTOs (objetivos de tempo de recuperação) definem níveis aceitáveis de disponibilidade e perda de dados. Essas métricas orientam o design de estratégias de backup, replicação e failover. Você deve documentar esses valores para cada carga de trabalho para garantir que a arquitetura atenda às expectativas de continuidade dos negócios. Consulte Definir requisitos de confiabilidade.
Classifique cada ambiente de carga de trabalho. Normalmente, as cargas de trabalho são executadas em ambientes de produção, teste ou desenvolvimento. Cada ambiente tem diferentes requisitos de disponibilidade, segurança e desempenho. Você deve documentar a classificação de ambiente para cada carga de trabalho para informar o sequenciamento de migração, controles de acesso e alocação de recursos.
Valide a integração do ISV com o Azure. Muitas cargas de trabalho dependem de software de ISVs (fornecedores de software independentes). Você deve confirmar que todos os softwares ISV são compatíveis com o Azure antes da migração. Use a documentação do fornecedor, os ambientes de teste ou a validação direta com o ISV. Identifique as atualizações, substituições ou alterações de configuração necessárias. Determine também se o Benefício Híbrido do Azure ou outros modelos de licenciamento se aplicam. Inclua os custos de licenciamento e os ajustes de compatibilidade em seu plano de migração para orçamento e agendamento precisos.
Avaliar o código do aplicativo
Uma avaliação de código de aplicativo identifica problemas de compatibilidade e oportunidades de modernização que podem afetar o sucesso da migração. Essa avaliação é essencial para garantir que os aplicativos sejam executados de forma confiável no Azure e planejem ondas de migração com eficiência. Você deve avaliar o código do aplicativo para detectar bloqueadores antecipadamente, reduzir o risco de falha de migração e informar as decisões de arquitetura de destino.
Usar ferramentas automatizadas para avaliar o código do aplicativo
Use a ferramenta de modernização do aplicativo GitHub Copilot (.NET e Java). A modernização do aplicativo GitHub Copilot fornece avaliações detalhadas para cargas de trabalho .NET e Java. Ele combina os recursos de avaliação do AppCAT com a assistência orientada por IA do Copilot para tornar a modernização mais rápida e fácil. Essa integração atua como um parceiro de codificação, ajudando você a:
- Capturar dependências relacionadas ao aplicativo
- Revisar e otimizar o código-fonte para os serviços do Azure
- Atualizar código e corrigir CVEs (Vulnerabilidade e Exposições Comuns)
- Colocar aplicativos em contêiner para implantação flexível
- Gerar arquivos de implantação para simplificar a migração
- Reduzir o esforço com codificação assistida por IA
Use ferramentas de terceiros para outros idiomas do aplicativo. Ferramentas como CloudPilot e CAST Highlight dão suporte a linguagens como Python, JavaScript, Node.jse Go. Essas ferramentas identificam as alterações no nível de código necessárias para a compatibilidade do Azure e fornecem insights de modernização. Use essas ferramentas para avaliar cargas de trabalho non-.NET e não Java.
Use os resultados da avaliação para informar as decisões de arquitetura de destino. As descobertas de compatibilidade do aplicativo podem influenciar a seleção dos serviços do Azure. Por exemplo, um aplicativo que não é compatível com um serviço pode ser compatível com outro com alterações mínimas de código. Por exemplo, serviços como o Serviço de Aplicativo do Azure normalmente exigem menos alterações de código, enquanto os serviços de plataforma de contêiner podem exigir mais atualização de código antes da implantação. Use essa flexibilidade para migrar aplicativos mais cedo e adiar a modernização de código para uma fase posterior. Essa abordagem reduz o risco de migração e acelera o tempo de migração para a nuvem.
Validar a estrutura e a compatibilidade do SDK
Entenda a compatibilidade de código. A compatibilidade de Estrutura e SDK garante que os aplicativos sejam executados de forma confiável no Azure. Versões sem suporte ou SDKs incompatíveis podem causar falhas de runtime ou exigir retrabalho significativo. Você deve verificar se o Azure dá suporte à versão e à estrutura de idiomas do aplicativo.
Verifique o suporte do Azure para o idioma e a estrutura do aplicativo. Confirme se o Azure dá suporte à sua versão do .NET, Java, Python, JavaScript, Node.jse Go. Use a documentação oficial do Azure para validar a compatibilidade.
Evite alterações desnecessárias na estrutura. Migre apenas para uma nova estrutura (como o Microsoft .NET Framework para o .NET Core) se houver uma justificativa comercial forte. As alterações na estrutura exigem um esforço de desenvolvimento e testes significativos.
Avaliar bancos de dados
As dependências do banco de dados geralmente determinam o êxito da migração de aplicativos. Bancos de dados compartilhados, dependências entre aplicativos e padrões de integração podem complicar o planejamento de migração. Você deve avaliar os bancos de dados que dão suporte a seus aplicativos e entender suas dependências. Siga estas diretrizes:
Identifique todos os bancos de dados usados pelo aplicativo. Crie um inventário completo de todos os bancos de dados usados pelo aplicativo. Inclua tipos de mecanismo de banco de dados (SQL Server, MySQL), versões e modelos de hospedagem (por exemplo, local, IaaS, PaaS). Use ferramentas, como o Azure Migrate, para coletar essas informações sistematicamente. Especifique se o banco de dados é auto-hospedado, hospedado em máquinas virtuais ou entregue como um serviço gerenciado. Essas informações ajudam a determinar a preparação da migração e a compatibilidade da plataforma de destino.
Mapear dependências de entrada e saída. Uma visão clara de como os dados fluem para dentro e para fora de cada banco de dados é essencial para sequenciar migrações e evitar interrupções de serviço. As dependências geralmente abrangem vários aplicativos, serviços e sistemas externos. Inclua aplicativos internos, APIs, trabalhos em lote, ferramentas de relatório e outras integrações. Especifique se a dependência é somente leitura, somente gravação ou bidirecional. Esse detalhe ajuda a priorizar cargas de trabalho e identificar potenciais bloqueadores de migração.
Determine a estratégia de migração de banco de dados. Decida se deseja mover o banco de dados como uma instância compartilhada ou dividi-lo por carga de trabalho. Bancos de dados compartilhados simplificam o gerenciamento, mas podem atrasar a migração se vários aplicativos dependerem deles. A divisão de bancos de dados permite a migração independente, mas requer coordenação e teste cuidadosos. Verifique se o plano de migração de banco de dados dá suporte ao sequenciamento de movimentações de aplicativos e minimiza o tempo de inatividade ou a interrupção do serviço.
Criar e manter um registro de risco
Um registro de risco é um documento ou ferramenta que você usa para identificar, avaliar, priorizar e monitorar possíveis riscos que podem afetar a adoção da nuvem. Ele descreve estratégias de mitigação. A manutenção desse registro garante o gerenciamento proativo de riscos.
Estabeleça um registro de risco para todas as cargas de trabalho. Registrar riscos relacionados a fatores técnicos, operacionais e organizacionais. Esse registro fornece visibilidade sobre potenciais bloqueadores e seu valor.
Defina estratégias de mitigação e acompanhe seu status. Para cada risco, documentar as ações de mitigação, partes responsáveis e prazos de resolução. Esse acompanhamento garante que você gerencie e resolva ativamente os riscos.
Para obter mais informações, consulte CAF Govern – Avaliar riscos de nuvem
Ferramentas e recursos do Azure
| Category | Tool | Description |
|---|---|---|
| Descoberta e Avaliação | Azure Migrate | Descoberta e avaliação abrangentes para servidores locais, bancos de dados e aplicativos |
| Servidores habilitados para Arc | do Azure Arc | Estende o gerenciamento do Azure para ambientes locais e multinuvem |
| Avaliação de código | Copiloto do GitHub | Análise de compatibilidade automatizada para aplicativos .NET e Java |
| Migração de banco de dados | Assistente de Migração de Dados | Ferramenta de avaliação e migração para bancos de dados do SQL Server |
| Mapeamento de várias nuvens | Mapeamento de serviço do AWS para o Azure | Guia de comparação de serviço para migração do AWS para o Azure |
| Mapeamento de várias nuvens | Mapeamento de serviço do Google Cloud para o Azure | Guia de comparação de serviços para a migração do Google Cloud para o Azure |
| Desenvolvimento do Azure | .NET no Azure | Diretrizes para acessar serviços do Azure de aplicativos .NET |
| Desenvolvimento do Azure | Java no Azure | Recursos para desenvolvedores Java baseados no Azure |
| Desenvolvimento do Azure | Python no Azure | Recursos para desenvolvedores do Python que se baseiam no Azure |
| Desenvolvimento do Azure | JavaScript e Node.js no Azure | Diretrizes para desenvolvimento de JavaScript e Node.js no Azure |
| Desenvolvimento do Azure | Vá para o Azure | Recursos para desenvolvedores go baseados no Azure |
| Cloud Adoption Framework | Definir requisitos de confiabilidade | Diretrizes para definir requisitos de confiabilidade para cargas de trabalho de nuvem |