Assets in AWS ermitteln

In diesem Dokument wird beschrieben, wie Sie mithilfe der Befehlszeile des Migration Center Discovery-Clients eine Inventarermittlung in Ihrem Amazon Web Services-Konto (AWS) durchführen.

Mit der mcdc-Befehlszeile können Sie Informationen zu den folgenden Assets in Ihrem AWS-Konto erfassen:

  • Amazon CloudFront (Vorschau)
  • Amazon Elastic Compute Cloud (EC2)
  • Amazon Elastic Container Service (ECS) (Vorschau)
  • Amazon Elastic File System (EFS) (Vorschau)
  • Amazon Elastic Kubernetes Service (EKS) (Vorabversion)
  • Amazon Redshift (Vorschau)
  • Amazon Relational Database Service (RDS)
    • Microsoft SQL Server
    • MySQL
    • PostgreSQL
  • Amazon Simple Storage Service (S3) (Vorschau)
  • Amazon Virtual Private Cloud (VPC) (Vorschau)
  • AWS Lambda (Vorschau)
  • Elastic Load Balancing (ELB) (Vorschau)

Die mcdc-Befehlszeile sendet die erfassten Informationen dann an das Migrationscenter, wo Sie die Bewertung abschließen können.

Beschränkungen

Beim Ausführen einer Inventarerkennung für Ihr AWS-Konto gelten für die mcdc-Befehlszeile die folgenden Einschränkungen:

  • Der TCO-Bericht enthält nur EC2- und RDS-Asset-Typen. Wenn Sie alle Asset-Typen außerhalb von Migration Center exportieren und analysieren möchten, exportieren Sie Ihr Inventar.
  • Die folgenden Informationen für EC2-Instanzen werden nicht erfasst:
    • Die Arbeitsspeichernutzung wird nicht erfasst. Damit diese Informationen erfasst werden können, muss der Amazon CloudWatch-Agent auf Ihren EC2-Instanzen installiert und konfiguriert sein.
    • Freier Speicherplatz Führen Sie eine Gastsuchanfrage aus, um diese Informationen zu erfassen.
  • Sie können die mcdc-Befehlszeile nicht auf Linux-Computern ausführen, um Daten von AWS Windows EC2-Instanzen zu erfassen. Wenn Sie Informationen von Windows EC2-Instanzen erfassen möchten, führen Sie die mcdc-Befehlszeile auf einem Windows-Computer aus.

Bei der Inventarermittlung erhobene Daten

Die mcdc-Befehlszeile erfasst die folgenden Informationen von den unterstützten AWS-Diensten:

Asset-Typ Erfasste Daten
Amazon EC2
Klicken Sie hier, um die erhobenen Daten aufzurufen.
  • Instanzdetails (ID, Typ, Status)
  • Rabatt-ID des Inhabers
  • Details zum Instanztyp (CPU, Arbeitsspeicher)
  • Tags
  • Informationen zum Betriebssystem (aus SSM)
  • Gerätezuordnungen und Volumedetails blockieren
  • Leistungsmesswerte (CPU-Auslastung, Netzwerk-E/A, Laufwerk-E/A)
Amazon RDS
Klicken Sie hier, um die erhobenen Daten aufzurufen.
  • Details zur Datenbankinstanz (Kennung, Klasse, Status)
  • Details zu Engine und Engine-Version
  • Zugewiesener Speicher
  • Tags
  • Leistungsmesswerte (CPU-Auslastung, Netzwerkdurchsatz, IOPS, freier Speicherplatz)
  • Leistungsstatistiken (freier Speicher)
Amazon S3
Klicken Sie hier, um die erhobenen Daten aufzurufen.
  • Bucket-Details (Name, ARN, Region, Erstellungsdatum)
  • Tags
  • Versionsstatus
  • Lebenszyklusregeln
  • Leistungsmesswerte (Bucket-Größe nach Speicherklasse, Anzahl der Objekte)
Amazon EKS
Klicken Sie hier, um die erhobenen Daten aufzurufen.
  • Pro Cluster:
    • Clusterdetails (Name, ARN, Version, Status, Endpunkt)
    • Tags
    • Rollen-ARN
    • VPC-Konfiguration
    • Logging-Konfiguration
    • Starttypen (EC2 oder Fargate)
  • Pro verwalteter Knotengruppe:
    • Details zur Knotengruppe (Name, ARN, AMI-Typ, Instanztypen, Festplattengröße)
    • Skalierungskonfiguration (Mindest-, Maximal- und ausgewählte Größe)
    • Zugehörige Autoscaling-Gruppen
  • Pro Fargate-Profil:
    • Profildetails (Name, ARN der Pod-Ausführungsrolle)
    • Subnetze
    • Selektoren (Namespace, Labels)
