As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Sobre o mapeamento de migração do IIS para o Elastic Beanstalk
A migração do IIS para o Elastic Beanstalk envolve o mapeamento da configuração do servidor Windows on-premises para os recursos da nuvem AWS. Compreender esse mapeamento é essencial para migrações de sucesso e gerenciamento pós-migração.
Sites e aplicações do IIS no Elastic Beanstalk
No IIS, um site representa uma coleção de aplicações da Web e diretórios virtuais, cada um com sua própria configuração e conteúdo. Na migração para o Elastic Beanstalk, esses componentes são transformados da seguinte forma:
- Sites do IIS
-
Seus sites do IIS se tornam aplicações dentro do Elastic Beanstalk. A configuração de cada site, incluindo suas associações, grupos de aplicações e configurações de autenticação, é preservada por meio do manifesto de implantação (
aws-windows-deployment-manifest.json) do Elastic Beanstalk.Por exemplo, se você tiver vários sites, como o site padrão e IntranetSite, o eb migrate empacota o conteúdo e a configuração de cada site, mantendo seu isolamento.
O comando cria regras de ouvinte apropriadas do Application Load Balancer (ALB) para lidar com solicitações de roteamento para suas aplicações. Ele também configura grupos de segurança para garantir o acesso adequado às portas com base nas associações originais do IIS.
- Grupos de aplicações
-
Grupos de aplicações do IIS fornecem isolamento de processos de trabalho, gerenciamento de runtime e recursos de reciclagem para suas aplicações. No Elastic Beanstalk, eles são mapeados para processos de ambiente definidos por meio do namespace
aws:elasticbeanstalk:environment:processe configurados via IIS nas instâncias do EC2.A migração preserva as configurações essenciais do grupo de aplicações, incluindo as seguintes:
-
Configurações do modelo de processo: Identidade (ApplicationPoolIdentity, NetworkService ou contas personalizadas), configurações de tempo limite de inatividade e intervalos de reciclagem do processo
-
Configurações da versão do .NET CLR: mantém sua versão especificada do .NET Framework (v2.0, v4.0 ou Sem código gerenciado) para garantir a compatibilidade da aplicação
-
Modo de pipeline gerenciado: preserva as configurações do modo de pipeline integrado ou clássico para manter sua arquitetura de processamento de solicitações HTTP
-
Configurações avançadas: comprimento da fila, limites de CPU, limites de proteção contra falhas rápidas e limites de tempo de inicialização
O comando eb migrate preserva os mapeamentos entre sites e grupos de aplicações durante a migração para o ambiente do Elastic Beanstalk.
Se os seus grupos de aplicações usarem cronogramas de reciclagem personalizados (horários específicos ou limites de memória), eles serão implementados por meio de scripts PowerShell no pacote de implantação que definem as configurações apropriadas do IIS nas instâncias do EC2.
-
- Associações de sites
-
As associações de sites do IIS, que definem como os clientes acessam suas aplicações, são transformadas nas seguintes configurações do Application Load Balancer (ALB):
-
As ligações de porta são mapeadas de acordo com as regras de receptores do ALB correspondentes
-
As configurações do cabeçalho do host são convertidas em regras de roteamento do ALB
-
Sites habilitados para SSL usam o AWS Certificate Manager (ACM) para gerenciamento de certificados
-
Gerenciamento virtual de diretórios e caminhos de aplicações
Diretórios e aplicações virtuais do IIS fornecem mapeamento de caminhos de URL para diretórios físicos. O Elastic Beanstalk mantém esses relacionamentos por meio das seguintes construções:
- Diretórios virtuais
-
O processo de migração preserva os caminhos físicos dos seus diretórios virtuais no pacote de implantação.
Os mapeamentos de caminho são configurados na configuração do IIS nas instâncias do EC2, garantindo que sua estrutura de URL permaneça intacta após a migração.
- Caminhos físicos que não são do sistema
-
Importante
Por padrão, os ambientes Windows do Elastic Beanstalk provisionam somente a unidade C:\ (volume raiz). Na versão atual, aplicações com conteúdo em unidades que não são do sistema (D:\, E:\ etc.) não têm suporte para migração.
O comando eb migrate detecta automaticamente caminhos físicos localizados em unidades que não são do sistema e avisa sobre possíveis problemas, como no exemplo a seguir:
ERROR: Detected physical paths on drive D:\ which are not supported in the current version: - D:\websites\intranet - D:\shared\images Migration of content from non-system drives is not supported. Please relocate this content to the C:\ drive before migration. Otherwise, select only those sites that are on C:\.Se a sua aplicação tiver dependências em unidades que não sejam do sistema, você precisará modificá-la para armazenar todo o conteúdo na unidade C:\ antes da migração.
- Aplicações aninhadas
-
Aplicações aninhadas em sites são implantadas com as configurações de caminho corretas e as atribuições apropriadas do grupo de aplicações. O processo de migração preserva todas as configurações de
web.config, garantindo que as configurações específicas da aplicação continuem funcionando conforme o esperado no ambiente de nuvem.
Reescrita de URL e roteamento de solicitação de aplicação (ARR)
Se sua implantação do IIS usa Regravação de URL ou Roteamento de Solicitações de Aplicações (ARR), eb migrate manipula essas configurações por meio das seguintes regras e configurações:
- Regras de reescrita de URL
-
As regras de reescrita de URL dos seus arquivos
web.configsão convertidas em regras de roteamento do ALB sempre que possível. Por exemplo, a entrada a seguir se torna uma regra de receptor do ALB que direciona o tráfego com base nos cabeçalhos do host e nos padrões de caminho. :<!-- Original IIS URL Rewrite Rule --> <rule name="Redirect to WWW" stopProcessing="true"> <match url="(.*)" /> <conditions> <add input="{HTTP_HOST}" pattern="^example.com$" /> </conditions> <action type="Redirect" url="http://www.example.com/{R:1}" /> </rule> - Roteamento de solicitações de aplicações
-
As configurações de ARR são preservadas por meio da instalação de recursos de ARR em instâncias do EC2. O processo de migração conclui as seguintes tarefas:
-
Define as configurações de proxy para corresponder ao seu ambiente de origem
-
Mantém as regras de regravação de URL associadas ao ARR
-
Estrutura de artefatos de migração
Quando você executa eb migrate, ele cria um diretório estruturado contendo todos os componentes de implantação necessários. A lista a seguir descreve a estrutura de diretórios:
C:\migration_workspace\
└── .\migrations\latest\
└── upload_target\
├── [SiteName].zip # One ZIP per IIS site
├── aws-windows-deployment-manifest.json
└── ebmigrateScripts\
├── site_installer.ps1 # Site installation scripts
├── arr_configuration.ps1 # ARR configuration scripts
├── permission_handler.ps1 # Permission management
└── firewall_config.ps1 # Windows Firewall rules
O arquivo aws-windows-deployment-manifest.json é o arquivo de configuração principal que instrui o Elastic Beanstalk a implantar suas aplicações. Consulte a seguinte estrutura de exemplo:
{ "manifestVersion": 1, "deployments": { "msDeploy": [ { "name": "Primary Site", "parameters": { "appBundle": "DefaultWebSite.zip", "iisPath": "/", "iisWebSite": "Default Web Site" } } ], "custom": [ { "name": "ConfigureARR", "scripts": { "install": { "file": "ebmigrateScripts\\arr_configuration.ps1" }, "uninstall": { "file": "ebmigrateScripts\\noop.ps1" }, "restart": { "file": "ebmigrateScripts\\noop.ps1" } } } ] } }
Esse manifesto garante os seguintes resultados para sua migração:
-
As aplicações são implantadas para corrigir os caminhos do IIS
-
Configurações personalizadas são aplicadas
-
As configurações específicas do site são preservadas
-
A ordem de implantação é mantida