Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
eb migrate
Description
Fait migrer les sites et applications Internet Information Services (IIS) d'un serveur Windows vers Elastic Beanstalk. La commande empaquète vos applications, préserve leurs configurations et les déploie dans un nouvel environnement Elastic Beanstalk.
Pour plus d'informations sur la migration de vos sites et applications IIS, consultezMigration des applications IIS vers Elastic Beanstalk.
Note
Avant d'utiliser cette commande, assurez-vous que votre système répond aux exigences suivantes :
-
Internet Information Services (IIS) version 7.0 ou ultérieure
-
Web Deploy 3.6 ou version ultérieure installé
-
Privilèges administratifs sur le serveur Windows
-
AWS informations d'identification configurées avec les autorisations appropriées
-
Votre serveur source dispose d'un accès Internet sortant aux AWS services.
Les étapes suivantes résument le processus de migration :
-
Découvrez les sites IIS et leurs configurations.
-
Package du contenu et de la configuration de l'application.
-
Créez l'environnement et l'application Elastic Beanstalk.
-
Déployez l'application avec des paramètres préservés.
La commande crée des artefacts de migration dans un répertoire structuré, comme indiqué dans la liste suivante :
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
eb migrate cleanupÀ utiliser pour gérer ces artefacts.
Syntaxe
eb migrate [options]
eb migrate explore [options]
eb migrate cleanup [options]
Lorsqu'il est exécuté sans arguments, eb migrate fonctionne en mode non interactif. Pour l'exécuter en mode interactif, exécutezeb migrate --interactive.
La commande du mode interactif demande les informations suivantes :
-
Sélection des sites IIS à migrer
-
Noms de l'environnement et des applications
-
Sélection de la version de la plateforme
-
Type d'instance et autres options de configuration
Sous-commandes
explorer
La eb migrate explore sous-commande examine votre serveur IIS et répertorie les sites disponibles.
Utilisez cette commande pour afficher les informations suivantes :
-
Afficher tous les sites IIS sur le serveur
-
Avec
--verbose
, inspectez la configuration détaillée, y compris :-
Liaisons et ports du site
-
Pools d'applications
-
Répertoires virtuels et leurs chemins physiques
-
Paramètres d'authentification
-
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:
...
nettoyage
La eb migrate cleanup sous-commande gère les artefacts de migration à l'aide des actions suivantes :
-
Préserver la dernière migration réussie dans
./migrations/latest
-
Suppression des anciens répertoires de migration
-
Gestion des fichiers de configuration critiques
PS C:\migrations_workspace > eb migrate cleanup
Are you sure you would like to cleanup older artifacts within `./migrations/`? (y/N):
--force
À utiliser pour ignorer les instructions de confirmation pendant le nettoyage.
PS C:\migrations_workspace > eb migrate cleanup --force
Options
Aucune de ces options n'est obligatoire. Si vous exécutez eb migrate sans aucune option, l'interface de ligne de commande EB s'exécutera en mode non interactif. Aveceb migrate --interactive, l'EB CLI vous invite à saisir ou à sélectionner une valeur pour les paramètres requis.
Name (Nom) |
Description |
---|---|
or
|
Nom de la nouvelle application Elastic Beanstalk. Type : String Par défaut : EBMigrated App |
|
Le répertoire ou le fichier ZIP contenant le code source précédemment généré pareb migrate --archive-only. Utilisez cette option pour déployer un package de migration créé précédemment. Exemple : |
or
|
Créez uniquement le répertoire d'archives de destination sans déploiement. Le répertoire obtenu peut être déployé manuellement à l'eb
migrateaide de l' |
or
|
Le nom du sous-domaine devant préfixer l'entrée DNS CNAME de votre application migrée. Type : String Par défaut : le nom de l'environnement |
or
|
Copiez la configuration du pare-feu du serveur source vers la destination pour tous les ports HTTP dotés de liaisons actives. Crée les règles de groupe de sécurité correspondantes dans AWS. |
or
|
Liste séparée par des virgules des instantanés Amazon EBS IDs à associer à l'environnement. Exemple : |
|
Appliquez le chiffrement à tous les nouveaux volumes Amazon EBS. ImportantIl s'agit d'un paramètre à l'échelle du compte qui affecte toutes les futures créations de volumes Amazon EBS. |
or
|
Nom du nouvel environnement Elastic Beanstalk. Type : String Par défaut : EBMigrated Env Contraintes : Doit comporter entre 4 et 40 caractères. Ne peut contenir que des lettres, des chiffres et des traits d'union. Il ne peut pas commencer ni se terminer par un trait d'union. |
|
Ignorez les instructions de confirmation pendant les opérations. Lorsqu'il est utilisé avec une cleanup sous-commande, supprime les artefacts de migration sans confirmation. |
or
|
Profil d'instance à associer aux EC2 instances Amazon de l'environnement. S'il n'est pas spécifié, crée un profil d'instance par défaut avec les autorisations d'accès aux ressources Elastic Beanstalk. Pour de plus amples informations, veuillez consulter Profil d'instance Elastic Beanstalk. |
or
|
Type d' EC2 instance Amazon pour votre environnement Elastic Beanstalk. Type : String Par défaut : c5.2xlarge Pour connaître les types d'instances disponibles, consultez les types d' EC2 instances Amazon dans le guide de EC2 l'utilisateur Amazon. |
or
|
Forcer le mode interactif pour le processus de migration. Vous invite à saisir les valeurs de configuration même lorsque des valeurs par défaut sont disponibles. |
or
|
Paire de EC2 clés Amazon pour permettre l'accès RDP aux instances de l'environnement. Utile pour étudier les problèmes au niveau de l'instance qui ne sont pas visibles dans les journaux. Valeurs valides : nom de paire de clés existant enregistré auprès d'Amazon EC2 |
or
|
Runtime de la plateforme Elastic Beanstalk pour l'environnement. Si ce n'est pas spécifié, détecté automatiquement à partir de la version hôte de Windows Server. Exemple : Pour obtenir la liste des versions de plate-forme disponibles, utilisez la liste des plateformes Web. |
|
Indique d'exécuter la migration en mode distant. Cette option permet l'exécution à partir d'un hôte bastion, qui se connecte au serveur cible qui contient l'application et les configurations à migrer vers Elastic Beanstalk. Exécuté depuis le serveur Bastion, Cette option élimine le besoin d'installer l'interface de ligne de commande EB et Python sur le serveur Windows que vous devez migrer. Vous installez plutôt Python et l'EB CLI sur un hôte bastion, où vous exécutez la eb migrate commande avec l' Doit être utilisé avec |
|
Adresse IP publique de la machine Windows distante qui contient les serveurs IIS à migrer. Nécessaire lors de l'utilisation |
|
Nom d'utilisateur du profil utilisateur permettant d'accéder à la machine Windows distante qui contient les serveurs IIS à migrer. Nécessaire lors de l'utilisation |
|
Mot de passe du profil utilisateur permettant d'accéder à la machine Windows distante qui contient les serveurs IIS à migrer. Nécessaire lors de l'utilisation |
or
|
Rôle de service IAM pour Elastic Beanstalk afin de gérer les services associés. AWS S'il n'est pas spécifié, crée un rôle de service par défaut avec les autorisations nécessaires. Pour de plus amples informations, veuillez consulter Rôle de service Elastic Beanstalk. NoteSpécifiez uniquement le nom du rôle, pas l'ARN complet. Elastic Beanstalk crée automatiquement l'ARN complet. |
or
|
Liste des sites IIS à migrer séparés par des virgules. Si ce n'est pas spécifié, migre tous les sites disponibles sur le serveur. Exemple : |
|
Liste séparée par des virgules des certificats SSL ACM ARNs à associer à l'Application Load Balancer. Nécessaire lors de la migration de sites avec des liaisons HTTPS. Exemple : |
or
|
Liste de Pour de plus amples informations, veuillez consulter Balisage des environnements. |
|
Afficher des informations détaillées pendant le processus de migration. Lorsqu'il est utilisé avec une explore sous-commande, affiche les détails complets de la configuration du site. |
or
|
Configuration VPC pour l'environnement, spécifiée sous forme de chemin de fichier JSON ou de chaîne JSON. La configuration doit inclure :
ImportantLa migration ignorera tous les paramètres VPC existants de l'environnement source lorsque vous spécifiez le |
Sortie
La commande fournit des mises à jour de statut tout au long du processus de migration :
-
Détection de configuration VPC (lors de l'exécution sur une EC2 instance)
-
Progression de la génération du bundle source pour chaque site
-
État de création de l'environnement
-
Progression du déploiement
En cas de succès, affiche les détails du nouvel environnement, notamment :
-
Nom et ID de l'environnement
-
Nom de l'application
-
Région
-
Version de plateforme
-
Environnement CNAME
En cas de problème lors de la migration, utilisez les eb healthcommandes eb eventset pour obtenir des informations détaillées.
Exemples
Utilisation de base
Migration de base en mode interactif :
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
Migration de sites spécifiques avec une configuration personnalisée :
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
Création d'une archive de migration sans déploiement :
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.
Exemples de configuration avancée
Migration avec configuration VPC personnalisée à l'aide d'un fichier 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"
Migration de sites avec des certificats SSL et des en-têtes d'hôte :
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
Migration avec configuration instantanée 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
Exemples de configuration de sécurité
Gestion des sites soumis à des règles de pare-feu complexes :
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
Migration avec des rôles IAM personnalisés :
PS C:\migrations_workspace > eb migrate `
--sites "SecureApp" `
--instance-profile "CustomInstanceProfile" `
--service-role "CustomServiceRole"
Exemples d'exécution à distance
Migration des applications IIS depuis un serveur Windows distant :
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
Migration à distance avec sélection de sites spécifiques :
PS C:\migrations_workspace > eb migrate `
--remote `
--target-ip "192.0.2.10" `
--username "administrator" `
--password "YourPassword123" `
--sites "API" `
--instance-type "c5.large"