Amazon ECS
Klicken Sie hier, um die erhobenen Daten aufzurufen.
  • Pro Cluster:
    • Clusterdetails (Name, ARN, Status)
    • Tags
    • Anzahl der Dienste und Aufgaben
    • Registrierte Containerinstanzen
  • Pro Dienst:
    • Dienstdetails (Name, ARN, Starttyp)
    • Aufgabendefinition
    • Planungsstrategie
    • Konfiguration des Deployments
    • Load-Balancer-Informationen
  • Pro Aufgabe:
    • Aufgabendetails (ARN, letzter Status, ausgewählter Status)
    • CPU und Arbeitsspeicher
    • Containerinformationen
ELB
Klicken Sie hier, um die erhobenen Daten aufzurufen.
  • Pro Load Balancer (Version 1 und 2):
    • Details (Name, ARN/ID, DNS-Name, Typ, Schema)
    • Tags
    • VPC und Verfügbarkeitszonen
    • Listener und Regeln
    • Zielgruppen und Zielgruppenintegrität
    • Instanzzustand (für Classic ELBs)
AWS Lambda
Klicken Sie hier, um die erhobenen Daten aufzurufen.
  • Pro Funktion:
    • Konfiguration (Name, ARN, Laufzeit, Rolle, Handler, Zeitlimit)
    • Tags
    • Arbeitsspeicher und flüchtiger Speicher
    • Pakettyp und Codegröße
    • Architekturen
    • Ebenen
    • Umgebungsvariablen
    • Konfiguration für das Tracing
    • Ereignisquellenzuordnungen
    • Gleichzeitigkeitseinstellungen
Amazon CloudFront
Klicken Sie hier, um die erhobenen Daten aufzurufen.
  • Pro Verteilung:
    • Details (ID, ARN, Domainname, Status, aktiviert)
    • Tags
    • Aliasse (CNAMEs)
    • Ursprünge und Ursprungsgruppen
    • Cache-Verhalten
    • Preisklasse, HTTP-Version, IPv6 aktiviert
Amazon EFS
Klicken Sie hier, um die erhobenen Daten aufzurufen.
  • Pro Dateisystem:
    • Details (ID, ARN, Name, Erstellungszeit)
    • Tags
    • Gesamtgröße (Standard- und Infrequent Access)
    • Leistungs- und Durchsatzmodus
    • Verschlüsselungsstatus
    • Lebenszyklusrichtlinien
    • Sicherungsrichtlinie
    • Replikationskonfigurationen
    • Bereitstellungsziele und Zugriffspunkte
Amazon Redshift
Klicken Sie hier, um die erhobenen Daten aufzurufen.
  • Pro bereitgestelltem Cluster:
    • Clusterdetails (Kennung, ARN, Status, Version)
    • Tags
    • Knotentyp und ‑anzahl
    • Datenbankname
    • VPC- und IAM-Rollen
    • Verschlüsselungsstatus
    • Snapshot- und Aqua-Konfiguration
  • Pro serverloser Arbeitsgruppe:
    • Details zur Arbeitsgruppe (Name, ARN, Status, Basis-RPU)
    • Tags
    • Namespace-Informationen (Datenbankname, IAM-Rollen, KMS-Schlüssel)
    • VPC-Endpunkt
    • Konfigurationen für Snapshot-Kopien
Amazon VPC
Klicken Sie hier, um die erhobenen Daten aufzurufen.
  • Pro VPC:
    • VPC-Details (ID, ARN, Status, CIDR-Block, Mandantenfähigkeit)
    • Tags
    • DHCP-Options-ID
    • Zugehörige Subnetze
    • Verknüpfte Netzwerk-ACLs

Mit der mcdc-Befehlszeile werden Messwerte für die letzten 30 Tage erfasst, mit Ausnahme der Datenbank-Arbeitsspeichernutzung. Für die Datenbankspeichernutzung speichert AWS standardmäßig nur Daten für bis zu 7 Tage. Daher werden mit der mcdc-Befehlszeile nur Daten für die letzten 7 Tage erfasst.

