ALIBABA CLOUD RDS → STACKIT DATENBANKEN · LEITFADEN

ApsaraDB RDS zu STACKIT Managed Databases

Eine ApsaraDB-RDS-Instanz zieht nicht als Ganzes um: Das Attribut engine entscheidet über das STACKIT-Ziel. PostgreSQL geht nach PostgreSQL Flex, SQL Server nach SQLServer Flex und MySQL nach MariaDB, denn STACKIT bietet MariaDB und kein MySQL. Alle drei sind in der Bewertung REPLATFORM. PolarDB ist REDESIGN, und ApsaraDB for Redis wird eine Valkey-Instanz. StackToIT liest das Terraform, nennt Ziel und Begründung je Datenbank und führt jede zustandsbehaftete Einheit als Entscheidung zum Datenumzug für Sie auf.

Die Migration in sechs Schritten

  1. 1. Inventar nach Engine

    Führen Sie stacktoit assess auf dem Terraform aus. Der Wert von engine jeder alicloud_db_instance bestimmt das Ziel; listen Sie die Instanzen deshalb nach Engine auf, bevor Sie irgendetwas anderes planen. engineering/architect-report.md nennt je Instanz sieben Einstellungen, darunter engine, engine_version, instance_type und instance_storage, als kritische Einstellungen, die Ihnen überlassen bleiben.

  2. 2. Das genannte Ziel übernehmen

    Im Beispiellauf unten wird die PostgreSQL-Instanz zu STACKIT PostgreSQL Flex, die MySQL-Instanz zu STACKIT MariaDB und die SQL-Server-Instanz zu STACKIT SQLServer Flex. Jede trägt eine Begründung, die Sie an die für die Datenbank verantwortliche Person weitergeben können.

  3. 3. Netzwerk zuerst klären

    Die Datenbanken liegen in Welle 3, weil sie vom vSwitch abhängen, der seinerseits von der VPC abhängt. Der Lauf legt die VPC in Welle 1, den vSwitch in Welle 2 und die Datenbanken in Welle 3; die STACKIT-Netzwerke stehen also, bevor Daten ankommen.

  4. 4. Mechanismus für den Datenumzug wählen

    Der Lauf führt fünf zustandsbehaftete Einheiten auf, setzt bei jeder den Mechanismus auf UNKNOWN und den Status auf DECISION_REQUIRED. Datenmenge, Änderungsrate, tolerierte Ausfallzeit und Recovery Point stehen nicht im Terraform; Sie tragen sie in die Applications-Datei ein und wählen den Mechanismus.

  5. 5. Restore auf STACKIT proben (Praxis)

    Bewährte Praxis, keine Ausgabe des Laufs: Spielen Sie eine Kopie in eine neue STACKIT-Instanz ein, lassen Sie die Anwendungstests dagegen laufen und messen Sie die Dauer. Erst diese Probe liefert die Ausfallzeit, die im Terraform nicht stehen kann.

  6. 6. Umstellen und den Rückweg offenhalten

    Stellen Sie die Anwendung auf den STACKIT-Endpunkt um. Bewährt hat sich, die Alibaba-Cloud-Instanz schreibgeschützt weiterzubetreiben, bis alle Prüfungen bestanden sind, und festzuhalten, wie der Schritt zurückgenommen wird. Das Ausführungspaket überlässt den Rollback der Person, die den jeweiligen manuellen Schritt ausführt.

Drei RDS-Instanzen, bewertet

Eine kleine Alibaba-Cloud-Umgebung, für diese Seite geschrieben und am 4. November 2026 von StackToIT bewertet. Links die drei Datenbankblöcke der Eingabe, rechts das Ergebnis, das der Lauf für sie festgehalten hat, ein Auszug aus assessment.json mit den Werten, wie der Lauf sie geschrieben hat. Da assessment.json in einer einzigen Zeile geschrieben ist, zeigt der Ausschnitt ausgewählte Felder jeder Einheit, eingerückt und so verschachtelt wie in der Datei, mit unveränderten Werten.

Beispieleingabemain.tf
resource "alicloud_db_instance" "orders" {
  engine               = "PostgreSQL"
  engine_version       = "16.0"
  instance_type        = "pg.n2.2c.2m"
  instance_storage     = 100
  instance_name        = "shop-orders"
  vswitch_id           = alicloud_vswitch.app.id
  instance_charge_type = "Postpaid"
}

