ALIBABA CLOUD OSS → STACKIT OBJECT STORAGE · TUTORIAL
Alibaba OSS zu STACKIT Object Storage, Schritt für Schritt
Ein OSS-Bucket wird zu einem STACKIT-Object-Storage-Bucket mit S3-API. Diese Anleitung nimmt drei in Terraform beschriebene OSS-Buckets, lässt StackToIT sie bewerten und liest, was der Lauf zu jedem sagt: welche Einstellungen auf dem Ziel neu aufgebaut werden müssen, was STACKIT dazu dokumentiert und warum das Kopieren der Daten eine Entscheidung bleibt, die der Lauf Ihnen überlässt.
Schritt 1: ein Bucket mit echten Einstellungen, bewertet
Eine kleine Alibaba-Cloud-Umgebung, für diese Seite geschrieben: drei Buckets, am 4. November 2026 von StackToIT bewertet. Links der Bucket mit den meisten Einstellungen aus der Eingabe, rechts das Ergebnis, das der Lauf für ihn festgehalten hat, ein Auszug aus assessment.json mit den Werten genau so, 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.
resource "alicloud_oss_bucket" "assets" {
bucket = "shop-assets-prod"
storage_class = "Standard"
acl = "private"
versioning {
status = "Enabled"
}
server_side_encryption_rule {
sse_algorithm = "AES256"
}
lifecycle_rule {
id = "expire-tmp"
prefix = "tmp/"
enabled = true
expiration {
days = 30
}
}
cors_rule {
allowed_origins = ["https://shop.example.com"]
allowed_methods = ["GET", "HEAD"]
allowed_headers = ["*"]
max_age_seconds = 3600
}
}{
"id": "alicloud_oss_bucket.assets",
"result": {
"class": "RECONFIGURE",
"confidence": "MEDIUM",
"target": {
"service": "STACKIT Object Storage",
"resources": [
"stackit_objectstorage_bucket",
"stackit_objectstorage_credentials_group",
"stackit_objectstorage_credential"
]
},
"reason": "An OSS bucket becomes a STACKIT Object Storage bucket with an S3 API. Applications that use the OSS SDK change their client; lifecycle, replication and access settings need review."
}
}Klasse: RECONFIGURE
Der Bucket behält seine Rolle und bekommt eine neue Form. Alle drei Buckets des Laufs sind RECONFIGURE mit Konfidenz MEDIUM, in Welle 1 und ohne Abhängigkeit von einer anderen Einheit.
Drei Zielressourcen
Der Lauf nennt stackit_objectstorage_bucket, stackit_objectstorage_credentials_group und stackit_objectstorage_credential. Der Bucket braucht Zugangsdaten für seine Clients, deshalb gehören sie zum Ziel.
Der Client ändert sich
Anwendungen, die das OSS-SDK nutzen, wechseln auf einen S3-Client. So begründet es der Lauf selbst, und es ist der Teil des Umzugs, der den Anwendungscode berührt.
Schritt 2: die Einstellungen, die der Lauf Ihnen nennt
StackToIT listet jede Einstellung auf, die es aus dem Bucket gelesen hat, und übernimmt keine stillschweigend. Für den obigen Bucket nennt es 13 Einstellungen, für die beiden anderen 3 und 4.
assets: 13 Einstellungen
acl, bucket, storage_class, versioning.status, server_side_encryption_rule.sse_algorithm, lifecycle_rule.id, lifecycle_rule.prefix, lifecycle_rule.enabled, lifecycle_rule.expiration.days, cors_rule.allowed_origins, cors_rule.allowed_methods, cors_rule.allowed_headers und cors_rule.max_age_seconds.
archive: 3 Einstellungen
acl, bucket und storage_class. Auf die Speicherklasse Archive sollten Sie schauen: Die Einführung zu STACKIT Object Storage nennt keine Speicherklassen. Planen Sie den Bucket daher als normalen Speicher und entscheiden Sie, wie sein Zugriffsmuster bedient wird.
site: 4 Einstellungen
acl, bucket, website.index_document und website.error_document. Der Bucket ist public-read und liefert eine statische Website aus.
Nichts davon wird entworfen
Für Alibaba-Cloud-Quellen schreibt der Lauf in diesem Build keinen STACKIT-Ressourcenblock. Der Entwurfsordner führt die drei Buckets als Aufgabe für Ihre Architekten; Bucket, Zugangsdaten und Richtlinien legt Ihr Team anhand der genannten Einstellungen an.
Schritt 3: was STACKIT zu jeder Einstellung dokumentiert
Die rechte Spalte stammt aus den unten genannten Seiten der STACKIT-Dokumentation, nicht aus dem Lauf. Prüfen Sie die Angaben für die Region und das Projekt, in das Sie migrieren.
| OSS-Einstellung im Beispiel | Was STACKIT dokumentiert | Was Sie entscheiden |
|---|---|---|
| versioning.status = Enabled | Versionierung ist verfügbar. Einmal aktiviert, lässt sie sich nicht mehr deaktivieren, nur aussetzen; ein Objekt ist auf 1.000 Versionen begrenzt. | Ob der Bucket überhaupt Versionen braucht und wie alte Versionen entfernt werden. |
| lifecycle_rule mit expiration.days = 30 | Abrufen, Setzen und Löschen einer Bucket-Lifecycle-Konfiguration sind als unterstützte Operationen aufgeführt. | Regel neu anlegen und an einer Kopie testen, bevor die Daten ankommen. |
| cors_rule für https://shop.example.com | Abrufen, Setzen und Löschen von Bucket-CORS sind als unterstützte Operationen aufgeführt. | Origin, Methoden und Max-Age neu setzen, sobald der Host-Name nach dem Cutover feststeht. |
| server_side_encryption_rule (AES256) | Abrufen, Setzen und Löschen der Bucket-Verschlüsselung sind aufgeführt; die Einführung nennt serverseitige Verschlüsselung als verfügbar. | Ob die Standardverschlüsselung des Ziels für Ihre Datenklasse genügt. |
| acl = private / public-read | Aufgeführt ist nur das Lesen einer Bucket-ACL. Zugriff wird über Bucket-Richtlinien und Zugangsdaten ausgedrückt. | Jede ACL in eine Richtlinie übersetzen; der public-read-Website-Bucket braucht eine bewusste Entscheidung. |
| Website-Index und Fehlerdokument | Die Seite zu unterstützten Operationen führt keine Operation für Website-Hosting auf. | Statisches Hosting vor dem Umzug des Site-Buckets mit STACKIT klären oder die Seite anderswo ausliefern. |
Bucket-Namen müssen im gesamten System eindeutig sein, 3 bis 63 Zeichen. Ein Name wie shop-assets-prod kann bereits vergeben sein; prüfen Sie ihn, bevor Sie Clients darauf planen.
Schritt 4: das Kopieren der Daten wird aufgeführt, nicht gewählt
StackToIT überträgt nie Daten. Für die drei Buckets schreibt es eine Datei zum Datenumzug, die jeden als zustandsbehaftete Einheit führt und das Verfahren offenlässt. Auszug aus migration/data-movement.md, unverändert.
StackToIT never moves data. 3 stateful source units are listed here: a person must choose a data-movement mechanism for each, and none is chosen (the mechanism is UNKNOWN).
State: DECISION REQUIRED.
## Stateful source units
| Unit | Source service | Target service | Application | Mechanism | State | Data class | RPO | Downtime tolerance |
|---|---|---|---|---|---|---|---|---|
| alicloud_oss_bucket.archive | alicloud_oss_bucket | STACKIT Object Storage | | UNKNOWN | DECISION_REQUIRED | NOT_PROVIDED | NOT_PROVIDED | NOT_PROVIDED |
| alicloud_oss_bucket.assets | alicloud_oss_bucket | STACKIT Object Storage | | UNKNOWN | DECISION_REQUIRED | NOT_PROVIDED | NOT_PROVIDED | NOT_PROVIDED |
| alicloud_oss_bucket.site | alicloud_oss_bucket | STACKIT Object Storage | | UNKNOWN | DECISION_REQUIRED | NOT_PROVIDED | NOT_PROVIDED | NOT_PROVIDED |Verfahren UNKNOWN
Datenmenge, Änderungsrate und tolerierte Ausfallzeit stehen nicht im Terraform, deshalb kann der Lauf kein Verfahren wählen. Er bittet eine Person darum.
Datenklasse, RPO, Ausfallzeit
Die drei Spalten zeigen NOT_PROVIDED. Gefüllt werden sie wörtlich aus einer Anwendungsdatei (applications file), die Sie dem Lauf übergeben; nichts wird angenommen.
Schritt 5: die Objekte umziehen
Allgemeine Praxis für das Kopieren selbst. Der Lauf führt nichts davon aus.
Zuerst das Ziel anlegen
Legen Sie den Object-Storage-Bucket und eine Credentials-Gruppe an, dann die Zugangsdaten für den Kopierjob. Setzen Sie Lifecycle, CORS und Verschlüsselung aus Schritt 3, bevor das erste Objekt ankommt.
Ein Werkzeug wählen, das beide Seiten anbindet
Die OSS-Dokumentation behandelt Kopien von OSS nach OSS: ossutil cp für kleine und mittlere Mengen innerhalb einer Region und eines Kontos, Same-Region-Replikation für große oder kontoübergreifende Umzüge und Cross-Region-Replikation zwischen Regionen. Laut der Seite zu ossutil cp kopiert cp nicht über Konto- oder Regionsgrenzen. Für eine Kopie von OSS auf eine S3-API brauchen Sie ein Werkzeug mit je einem Remote pro Seite, zum Beispiel rclone.
Kopieren, dann wiederholen
Fahren Sie einen vollständigen Durchlauf, während die Quelle in Betrieb bleibt, und wiederholen Sie ihn, um Änderungen nachzuziehen. Spätere Durchläufe dauern in der Regel deutlich kürzer als der erste. Halten Sie Schreibzugriffe nur für den letzten Durchlauf an, wenn die Konsistenz es verlangt.
Vergleichen, bevor Sie umschalten
Vergleichen Sie Objektanzahl und Gesamtgröße je Präfix auf beiden Seiten und prüfen Sie Prüfsummen stichprobenartig. Behalten Sie den OSS-Bucket, bis die neuen Clients einen vollen Geschäftszyklus gelaufen sind.
Grenzen beachten
STACKIT dokumentiert eine maximale Objektgröße von 5 TB, 1.000 Buckets je Projekt und 500 MB/s Up- und Download-Bandbreite je Projekt. Für einen sehr großen Bucket brauchen Sie einen Plan für die Dauer des Kopierens.
Bevor Sie etwas anwenden
Provider-Version festschreiben
Der Lauf warnt, dass keine Lock-Datei die Version des alicloud-Providers festhält; das begrenzt die Konfidenz jeder Einheit auf MEDIUM. Committen Sie .terraform.lock.hcl und führen Sie den Lauf erneut aus.
Region beantworten
Die Eingabevorlage enthält eine Anfrage, die den Entwurf blockiert: target.region, mit eu01 oder eu02 als Optionen. Füllen Sie sie aus und führen Sie den Lauf erneut aus.
Einen Verantwortlichen benennen
Der Lauf fasst alle drei Buckets in einem Arbeitspaket zusammen, WP-01, mit Storage Architect als verantwortlicher Rolle. Benennen Sie die Person in dieser Rolle, bevor das Kopieren eingeplant wird.
Den Nachweis behalten
Wenn Sie die Region beantwortet und Prüfungen erfasst haben, führen Sie die Bewertung in einen neuen Ordner aus und vergleichen Sie sie mit stacktoit verify --same-as mit dem ersten Lauf. Bewahren Sie beide Ordner auf, damit jede Änderung belegt ist.
Fragen zu OSS und Object Storage
Funktioniert das OSS-SDK gegen STACKIT Object Storage?
Laut Lauf nicht. STACKIT Object Storage bietet eine S3-API, und der Lauf hält fest, dass Anwendungen mit dem OSS-SDK ihren Client wechseln. Planen Sie die Codeänderung je Anwendung ein.
Kopiert StackToIT die Objekte?
Nein. Es führt jeden Bucket als zustandsbehaftete Einheit in der Datei zum Datenumzug und überlässt Verfahren, Zeitfenster und Prüfung Ihnen.
Was geschieht mit einem Bucket, der eine statische Website ausliefert?
Der Lauf ordnet ihn wie jeden Bucket Object Storage zu und nennt Index- und Fehlerdokument als Einstellungen. Die Seite zu unterstützten Operationen bei STACKIT führt keine Operation für Website-Hosting auf; klären Sie diesen Weg vor dem Umzug.
Brauche ich für die Bewertung ein STACKIT-Konto?
Nein. StackToIT liest das Terraform lokal und verbindet sich weder mit Ihrem Alibaba-Cloud-Konto noch mit STACKIT.
Quellen
- Alibaba Cloud: Datenmigrationslösungen für verschiedene Quellen (OSS)
- Alibaba Cloud: Objekte mit dem ossutil-Befehl cp kopieren
- STACKIT-Dokumentation: unterstützte Operationen auf Buckets und Objekten
- STACKIT-Dokumentation: Bucket-Versionierung in Object Storage verwalten
- STACKIT-Dokumentation: Limits von Object Storage
- STACKIT-Dokumentation: Object-Storage-Zugangsdaten anlegen und löschen
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.