Hinweise

Führen Sie vor Beginn der Inventarermittlung die folgenden Schritte aus:

  1. Sehen Sie sich die Anforderungen für das Herunterladen und Ausführen der mcdc-Befehlszeile an.
  2. Wählen Sie aus, wo Sie die mcdc CLI herunterladen möchten, und führen Sie die Schritte zum Herunterladen der mcdc CLI aus.
  3. Sie benötigen Zugriff auf Ihr AWS-Konto.

Speicherort für den Download der mcdc-Befehlszeile auswählen

Sie können die mcdc-Befehlszeile sowohl auf Linux- als auch auf Windows-Computern herunterladen. Wir empfehlen, eine Windows-EC2-Instanz zum Herunterladen und Ausführen der mcdc-CLI zu verwenden, da sie alle verfügbaren Erfassungsmethoden unterstützt.

Sie können die mcdc-Befehlszeile an einen Speicherort herunterladen, der Zugriff auf Ihre Ziel-Assets hat, z. B.:

  • AWS CloudShell
  • Eine Linux-EC2-Instanz
  • Eine Windows EC2-Instanz
  • Jeder Computer, auf dem Sie die mcdc CLI installiert haben und auf den Sie Remotezugriff auf Ihr AWS-Konto haben.

Eine Anleitung zum Herunterladen des mcdc-CLI finden Sie unter mcdc-CLI herunterladen.

AWS-IAM-Richtlinie erstellen

Damit die mcdc-Befehlszeile die AWS-Asset-Inventardaten lesen darf, erstellen Sie eine AWS IAM-Richtlinie mit den folgenden Berechtigungen:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "cloudfront:ListDistributions",
        "cloudfront:ListTagsForResource",
        "cloudwatch:DescribeAlarms",
        "cloudwatch:ListTagsForResource",
        "cloudwatch:GetMetricData",
        "ec2:DescribeRegions",
        "ec2:DescribeInstances",
        "ec2:DescribeInstanceTypes",
        "ec2:DescribeVolumes",
        "ec2:DescribeVpcs",
        "ec2:DescribeSubnets",
        "ec2:DescribeNetworkAcls",
        "ecs:ListClusters",
        "ecs:DescribeClusters",
        "ecs:ListServices",
        "ecs:DescribeServices",
        "ecs:ListTasks",
        "ecs:DescribeTasks",
        "ecs:ListContainerInstances",
        "ecs:DescribeContainerInstances",
        "efs:DescribeFileSystems",
        "efs:ListTagsForResource",
        "efs:DescribeLifecycleConfiguration",
        "efs:DescribeBackupPolicy",
        "efs:DescribeReplicationConfigurations",
        "efs:DescribeMountTargets",
        "efs:DescribeAccessPoints",
        "eks:ListClusters",
        "eks:DescribeCluster",
        "eks:ListNodegroups",
        "eks:DescribeNodegroup",
        "eks:ListFargateProfiles",
        "eks:DescribeFargateProfile",
        "autoscaling:DescribeAutoScalingGroups",
        "elasticloadbalancing:DescribeLoadBalancers",
        "elasticloadbalancing:DescribeTags",
        "elasticloadbalancing:DescribeListeners",
        "elasticloadbalancing:DescribeRules",
        "elasticloadbalancing:DescribeTargetGroups",
        "elasticloadbalancing:DescribeTargetHealth",
        "elasticloadbalancing:DescribeInstanceHealth",
        "lambda:ListFunctions",
        "lambda:ListTags",
        "lambda:ListEventSourceMappings",
        "lambda:GetFunctionConcurrency",
        "rds:DescribeDBInstances",
        "rds:DescribeDBEngineVersions",
        "pi:GetResourceMetrics",
        "redshift:DescribeClusters",
        "redshift-serverless:ListWorkgroups",
        "redshift-serverless:GetNamespace",
        "redshift-serverless:ListSnapshotCopyConfigurations",
        "redshift-serverless:ListTagsForResource",
        "s3:ListAllMyBuckets",
        "s3:GetBucketLocation",
        "s3:GetBucketTagging",
        "s3:GetBucketVersioning",
        "s3:GetLifecycleConfiguration",
        "ssm:DescribeInstanceInformation"
      ],
      "Resource": "*"
    }
  ]
}

