Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
eb migrate
Beschreibung
Migriert Internet Information Services (IIS) -Sites und -Anwendungen von einem Windows-Server zu Elastic Beanstalk. Der Befehl packt Ihre Anwendungen, behält ihre Konfigurationen bei und stellt sie in einer neuen Elastic Beanstalk Beanstalk-Umgebung bereit.
Weitere Informationen zur Migration Ihrer IIS-Sites und -Anwendungen finden Sie unter. Migration von IIS-Anwendungen zu Elastic Beanstalk
Anmerkung
Bevor Sie diesen Befehl verwenden, stellen Sie sicher, dass Ihr System die folgenden Anforderungen erfüllt:
-
Internetinformationsdienste (IIS) Version 7.0 oder höher
-
Web Deploy 3.6 oder höher ist installiert
-
Administratorrechte auf dem Windows-Server
-
AWS Anmeldeinformationen, die mit den entsprechenden Berechtigungen konfiguriert wurden
-
Ihr Quellserver hat ausgehenden Internetzugang zu AWS Diensten.
In den folgenden Schritten wird der Migrationsprozess zusammengefasst:
-
Entdecken Sie IIS-Websites und ihre Konfigurationen.
-
Inhalt und Konfiguration der Paketanwendung.
-
Erstellen Sie eine Elastic Beanstalk Beanstalk-Umgebung und -Anwendung.
-
Stellen Sie die Anwendung mit beibehaltenen Einstellungen bereit.
Der Befehl erstellt Migrationsartefakte in einem strukturierten Verzeichnis, wie in der folgenden Liste dargestellt:
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
Wird verwendeteb migrate cleanup, um diese Artefakte zu verwalten.
Syntax
eb migrate [options]
eb migrate explore [options]
eb migrate cleanup [options]
Wenn es ohne Argumente ausgeführt wird, wird eb migrate es im nicht interaktiven Modus ausgeführt. Um es im interaktiven Modus auszuführen, führen Sie den Befehl auseb migrate --interactive.
Der Befehl für den interaktiven Modus fordert Sie zur Eingabe der folgenden Informationen auf:
-
Auswahl der zu migrierenden IIS-Sites
-
Umgebungs- und Anwendungsnamen
-
Auswahl der Plattformversion
-
Instanztyp und andere Konfigurationsoptionen
Unterbefehle
erforschen
Der eb migrate explore Unterbefehl untersucht Ihren IIS-Server und listet die verfügbaren Websites auf.
Verwenden Sie diesen Befehl, um die folgenden Informationen anzuzeigen:
-
Alle IIS-Sites auf dem Server anzeigen
-
Überprüfen Sie mit
--verbose
die detaillierte Konfiguration, einschließlich:-
Seitenbindungen und Ports
-
Anwendungspools
-
Virtuelle Verzeichnisse und ihre physischen Pfade
-
Authentifizierungseinstellungen
-
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:
...
Aufräumen
Der eb migrate cleanup Unterbefehl verwaltet Migrationsartefakte mit den folgenden Aktionen:
-
Beibehaltung der letzten erfolgreichen Migration in
./migrations/latest
-
Ältere Migrationsverzeichnisse werden entfernt
-
Pflege kritischer Konfigurationsdateien
PS C:\migrations_workspace > eb migrate cleanup
Are you sure you would like to cleanup older artifacts within `./migrations/`? (y/N):
Wird verwendet--force
, um Bestätigungsaufforderungen während der Bereinigung zu überspringen.
PS C:\migrations_workspace > eb migrate cleanup --force
Optionen
Keine dieser Optionen ist erforderlich. Wenn Sie eb migrate ohne Optionen ausführen, wird die EB-CLI im nicht interaktiven Modus ausgeführt. Mit eb migrate --interactive fordert Sie die EB CLI auf, einen Wert für die erforderlichen Einstellungen einzugeben oder auszuwählen.
Name |
Beschreibung |
---|---|
or
|
Name für die neue Elastic Beanstalk Beanstalk-Anwendung. Typ: Zeichenfolge Standard: App EBMigrated |
|
Das Verzeichnis oder die ZIP-Datei mit dem Quellcode, der zuvor von generiert wurdeeb migrate --archive-only. Verwenden Sie diese Option, um ein zuvor erstelltes Migrationspaket bereitzustellen. Beispiel: |
or
|
Erstellen Sie nur das Zielarchivverzeichnis ohne Bereitstellung. Das resultierende Verzeichnis kann eb
migrate mit der |
or
|
Der Name der Subdomain, der dem CNAME-DNS-Eintrag für Ihre migrierte Anwendung vorangestellt werden soll. Typ: Zeichenfolge Standard: Der Umgebungsname |
or
|
Kopieren Sie die Firewallkonfiguration des Quellservers für alle HTTP-Ports mit aktiven Bindungen auf das Ziel. Erstellt entsprechende Sicherheitsgruppenregeln in AWS. |
or
|
Durch Kommas getrennte Liste der Amazon EBS-Snapshots IDs , die der Umgebung zugeordnet werden sollen. Beispiel: |
|
Erzwingen Sie die Verschlüsselung für alle neuen Amazon EBS-Volumes. WichtigDies ist eine kontoweite Einstellung, die sich auf alle future Amazon EBS-Volume-Erstellungen auswirkt. |
or
|
Name für die neue Elastic Beanstalk Beanstalk-Umgebung. Typ: Zeichenfolge Standard: Env EBMigrated Einschränkungen: Muss zwischen 4 und 40 Zeichen lang sein. Kann nur Buchstaben, Zahlen und Bindestriche enthalten. Am Anfang und am Ende darf kein Bindestrich stehen. |
|
Überspringen Sie Bestätigungsaufforderungen während des Betriebs. Bei Verwendung mit einem cleanup Unterbefehl werden Migrationsartefakte ohne Bestätigung entfernt. |
or
|
Instance-Profil, das den EC2 Amazon-Instances der Umgebung zugeordnet werden soll. Wenn nicht angegeben, wird ein Standard-Instanzprofil mit Berechtigungen für den Zugriff auf Elastic Beanstalk Beanstalk-Ressourcen erstellt. Weitere Informationen finden Sie unter Elastic Beanstalk-Instance-Profil. |
or
|
Der EC2 Amazon-Instance-Typ für Ihre Elastic Beanstalk Beanstalk-Umgebung. Typ: Zeichenfolge Standard: c5.2xlarge Die verfügbaren Instance-Typen finden Sie unter EC2 Amazon-Instance-Typen im EC2 Amazon-Benutzerhandbuch. |
or
|
Erzwingen Sie den interaktiven Modus für den Migrationsprozess. Fordert zur Eingabe von Konfigurationswerten auf, auch wenn Standardwerte verfügbar sind. |
or
|
EC2 Amazon-Schlüsselpaar zur Aktivierung des RDP-Zugriffs auf Umgebungsinstanzen. Nützlich für die Untersuchung von Problemen auf Instanzebene, die in Protokollen nicht sichtbar sind. Gültige Werte: Ein vorhandener Schlüsselpaarname, der bei Amazon registriert ist EC2 |
or
|
Elastic Beanstalk-Plattformlaufzeit für die Umgebung. Wenn nicht angegeben, wird es automatisch von der Windows Server-Host-Version erkannt. Beispiel: Eine Liste der verfügbaren Plattformversionen finden Sie unter web platform list. |
|
Zeigt an, dass die Migration im Remote-Modus ausgeführt werden soll. Diese Option ermöglicht die Ausführung von einem Bastion-Host aus, der eine Verbindung zu dem Zielserver herstellt, der die Anwendung und die Konfigurationen enthält, die zu Elastic Beanstalk migriert werden sollen. Wird auf dem Bastion-Server ausgeführt, Mit dieser Option müssen Sie EB CLI und Python nicht mehr auf dem Windows-Server installieren, den Sie migrieren müssen. Sie installieren Python und die EB-CLI stattdessen auf einem Bastion-Host, wo Sie den eb migrate Befehl mit der Muss mit |
|
Öffentliche IP-Adresse des Windows-Remotecomputers, auf dem sich die zu migrierenden IIS-Server befinden. Erforderlich bei der Verwendung von |
|
Benutzername des Benutzerprofils für den Zugriff auf den Windows-Remotecomputer, der die zu migrierenden IIS-Server enthält. Erforderlich bei der Verwendung |
|
Passwort des Benutzerprofils für den Zugriff auf den Windows-Remotecomputer, der die zu migrierenden IIS-Server enthält. Erforderlich bei der Verwendung |
or
|
IAM-Servicerolle für Elastic Beanstalk zur Verwaltung verwandter Dienste. AWS Wenn nicht angegeben, wird eine Standard-Servicerolle mit den erforderlichen Berechtigungen erstellt. Weitere Informationen finden Sie unter Elastic Beanstalk-Servicerolle. AnmerkungGeben Sie nur den Rollennamen an, nicht den vollständigen ARN. Elastic Beanstalk erstellt automatisch den kompletten ARN. |
or
|
Durch Kommas getrennte Liste der zu migrierenden IIS-Sites. Wenn nicht angegeben, werden alle verfügbaren Sites auf dem Server migriert. Beispiel: |
|
Durch Kommas getrennte Liste der ACM-SSL-Zertifikate, die dem Application ARNs Load Balancer zugeordnet werden sollen. Erforderlich für die Migration von Websites mit HTTPS-Bindungen. Beispiel: |
or
|
Kommagetrennte Liste von Weitere Informationen finden Sie unter Markieren von Umgebungen mit Tags. |
|
Zeigt detaillierte Informationen während des Migrationsprozesses an. Zeigt bei Verwendung mit einem explore Unterbefehl umfassende Informationen zur Site-Konfiguration an. |
or
|
VPC-Konfiguration für die Umgebung, entweder als JSON-Dateipfad oder als JSON-Zeichenfolge angegeben. Die Konfiguration muss Folgendes beinhalten:
WichtigBei der Migration werden alle vorhandenen VPC-Einstellungen aus der Quellumgebung ignoriert, wenn Sie den |
Output
Der Befehl stellt während des gesamten Migrationsprozesses Statusaktualisierungen bereit:
-
VPC-Konfigurationserkennung (bei Ausführung auf einer EC2 Instance)
-
Fortschritt der Generierung des Quellpakets für jede Site
-
Status der Erstellung der Umgebung
-
Fortschritt der Bereitstellung
Bei erfolgreicher Ausführung werden die Details der neuen Umgebung angezeigt, darunter:
-
Name und ID der Umgebung
-
Anwendungsname
-
Region
-
Plattformversion
-
Umgebung CNAME
Verwenden Sie bei Problemen während der Migration die eb healthBefehle eb eventsund, um detaillierte Informationen zu erhalten.
Beispiele
Grundlegende Verwendung
Grundlegende Migration im interaktiven Modus:
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 bestimmter Websites mit benutzerdefinierter Konfiguration:
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
Migrationsarchiv ohne Bereitstellung erstellen:
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.
Beispiele für erweiterte Konfigurationen
Migration mit benutzerdefinierter VPC-Konfiguration mithilfe einer JSON-Datei:
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 von Websites mit SSL-Zertifikaten und Host-Headern:
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 mit EBS-Snapshot-Konfiguration: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
Beispiele für Sicherheitskonfigurationen
Umgang mit Websites mit komplexen Firewallregeln:
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 mit benutzerdefinierten IAM-Rollen:
PS C:\migrations_workspace > eb migrate `
--sites "SecureApp" `
--instance-profile "CustomInstanceProfile" `
--service-role "CustomServiceRole"
Beispiele für die Ausführung per Fernzugriff
Migration von IIS-Anwendungen von einem Windows-Remoteserver:
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
Remote-Migration mit spezifischer Standortwahl:
PS C:\migrations_workspace > eb migrate `
--remote `
--target-ip "192.0.2.10" `
--username "administrator" `
--password "YourPassword123" `
--sites "API" `
--instance-type "c5.large"