resource "alicloud_db_instance" "catalog" {
  engine               = "MySQL"
  engine_version       = "8.0"
  instance_type        = "mysql.n2.medium.2c"
  instance_storage     = 50
  instance_name        = "shop-catalog"
  vswitch_id           = alicloud_vswitch.app.id
  instance_charge_type = "Postpaid"
}

resource "alicloud_db_instance" "billing" {
  engine               = "SQLServer"
  engine_version       = "2019_std_ha"
  instance_type        = "mssql.x4.large.s2"
  instance_storage     = 200
  instance_name        = "shop-billing"
  vswitch_id           = alicloud_vswitch.app.id
  instance_charge_type = "Postpaid"
}
StackToIT-Bewertungassessment.json
[
  {
    "id": "alicloud_db_instance.orders",
    "result": {
      "class": "REPLATFORM",
      "confidence": "MEDIUM",
      "target": {
        "service": "STACKIT PostgreSQL Flex"
      },
      "reason": "Managed PostgreSQL to managed PostgreSQL: data moves with pg_dump/pg_restore or logical replication, and the instance class becomes a Flex flavor."
    }
  },
  {
    "id": "alicloud_db_instance.catalog",
    "result": {
      "class": "REPLATFORM",
      "confidence": "MEDIUM",
      "target": {
        "service": "STACKIT MariaDB"
      },
      "reason": "STACKIT offers MariaDB, not MySQL; test MySQL-specific features before cut-over, and move the data with a logical dump."
    }
  },
  {
    "id": "alicloud_db_instance.billing",
    "result": {
      "class": "REPLATFORM",
      "confidence": "MEDIUM",
      "target": {
        "service": "STACKIT SQLServer Flex"
      },
      "reason": "Managed SQL Server to SQLServer Flex: check the edition and features in use, and move the data with a backup and restore."
    }
  }
]
  • Die Engine entscheidet

    Derselbe Ressourcentyp ergab drei verschiedene Ziele. PostgreSQL bleibt PostgreSQL, SQL Server bleibt SQL Server, MySQL wird zu MariaDB.

  • Die Begründung gehört zum Ziel

    PostgreSQL: Die Daten wandern mit pg_dump und pg_restore oder per logischer Replikation, die Instanzklasse wird zu einem Flex-Flavor. SQL Server: Edition und genutzte Funktionen prüfen, Daten per Backup und Restore übertragen. MySQL: MySQL-spezifische Funktionen vor dem Cutover testen, Daten per logischem Dump übertragen.

  • Kein Terraform für diese Datenbanken

    Für eine Alibaba-Cloud-Quelle schreibt dieser Build keine STACKIT-Datenbankressource. Der Lauf markiert alle sieben Einheiten als Aufgabe für Ihre Architekten; die STACKIT-Instanzen richten Sie von Hand oder in Ihrem eigenen Terraform ein.

So wird die Datenbankumgebung zugeordnet

Alibaba-Cloud-RessourceSTACKIT-ZielMigrationsklasse
ApsaraDB RDS for PostgreSQLSTACKIT PostgreSQL FlexReplatforming
ApsaraDB RDS for MySQLSTACKIT MariaDBReplatforming
ApsaraDB RDS for SQL ServerSTACKIT SQLServer FlexReplatforming
ApsaraDB for RedisSTACKIT Key Value Store (Valkey)Rekonfigurieren
PolarDB-ClusterKein Ziel vorgeschlagen: PostgreSQL Flex oder MariaDB, je nach kompatibler EngineRedesign
VPC und vSwitchSTACKIT-Netzwerk, bei Bedarf mit Network Area für das RoutingRekonfigurieren

Klassen, wie der Lauf sie festgelegt hat. PolarDB trennt Compute und gemeinsamen Speicher, wofür es bei STACKIT keine Entsprechung gibt; der Lauf vergibt deshalb Konfidenz LOW und überlässt das Ziel Ihnen. Zu Redis heißt es zusätzlich: bestätigen, dass keine Tair-spezifischen Befehle verwendet werden.

Was die STACKIT-Dokumentation zu den Zielen sagt