Bei AWS authentifizieren

Um die mcdc-Befehlszeile für den Zugriff auf Ihre AWS-Umgebung zu autorisieren, authentifizieren Sie Ihr Konto mit einer der folgenden Methoden:

Vorhandene AWS-Anmeldedaten verwenden

Wenn Sie Ihre vorhandenen AWS-Anmeldedaten verwenden möchten, führen Sie die mcdc-CLI-Befehle direkt über die AWS Cloud Shell aus. Wenn Sie die mcdc CLI über die AWS Cloud Shell ausführen, können Sie Ihre vorhandenen Anmeldedaten ohne Zugriffsschlüssel verwenden. In diesem Fall kann die mcdc-Befehlszeile auf Ihre AWS-Umgebung zugreifen, um AWS-Assets zu ermitteln, da der Zugriff durch Ihre Anmeldedaten gewährt wird.

Zugriffsschlüssel für die mcdc-CLI erstellen

So erstellen Sie einen Zugriffsschlüssel für die mcdc CLI:

  1. Erstellen Sie einen dedizierten IAM-Nutzer für die Interaktion mit der AWS API.
  2. Hängen Sie die im vorherigen Abschnitt erstellte IAM-Richtlinie an Ihren neuen Nutzer an.
  3. Rufen Sie in der AWS-Konsole den im vorherigen Schritt erstellten IAM-Nutzer auf und klicken Sie auf User  > Security Credentials  > Create access key  > Other  > Next  > Create access key.

    Weitere Informationen finden Sie unter Zugriffsschlüssel erstellen.

Speichern Sie die Zugriffsschlüssel-ID und den Zugriffsschlüssel. Sie benötigen diese Informationen, um Ihr AWS-Inventar zu scannen.

Optional: Zugriff zum Erfassen von Gastbetriebssystemdaten einrichten

Gastbetriebssystemdaten werden in Preisberichten, Lizenzberichten und Asset-Details-Exporten verwendet. Diese Daten helfen auch bei der Bewertung der Eignung für Containerisierungsmigrationen zu Google Kubernetes Engine, GKE Autopilot und Cloud Run. Wenn Sie keine Betriebssystemdaten erheben möchten, können Sie diesen Abschnitt überspringen.

Zum Erfassen von Gastbetriebssystemdaten muss die Workstation, auf der die mcdc-Befehlszeile ausgeführt wird, eine Verbindung zu den EC2-Zielinstanzen herstellen. Achten Sie darauf, dass die folgenden Ports auf den Ziel-EC2-Instanzen geöffnet sind:

  • Port 22 (SSH) für Linux-Computer
  • Port 135 (WMI) für Windows-Computer

Assets in Ihrem AWS-Konto ermitteln

