Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
eb migrate
Descripción
Migra sitios y aplicaciones de Internet Information Services (IIS) de un servidor Windows a Elastic Beanstalk. El comando empaqueta las aplicaciones, conserva sus configuraciones y las implementa en un nuevo entorno de Elastic Beanstalk.
Para obtener más información sobre la migración de sus sitios y aplicaciones de IIS, consulte. Migración de aplicaciones de IIS a Elastic Beanstalk
nota
Antes de usar este comando, asegúrese de que el sistema cumpla los siguientes requisitos:
-
Internet Information Services (IIS) versión 7.0 o posterior
-
Web Deploy 3.6 o una versión posterior instalada
-
Privilegios administrativos en el servidor Windows
-
AWS credenciales configuradas con los permisos adecuados
-
El servidor de origen tiene acceso saliente a los AWS servicios de Internet.
Los siguientes pasos resumen el proceso de migración:
-
Descubra los sitios de IIS y sus configuraciones.
-
Package el contenido y la configuración de la aplicación.
-
Cree el entorno y la aplicación de Elastic Beanstalk.
-
Implemente la aplicación con la configuración preservada.
El comando crea artefactos de migración en un directorio estructurado, como se muestra en la siguiente lista:
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
Se utiliza eb migrate cleanup para gestionar estos artefactos.
Sintaxis
eb migrate [options]
eb migrate explore [options]
eb migrate cleanup [options]
Cuando se ejecuta sin argumentos, eb migrate funciona en modo no interactivo. Para ejecutarlo en modo interactivo, ejecuteeb migrate --interactive.
El comando del modo interactivo solicita la siguiente información:
-
Selección de sitios de IIS para migrar
-
Nombres de entornos y aplicaciones
-
Selección de la versión de la plataforma
-
Tipo de instancia y otras opciones de configuración
Subcomandos
explore
El eb migrate explore subcomando examina el servidor IIS y muestra los sitios disponibles.
Utilice este comando para mostrar la siguiente información:
-
Vea todos los sitios de IIS del servidor
-
Con
--verbose
, inspeccione la configuración detallada, que incluye:-
Puertos y enlaces de sitios
-
Grupos de aplicaciones
-
Directorios virtuales y sus rutas físicas
-
Configuración de autenticación
-
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:
...
eliminación
El eb migrate cleanup subcomando administra los artefactos de migración con las siguientes acciones:
-
Preservar la migración exitosa más reciente en
./migrations/latest
-
Eliminar los directorios de migración más antiguos
-
Mantenimiento de los archivos de configuración críticos
PS C:\migrations_workspace > eb migrate cleanup
Are you sure you would like to cleanup older artifacts within `./migrations/`? (y/N):
Se utiliza --force
para omitir las solicitudes de confirmación durante la limpieza.
PS C:\migrations_workspace > eb migrate cleanup --force
Opciones
Ninguna de estas opciones es obligatoria. Si se ejecuta eb migrate sin ninguna opción, la CLI de EB se ejecutará en el modo no interactivo. Coneb migrate --interactive, la CLI de EB le pide que introduzca o seleccione un valor para la configuración requerida.
Nombre |
Descripción |
---|---|
o bien
|
Nombre de la nueva aplicación de Elastic Beanstalk. Tipo: cadena Predeterminado: aplicación EBMigrated |
|
El directorio o archivo ZIP que contiene el código fuente generado previamente poreb migrate --archive-only. Use esta opción para implementar un paquete de migración creado anteriormente. Ejemplo: |
o
|
Cree solo el directorio de archivos de destino sin despliegue. El directorio resultante se puede implementar manualmente eb
migrate con la |
o
|
El nombre del subdominio como prefijo a la entrada DNS de CNAME de la aplicación migrada. Tipo: cadena Valor predeterminado: nombre del entorno. |
o
|
Copie la configuración del firewall del servidor de origen en el destino para todos los puertos HTTP con enlaces activos. Crea las reglas del grupo de seguridad correspondientes en AWS. |
o
|
Lista separada por comas de instantáneas de Amazon EBS IDs para asociarlas al entorno. Ejemplo: |
|
Aplique el cifrado a todos los volúmenes nuevos de Amazon EBS. importanteSe trata de una configuración que afecta a toda la cuenta y que afecta a toda la creación futura de volúmenes de Amazon EBS. |
o
|
Nombre del nuevo entorno de Elastic Beanstalk. Tipo: cadena Predeterminado: Env EBMigrated Restricciones: Debe tener una longitud de entre 4 y 40 caracteres. Solo puede contener letras, números y guiones. No puede empezar ni terminar con un guion. |
|
Omita las solicitudes de confirmación durante las operaciones. Cuando se usa con un cleanup subcomando, elimina los artefactos de migración sin confirmación. |
o
|
Perfil de instancia para asociarlo a las EC2 instancias de Amazon del entorno. Si no se especifica, crea un perfil de instancia predeterminado con permisos para acceder a los recursos de Elastic Beanstalk. Para obtener más información, consulte Perfil de instancia de Elastic Beanstalk. |
o
|
El tipo de EC2 instancia de Amazon para el entorno de Elastic Beanstalk. Tipo: cadena Predeterminado: c5.2xlarge Para ver los tipos de instancias disponibles, consulta los tipos de EC2 instancias de Amazon en la Guía del EC2 usuario de Amazon. |
o
|
Impulse el modo interactivo para el proceso de migración. Solicita los valores de configuración incluso cuando los valores predeterminados están disponibles. |
o
|
Amazon EC2 key pair para permitir el acceso RDP a las instancias del entorno. Útil para investigar problemas a nivel de instancia que no están visibles en los registros. Valores válidos: un nombre de key pair existente registrado en Amazon EC2 |
o
|
Tiempo de ejecución de la plataforma Elastic Beanstalk para el entorno. Si no se especifica, se detecta automáticamente desde la versión host de Windows Server. Ejemplo: Para obtener una lista de las versiones de plataforma disponibles, utilice la lista de plataformas web. |
|
Indica que se debe ejecutar la migración en modo remoto. Esta opción permite la ejecución desde un host bastión, que se conecta al servidor de destino que contiene la aplicación y las configuraciones que se van a migrar a Elastic Beanstalk. Si se ejecuta desde el servidor bastión, Esta opción elimina la necesidad de instalar la CLI de EB y Python en el servidor Windows que necesita migrar. En su lugar, instale Python y la CLI de EB en un host bastión, donde ejecute el eb migrate comando con la Debe usarse con |
|
Dirección IP pública de la máquina Windows remota que contiene los servidores IIS que se van a migrar. Se requiere cuando se usa |
|
Nombre de usuario del perfil de usuario para acceder a la máquina Windows remota que contiene los servidores IIS que se van a migrar. Se requiere cuando se usa |
|
Contraseña del perfil de usuario para acceder a la máquina Windows remota que contiene los servidores IIS que se van a migrar. Se requiere cuando se usa |
o
|
Función de servicio de IAM para Elastic Beanstalk a fin de gestionar los servicios relacionados. AWS Si no se especifica, crea un rol de servicio predeterminado con los permisos necesarios. Para obtener más información, consulte Rol de servicio de Elastic Beanstalk. notaEspecifique solo el nombre del rol, no el ARN completo. Elastic Beanstalk crea automáticamente el ARN completo. |
o
|
Lista separada por comas de los sitios de IIS que se van a migrar. Si no se especifica, migra todos los sitios disponibles en el servidor. Ejemplo: |
|
Lista separada por comas del certificado SSL de ACM ARNs para asociarlo al Application Load Balancer. Se requiere al migrar sitios con enlaces HTTPS. Ejemplo: |
o
|
Lista de Para obtener más información, consulte Etiquetado de entornos. |
|
Muestre información detallada durante el proceso de migración. Cuando se usa con un explore subcomando, muestra detalles completos de la configuración del sitio. |
o
|
Configuración de VPC para el entorno, especificada como una ruta de archivo JSON o una cadena JSON. La configuración debe incluir:
importanteLa migración ignorará cualquier configuración de VPC existente en el entorno de origen cuando especifique el |
Output
El comando proporciona actualizaciones de estado durante todo el proceso de migración:
-
Detección de configuración de VPC (cuando se ejecuta en una EC2 instancia)
-
Progreso de la generación del paquete fuente para cada sitio
-
Estado de creación del entorno
-
Implementación en curso
Si se realiza correctamente, muestra los detalles del nuevo entorno, que incluyen:
-
Nombre e ID del entorno
-
Nombre de la aplicación
-
Región
-
Versión de la plataforma
-
CNAME del entorno
Si hay problemas durante la migración, usa los eb healthcomandos eb eventsy para obtener información detallada.
Ejemplos
Uso básico
Migración básica en modo interactivo:
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
Migración de sitios específicos con una configuración 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
Crear un archivo de migración sin despliegue:
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.
Ejemplos de configuración avanzada
Migración con configuración de VPC personalizada mediante un archivo 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"
Migración de sitios con certificados SSL y encabezados 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
Migración con configuración instantánea de 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
Ejemplos de configuración de seguridad
Manejo de sitios con reglas de firewall complejas:
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
Migración con funciones de IAM personalizadas:
PS C:\migrations_workspace > eb migrate `
--sites "SecureApp" `
--instance-profile "CustomInstanceProfile" `
--service-role "CustomServiceRole"
Ejemplos de ejecución remota
Migración de aplicaciones IIS desde un servidor Windows 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
Migración remota con selección de sitios específicos:
PS C:\migrations_workspace > eb migrate `
--remote `
--target-ip "192.0.2.10" `
--username "administrator" `
--password "YourPassword123" `
--sites "API" `
--instance-type "c5.large"