Diese Punkte stammen von den unter Quellen genannten STACKIT- und Alibaba-Cloud-Seiten, gelesen am Tag der Erstellung.

  • PostgreSQL Flex: Clone statt Restore

    Backups laufen täglich und enthalten Transaktionslogs; Point-in-Time-Restore funktioniert für alle Backups. Ein Clone stellt ein gewähltes Backup in einer neuen Instanz im selben Projekt wieder her. Einen In-Place-Restore bietet STACKIT nicht; die Clients werden deshalb auf den Clone umgelenkt.

  • SQLServer Flex: Ein Restore überschreibt nichts

    Ein Backup entsteht einmal täglich und auf Anforderung. Eine vorhandene Datenbank lässt sich nicht per Restore überschreiben: Sie muss vorher gelöscht werden. Point-in-Time-Restore nutzt einen RFC3339-Zeitstempel.

  • MariaDB: Der Plantyp zählt

    Replica-Pläne haben drei Knoten und Hochverfügbarkeit über Availability Zones. Single-Node-Pläne haben keine Hochverfügbarkeit und werden für Produktion nicht empfohlen. Der Wechsel auf einen höheren Plan verursacht Ausfallzeit.

  • Alibaba-Seite: DTS bleibt zwischen RDS-Instanzen

    DTS bietet Schema-, Voll- und inkrementelle Migration zwischen ApsaraDB-RDS-Instanzen (MySQL, MariaDB, SQL Server, PostgreSQL). Als Ziel nennt die gelesene Seite nur RDS-Instanzen, keine STACKIT-Datenbank; klären Sie einen anderen Weg, bevor Sie Ihre Planung auf DTS stützen.

Entscheidungen, die Ihre Architekten treffen

  • MySQL zu MariaDB

    Welche MySQL-Funktionen nutzen die Anwendungen? Der Lauf verlangt, sie vor dem Cutover zu testen. Entscheiden Sie, ob MariaDB genügt oder der Workload einen anderen Weg braucht.

  • Plan und Verfügbarkeit

    Single-Node- oder Replica-Plan und welche Performance-Klasse. Der instance_type der Quelle wird zu einem Flavor, und die Zuordnung ist nicht eins zu eins.

  • Mechanismus je Datenbank

    Dump und Restore, logische Replikation, Backup und Restore oder ein Replikationswerkzeug in eigenem Betrieb. Wählen Sie nach Datenmenge, Änderungsrate und der Ausfallzeit, die der Fachbereich akzeptiert.

  • PolarDB-Ziel

    PostgreSQL Flex oder MariaDB, je nach kompatibler Engine, nachdem der Workload dort getestet wurde. Der Demo-Cluster setzt db_type MySQL; nach unserer Lesart ist MariaDB daher der erste Kandidat für den Test.

  • Recovery Point und Verantwortung

    Tragen Sie Datenklasse, RPO und Ausfalltoleranz in die Applications-Datei ein. Bis dahin vermerkt der Lauf sie als NOT_PROVIDED und nimmt nichts an.

Fragen von Datenbankteams

Wird ApsaraDB RDS for MySQL zu einem MySQL-Dienst bei STACKIT?

Der Lauf ordnet sie STACKIT MariaDB zu und verlangt Tests MySQL-spezifischer Funktionen vor dem Cutover. Kompatibilität für Ihr Schema oder Ihre Abfragen behauptet er nicht.

Überträgt StackToIT die Daten?

Nein. Es listet die zustandsbehafteten Einheiten in migration/data-movement.md, setzt den Mechanismus auf UNKNOWN und den Status auf DECISION_REQUIRED. Die Methode wählen und betreiben Sie selbst, zum Beispiel pg_dump und pg_restore bei PostgreSQL.

Welche Datei enthält die Datenbank-Entscheidungen?

migration/data-movement.md und migration/data-movement.csv führen die zustandsbehafteten Einheiten mit RPO- und Ausfallfeldern. assessment.json hält Klasse und Begründung je Einheit, execution/manual/actions.md die manuellen Schritte mit Verantwortlichen.

Können wir ein STACKIT-PostgreSQL-Backup über die laufende Instanz zurückspielen?

Die STACKIT-Seite hält fest, dass es keinen In-Place-Restore gibt. Sie klonen ein Backup in eine neue Instanz und lenken die Clients dorthin; planen Sie also den Wechsel des Endpunkts ein.

Quellen

Ihr nächster Schritt: STACKIT.

Erzählen Sie uns von Ihrer Umgebung. Wir zeigen Ihnen, was StackToIT dafür liefert: Zielarchitektur, Terraform-Artefakte und einen strukturierten Migrationsplan.