So suchen Sie nach Assets in Ihrem AWS-Konto:

  1. Wechseln Sie im Befehlszeilenterminal in das Verzeichnis, in das Sie die mcdc-CLI heruntergeladen haben.

  2. Führen Sie die Erkennung aus:

    AWS CloudShell

    Führen Sie den folgenden Befehl aus, um Assets in Ihrem AWS-Konto zu ermitteln:

    Linux

    ./mcdc discover aws --host-config \ 
    [--services AWS_SERVICE_NAMES] \
    [--region AWS_REGION]

    Windows

    mcdc.exe discover aws --host-config \ 
    [--services AWS_SERVICE_NAMES] \
    [--region AWS_REGION]

    Ersetzen Sie Folgendes:

    • AWS_SERVICE_NAMES: Die Arten von Assets, die erkannt werden sollen. Geben Sie eine durch Kommas getrennte Liste an. Unterstützte Werte sind cloudfront, dynamodb, ecs, efs, eks, elb, lambda, db (RDS), redshift, route53, s3, vm (EC2) und vpc. Wenn Sie dieses Flag nicht angeben, werden alle unterstützten Asset-Typen erkannt.
    • AWS_REGION: Die AWS-Region, in der sich Ihre EC2-Instanzen und RDS-Datenbanken befinden. Dieses Flag ist optional. Wenn Sie dieses Flag nicht angeben, werden Assets aus allen aktivierten AWS-Regionen ermittelt.

    AWS-Zugriffsschlüssel

    Führen Sie den folgenden Befehl aus, um Assets in Ihrem AWS-Konto mithilfe Ihrer AWS-Zugriffsschlüssel-ID und Ihres Zugriffsschlüssels zu ermitteln:

    Linux

    ./mcdc discover aws --access-key-id AWS_ACCESS_KEY_ID \  
    --secret-access-key AWS_ACCESS_KEY \
    [--services AWS_SERVICE_NAMES] \
    [--region AWS_REGION]

    Windows

    mcdc.exe discover aws --access-key-id AWS_ACCESS_KEY_ID \  
    --secret-access-key AWS_ACCESS_KEY \
    [--services AWS_SERVICE_NAMES] \
    [--region AWS_REGION]

    Ersetzen Sie Folgendes:

    • AWS_ACCESS_KEY_ID: Die Zugriffsschlüssel-ID, die Sie im Abschnitt Zugriffsschlüssel für die mcdc CLI erstellen erstellt haben.
    • AWS_ACCESS_KEY: Der Zugriffsschlüssel, den Sie im Abschnitt Zugriffsschlüssel für die mcdc CLI erstellen erstellt haben.
    • AWS_SERVICE_NAMES: Die Arten von Assets, die erkannt werden sollen. Geben Sie eine durch Kommas getrennte Liste an. Unterstützte Werte sind cloudfront, dynamodb, ecs, efs, eks, elb, lambda, db (RDS), redshift, route53, s3, vm (EC2) und vpc. Wenn Sie dieses Flag nicht angeben, werden alle unterstützten Asset-Typen erkannt.
    • AWS_REGION: die AWS-Region, in der sich Ihre AWS-Assets befinden. Dieses Flag ist optional. Wenn Sie dieses Flag nicht angeben, werden Assets aus allen aktivierten AWS-Regionen ermittelt.

    Die Ausgabe sollte in etwa so aussehen:

    [+] Collecting for AWS Account: 123456789012
    [+] Collecting RDS in region eu-north-1
    [✓] Collected 0 DB instances
    [!] No DB instances found
    [+] Collecting ECS in region eu-north-1
    [+] Successfully collected data for 2 ECS clusters in region eu-north-1
    [+] Collecting S3...
    [+] Successfully collected data for 74 S3 buckets
    [✓] Collection completed.
    
  3. Optional: Führen Sie den folgenden Befehl aus, um die erfassten Daten zu prüfen:

    Linux

    ./mcdc discover ls

    Windows

    mcdc.exe discover ls

    Die Ausgabe sollte in etwa so aussehen:

    VM Assets
    PLATFORM VM ID       NAME              COLLECTED DATA   OS                          IP ADDRESSES
    i-011d6234b5769fe2a  abc-rhel9.0-arm   AWSVM            Red Hat Enterprise Linux    192.0.2.1
    i-08f7e5e469508460f  def-rhel9.0-arm   AWSVM            Red Hat Enterprise Linux    192.0.2.2
    i-09e28bb6eggg94db8  ghi-ol9.3         AWSVM            Linux/UNIX                  192.0.2.3
    
    Database Assets
    GENERATED ID                                         PROVIDER        ENGINE
    arn:aws:rds:eu-west-1:12345678912:db:abc-sqlserver   RDS             SQL Server
    
    AWS CloudFront Distribution: 2 assets were collected.
    AWS ECS Cluster: 3 assets were collected.
    AWS EFS: 5 assets were collected.
    AWS Elastic Load Balancer: 7 assets were collected.
    AWS Lambda: 9 assets were collected.
    AWS Redshift: 2 assets were collected.
    AWS S3 Bucket: 77 assets were collected.
    AWS VPC: 84 assets were collected.
    

    Optional können Sie mit dem Flag --asset-types Assets eines bestimmten Typs anzeigen lassen. Wenn Sie beispielsweise nur EC2-Instanzen anzeigen lassen möchten, führen Sie den folgenden Befehl aus:

    Linux

    ./mcdc discover ls --asset-types=vm

    Windows

    mcdc.exe discover ls --asset-types=vm

    Wenn Sie das Flag --asset-types verwenden, werden nur die folgenden Assettypen unterstützt:

    • db: Relational Database Service (RDS)
    • vm: Elastic Compute Cloud (EC2)

  4. Nachdem Sie Ihre Assets ermittelt haben, können Sie die erfassten Daten in Migration Center exportieren, um die Assets anzusehen.

Nächste Schritte