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á.
eb migrate
Descrição
Migra sites e aplicações do Internet Information Services (IIS) de um servidor Windows para o Elastic Beanstalk. O comando empacota suas aplicações, preserva suas configurações e as implanta em um novo ambiente do Elastic Beanstalk.
Para obter mais informações sobre como migrar seus sites e aplicações do IIS, consulte Migrar aplicações do IIS para o Elastic Beanstalk.
nota
Antes de usar este comando, certifique-se de que seu sistema atenda aos seguintes requisitos necessários:
-
Serviços de Informação da Internet (IIS) versão 7.0 ou posterior
-
Web Deploy 3.6 ou posterior instalado
-
Privilégios administrativos no Windows Server
-
Credenciais da AWS configuradas com as permissões apropriadas
-
Seu servidor de origem tem acesso externo à Internet para serviços da AWS.
As etapas a seguir resumem o processo de migração:
-
Descubra sites do IIS e suas configurações.
-
Empacote o conteúdo e a configuração da aplicação.
-
Crie um ambiente e uma aplicação do Elastic Beanstalk.
-
Implante a aplicação com configurações preservadas.
O comando cria artefatos de migração em um diretório estruturado, como mostra a lista a seguir:
C:\migration_workspace\ └── .\migrations\latest\ ├── upload_target.zip └── upload_target\ ├── [SiteName].zip # One ZIP per default application of IIS site ├── [SiteName-ApplicationName].zip # One ZIP per additional application ├── aws-windows-deployment-manifest.json └── ebmigrateScripts\ ├── site_installer.ps1 # Site installation scripts ├── permission_handler.ps1 # Permission management └── other helper scripts
Use eb migrate cleanup para gerenciar esses artefatos.
Sintaxe
eb migrate [options]
eb migrate explore [options]
eb migrate cleanup [options]
Quando executado sem argumentos, eb migrate opera no modo não interativo. Para executá-lo no modo interativo, execute eb migrate --interactive.
O comando do modo interativo solicita as seguintes informações:
-
Seleção de sites do IIS para migrar
-
Nomes do ambiente e da aplicação
-
Seleção da versão da plataforma
-
Tipo de instância e outras opções de configuração
Subcomandos
explore
O subcomando eb migrate explore examina seu servidor IIS e lista os sites disponíveis.
Use esse comando para exibir as seguintes informações:
-
Exibir todos os sites do IIS no servidor
-
Com
--verbose, inspecione a configuração detalhada, incluindo:-
Ligações e portas do site
-
Grupos de aplicações
-
Diretórios virtuais e seus caminhos físicos
-
Configurações de Autenticação
-
PS C:\migrations_workspace > eb migrate explore
Default Web Site
Site2
site3
router
PS C:\migrations_workspace > eb migrate explore --verbose
1: Default Web Site:
- Bindings:
- *:8083:
- Application '/':
- Application Pool: DefaultAppPool
- Enabled Protocols: http
- Virtual Directories:
- /:
- Physical Path: C:\inetpub\wwwroot
- Logon Method: ClearText
- Application '/dotnet-6-0':
- Application Pool: DefaultAppPool
- Enabled Protocols: http
- Virtual Directories:
- /:
- Physical Path: C:\inetpub\AspNetCoreWebApps\CoreWebApp-6-0
- Logon Method: ClearText
- Application '/dotnet-8-0':
- Application Pool: DefaultAppPool
- Enabled Protocols: http
- Virtual Directories:
- /:
- Physical Path: C:\inetpub\AspNetCoreWebApps\CoreWebApp-8-0
- Logon Method: ClearText
2: Site2:
- Bindings:
- *:8081:
...
Limpeza
O subcomando eb migrate cleanup gerencia os artefatos de migração com as seguintes ações:
-
Preservar a migração bem-sucedida mais recente em
./migrations/latest -
Remover diretórios de migração mais antigos
-
Manutenção de arquivos de configuração críticos
PS C:\migrations_workspace > eb migrate cleanup
Are you sure you would like to cleanup older artifacts within `./migrations/`? (y/N):
Use --force para ignorar as solicitações de confirmação durante a limpeza.
PS C:\migrations_workspace > eb migrate cleanup --force
Opções
Nenhuma dessas opções é obrigatória. Se você executar eb migrate sem opção, a EB CLI será executada no modo não interativo. Com eb migrate --interactive, a EB CLI solicita que você insira ou selecione um valor para as configurações necessárias.
|
Nome |
Descrição |
|---|---|
|
ou
|
Nome para a nova aplicação Elastic Beanstalk. Tipo: String Padrão: EBMigratedApp |
|
|
O diretório ou arquivo ZIP contendo o código-fonte gerado anteriormente por eb migrate --archive-only. Use essa opção para implantar um pacote de migração criado anteriormente. Exemplo: |
|
ou
|
Crie somente o diretório de arquivamento de destino sem implantação. O diretório resultante pode ser implantado manualmente usando eb
migrate com a opção |
|
ou
|
O nome do subdomínio para prefixar a entrada de CNAME DNS para seu aplicação migrado. Tipo: String Padrão: o nome do ambiente |
|
ou
|
Copie a configuração do firewall do servidor de origem para o destino de todas as portas HTTP com associações ativas. Cria regras de grupo de segurança correspondentes em AWS. |
|
ou
|
Lista separada por vírgulas dos IDs de snapshots do Amazon EBS para associar ao ambiente. Exemplo: |
|
|
Aplique criptografia para todos os volumes do Amazon EBS. ImportanteEssa é uma configuração de toda a conta que afeta toda a criação futura de volumes do Amazon EBS. |
|
ou
|
Nome para o novo ambiente do Elastic Beanstalk. Tipo: String Padrão: EBMigratedEnv Restrições: deve ter entre 4 e 40 caracteres. Pode pode conter somente letras, números e hifens. Não pode começar ou terminar com um hífen (-). |
|
|
Ignore os prompts de confirmação durante as operações. Quando usado com o subcomando cleanup, remove artefatos de migração sem confirmação. |
|
ou
|
Perfil da instância para associar às instâncias do Amazon EC2. Se não for especificado, cria um perfil de instância padrão com permissões para acessar os recursos do Elastic Beanstalk. Para obter mais informações, consulte Perfil de instância do Elastic Beanstalk. |
|
ou
|
O tipo de instância do Amazon EC2 para o seu ambiente Elastic Beanstalk. Tipo: String Padrão: c5.2xlarge Para obter informações sobre os tipos de instância disponíveis, consulte Tipos de instância do Amazon EC2, no Guia do usuário do Amazon EC2. |
|
ou
|
Forçar o modo interativo para o processo de migração. Solicita valores de configuração mesmo quando padrões estão disponíveis. |
|
ou
|
O par de chaves do Amazon EC2 para permitir o acesso RDP às instâncias do ambiente. Útil para investigar problemas no nível da instância que não são visíveis nos logs. Valores válidos: um nome de par de chaves existente registrado no Amazon EC2 |
|
ou
|
Runtime da plataforma Elastic Beanstalk para o ambiente. Se não for especificado, detectado automaticamente a partir da versão host do Windows Server. Exemplo: Para obter uma lista das versões disponíveis da plataforma, use a lista de plataformas eb. |
|
|
Indica a execução da migração no modo remoto. Essa opção permite a execução a partir de um bastion host, que se conecta ao servidor de destino que contém o aplicação e as configurações a serem migradas para o Elastic Beanstalk. Em execução a partir do servidor bastion, Essa opção dispensa a necessidade de instalar a EB CLI e o Python no servidor Windows que você precisa migrar. Em vez disso, você instala o Python e a EB CLI em um bastion host, onde executa o comando eb migrate com a opção Deve ser usado com |
|
|
Endereço IP público da máquina Windows remota que contém os servidores IIS a serem migrados. Necessário ao usar |
|
|
Nome de usuário do perfil de usuário para acessar a máquina Windows remota que contém os servidores IIS a serem migrados. Necessário ao usar |
|
|
Senha do perfil do usuário para acessar a máquina Windows remota que contém os servidores IIS a serem migrados. Necessário ao usar |
|
ou
|
Perfil de serviço do IAM para o Elastic Beanstalk gerenciar serviços da AWS relacionados. Se não for especificado, cria um perfil de serviço padrão com as permissões necessárias. Para obter mais informações, consulte Função de serviço do Elastic Beanstalk. notaEspecifique somente o nome do perfil, não o ARN completo. O Elastic Beanstalk cria automaticamente o ARN completo. |
|
ou
|
Lista separada por vírgulas dos sites do IIS para migrar. Se não for especificado, migra todos os sites disponíveis no servidor. Exemplo: |
|
|
Lista separada por vírgula de ARNs do certificado SSL do ACM para associar ao Application Load Balancer. Obrigatória ao migrar sites com associações HTTPS. Exemplo: |
|
ou
|
Lista de pares de Para obter mais informações, consulte Marcação em ambientes. |
|
|
Mostre informações detalhadas durante o processo de migração. Quando usado com o subcomando explore, exibe detalhes abrangentes da configuração do site. |
|
ou
|
Configuração de VPC para o ambiente, especificada como um caminho de arquivo JSON ou uma string JSON. A configuração deve incluir:
ImportanteA migração ignorará todas as configurações de VPC existentes do ambiente de origem quando você especificar o parâmetro |
Resultado
O comando fornece atualizações de status durante todo o processo de migração:
-
Detecção da configuração da VPC (ao executar em uma instância do EC2)
-
Progresso da geração do pacote de origem para cada site
-
Status de criação do ambiente
-
Progresso da implantação
Se for bem-sucedido, exibe os detalhes do novo ambiente, incluindo:
-
Nome e ID da do ambiente
-
Nome da aplicação
-
Região
-
Versão da plataforma
-
CNAME do ambiente
Para problemas durante a migração, use os comandos eb health e eb events para obter informações detalhadas.
Exemplos
Uso básico
Migração básica no modo interativo:
PS C:\migrations_workspace > eb migrate
Identifying VPC configuration of this EC2 instance (i-0123456789abcdef0):
id: vpc-1234567890abcdef0
publicip: true
elbscheme: public
ec2subnets: subnet-123,subnet-456,subnet-789
securitygroups: sg-123,sg-456
elbsubnets: subnet-123,subnet-456,subnet-789
Using .\migrations\latest to contain artifacts for this migration run.
Generating source bundle for sites, applications, and virtual directories...
Default Web Site/ -> .\migrations\latest\upload_target\DefaultWebSite.zip
Creating application version
Creating environment
Environment details for: EBMigratedEnv
Application name: EBMigratedApp
Region: us-west-2
Deployed Version: app-230320_153045
Environment ID: e-abcdef1234
Platform: 64bit Windows Server 2019 v2.7.0 running IIS 10.0
Tier: WebServer-Standard-1.0
CNAME: ebmigratedenv.us-west-2.elasticbeanstalk.com
Updated: 2023-03-20 15:30:45
Migração de sites específicos com configuração personalizada:
PS C:\migrations_workspace > eb migrate `
--sites "Default Web Site,InternalAPI" `
--application-name "CorporateApp" `
--environment-name "Production" `
--instance-type "c5.xlarge" `
--tags "Environment=Production,Team=WebOps" `
--copy-firewall-config
Criar um arquivo de migração sem implantação:
PS C:\migrations_workspace > eb migrate --archive-only
Using .\migrations\latest to contain artifacts for this migration run.
Generating source bundle for sites, applications, and virtual directories...
Default Web Site/ -> .\migrations\latest\upload_target\DefaultWebSite.zip
Generated destination archive directory at .\migrations\latest\upload_target
You can execute `eb init` and `eb create` from this directory to deploy to EB.
Exemplos de configuração avançados
Migração com configuração de VPC personalizada usando um arquivo JSON:
PS C:\migrations_workspace > cat vpc-config.json
{
"id": "vpc-1234567890abcdef0",
"publicip": "false",
"elbscheme": "internal",
"ec2subnets": [
"subnet-private1",
"subnet-private2"
],
"securitygroups": [
"sg-app",
"sg-database",
"sg-monitoring"
],
"elbsubnets": [
"subnet-private1",
"subnet-private2"
]
}
PS C:\migrations_workspace eb migrate `
--sites "InternalAPI" `
--vpc-config vpc-config.json `
--instance-type "r5.xlarge" `
--tags "Environment=Internal,Security=High"
Migrar sites com certificados SSL e cabeçalhos de host:
PS C:\migrations_workspace > eb migrate `
--sites "SecurePortal" `
--ssl-certificates "arn:aws:acm:region:account:certificate/cert1,arn:aws:acm:region:account:certificate/cert2" `
--verbose
INFO: Detected HTTPS bindings:
- www.example.com:443
- api.example.com:443
INFO: Configuring Application Load Balancer with SSL certificates
INFO: Creating host-based routing rules:
- www.example.com -> target group 1
- api.example.com -> target group 2
Migração com configuração de snapshot do EBS:fo
PS C:\migrations_workspace > eb migrate `
--sites "Default Web Site" `
--ebs-snapshots "snap-1234567890abcdef0" "snap-0987654321fedcba1" `
--encrypt-ebs-volumes
Using .\migrations\latest to contain artifacts for this migration run.
INFO: Enabling EBS encryption for all new volumes in us-west-2
INFO: Configuring environment with specified EBS snapshots
Exemplos de configuração de segurança
Lidar com sites com regras de firewall complexas:
PS C:\migrations_workspace > eb migrate `
--sites "Default Web Site,ReportingService" `
--copy-firewall-config `
--verbose
INFO: Detected the following Windows Firewall rules:
- Allow Web Traffic (TCP 80, 443)
- Allow Reporting Traffic (TCP 8081)
INFO: Creating corresponding security group rules
Migração com perfis do IAM personalizados:
PS C:\migrations_workspace > eb migrate `
--sites "SecureApp" `
--instance-profile "CustomInstanceProfile" `
--service-role "CustomServiceRole"
Exemplos de execução remota
Migrar aplicações do IIS de um Windows Server remoto:
PS C:\migrations_workspace > eb migrate `
--remote `
--target-ip "192.0.2.10" `
--username "administrator" `
--password "YourPassword123" `
--application-name "RemoteApp" `
--environment-name "RemoteEnv"
INFO: Establishing SSH connection to remote host 192.0.2.10...
INFO: Connection established
INFO: Discovering IIS sites on remote host...
INFO: Found 2 sites: Default Web Site, API
INFO: Extracting site configurations...
INFO: Generating source bundle for sites, applications, and virtual directories...
Default Web Site/ -> .\migrations\latest\upload_target\DefaultWebSite.zip
API/ -> .\migrations\latest\upload_target\API.zip
Creating application version
Creating environment
Environment details for: RemoteEnv
Application name: RemoteAppstage mi
Region: us-west-2
Deployed Version: app-230320_153045
Environment ID: e-abcdef1234
Platform: 64bit Windows Server 2019 v2.7.0 running IIS 10.0
Tier: WebServer-Standard-1.0
CNAME: remoteenv.us-west-2.elasticbeanstalk.com
Updated: 2023-03-20 15:30:45
Migração remota com seleção de site específico:
PS C:\migrations_workspace > eb migrate `
--remote `
--target-ip "192.0.2.10" `
--username "administrator" `
--password "YourPassword123" `
--sites "API" `
--instance-type "c5.large"