Eine AppMirror-Ressource ändern
PUT /accounts/{account_id}/k8s/v1/appMirrors/{appMirror_id}
Ersetzt die gesamte gespeicherte Ressource durch den bereitgestellten JSON-Anfragetext, wobei Schlüsselwerte erhalten bleiben, die vom Benutzer nicht geändert werden können.
Nebenwirkungen
-
Verschiedene Nebenwirkungen basierend auf desiredState.
Parameter
| Name | Typ | In | Erforderlich | Beschreibung |
|---|---|---|---|---|
Konto-ID |
Zeichenkette |
Pfad |
True |
ID der übergeordneten Kontoressource
|
appMirror_id |
Zeichenkette |
Pfad |
True |
ID der appMirror-Sammlung, die aufgelistet werden soll |
Anfragetext
Ersetzt die gesamte gespeicherte Ressource durch den bereitgestellten JSON-Anfragetext, wobei Schlüsselwerte erhalten bleiben, die vom Benutzer nicht geändert werden können.
Nebenwirkungen
-
Verschiedene Nebenwirkungen basierend auf desiredState.
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Typ |
Zeichenkette |
True |
Medientyp der Ressource. Definierte Werte sind:
|
Version |
Zeichenkette |
True |
Version der Ressource. Definierte Werte sind:
|
id |
Zeichenkette |
Falsch |
Weltweit eindeutiger Bezeichner der Ressource. Definierte Werte sind:
|
sourceAppID |
Zeichenkette |
Falsch |
Kennung der Quellanwendung. Wird nur aktualisiert, wenn die sourceAppID mit der destinationAppID ausgetauscht wird. Definierte Werte sind:
|
Quell-Cluster-ID |
Zeichenkette |
Falsch |
Kennung des verwalteten Clusters, auf dem die Quellanwendung gehostet wird. Dieses Feld ist schreibgeschützt und wird anhand des Host-Clusters der Quellanwendung ermittelt. Wird es bei einem Update angegeben, muss es mit der Cluster-ID der Quellanwendung übereinstimmen, daher kann es sich nur ändern, wenn die sourceAppID mit der destinationAppID vertauscht wird. Definierte Werte sind:
|
destinationAppID |
Zeichenkette |
Falsch |
Kennung der Zielanwendung. Kann beim Erstellen nicht angegeben werden, da im Rahmen der Beziehungsinitialisierung eine neue App-ID generiert wird. Kann nur aktualisiert werden, wenn die sourceAppID mit der destinationAppID ausgetauscht wird. Definierte Werte sind:
|
Ziel-Cluster-ID |
Zeichenkette |
Falsch |
Kennung des verwalteten Clusters, das die Zielanwendung hostet. Muss beim Erstellen angegeben werden, da sie bestimmt, auf welchem Cluster die Zielanwendung erstellt wird. Wird sie beim Aktualisieren angegeben, muss sie mit der Cluster-ID der Zielanwendung übereinstimmen, daher kann sie sich nur ändern, wenn sourceAppID mit destinationAppID vertauscht wird. Definierte Werte sind:
|
namespaceMapping |
Array["namespaceMapping"] |
Falsch |
Der oder die Namespaces, die beim Erstellen der Zielanwendung verwendet werden sollen, entsprechend den Namespaces der Quellanwendung. Jedes JSON-Objekt enthält die Felder „clusterID“ und „namespaces“, wobei der Wert von „clusterID“ die JSON-String-ID des Quell- oder Ziel-Cluster ist und der Wert von „namespaces“ ein JSON-Array von JSON-Strings ist. Für jeden Cluster muss genau ein JSON-Objekt vorhanden sein, und die Namespaces werden über ihren Index korreliert. Falls nicht angegeben, wird derselbe Namespace vom Quell-Cluster auch im Ziel-Cluster verwendet. Folgende Werte sind definiert:
|
storageClasses |
Array["storageClasses"] |
Falsch |
Die Speicherklasse, die auf dem Ziel-Cluster beim Erstellen neuer Persistent Volume Claims (PVCs) verwendet werden soll. Jedes JSON-Objekt enthält die Felder „clusterID“ und „storageClassName“, wobei der Wert von „clusterID“ die JSON-String-ID des Quell- oder Ziel-Cluster ist und „storageClassName“ die Speicherklasse ist, die beim Erstellen von PVCs auf diesem Cluster verwendet werden soll. Wenn kein Wert angegeben wird oder der Wert für einen Cluster fehlt, wird die Standard-Speicherklasse für diesen Cluster verwendet. Definierte Werte sind:
|
Zustand |
Zeichenkette |
Falsch |
Der Status der Beziehung. Definierte Werte sind:
|
stateTransitions |
Array["type_astra_stateTransition"] |
Falsch |
Zulässige Zustandsübergänge. Für diese Ressource sind folgende Zustandsübergänge möglich:
|
stateDesired |
Zeichenkette |
Falsch |
Der gewünschte Zustand der Beziehung. Bei der Erstellung ist nur der Wert „etabliert“ gültig. Folgende Werte sind definiert:
|
stateAllowed |
Array[string] |
Falsch |
Zustände, die in einem bestimmten Zustand angefordert werden können. Die folgenden Zustände können in jedem definierten Zustand angefordert werden:
|
stateDetails |
Array["type_astra_stateDetail"] |
Falsch |
Zusätzliche Details zum aktuellen Zustand, einschließlich der Gründe für dessen Erreichen. Sind keine Details verfügbar, ist dieses Array leer. Folgende Werte sind definiert:
|
transferState |
Zeichenkette |
Falsch |
Status der aktuellen oder letzten Snapshot-Übertragung. Folgende Werte sind definiert:
|
transferStateTransitions |
Array["type_astra_stateTransition"] |
Falsch |
Zulässige Zustandsübergänge von einem vorgegebenen Zustand aus. Für diese Ressource sind folgende Zustandsübergänge möglich:
|
transferStateDetails |
Array["type_astra_stateDetail"] |
Falsch |
Zusätzliche Details zum aktuellen Zustand, einschließlich der Gründe für dessen Erreichen. Sind keine Details verfügbar, ist dieses Array leer. Folgende Werte sind definiert:
|
healthState |
Zeichenkette |
Falsch |
Gesundheitszustand der Ressource. Definierte Werte sind:
|
healthStateTransitions |
Array["type_astra_stateTransition"] |
Falsch |
Zulässige Zustandsübergänge von einem vorgegebenen Zustand aus. Für diese Ressource sind folgende Zustandsübergänge möglich:
|
healthStateDetails |
Array["type_astra_stateDetail"] |
Falsch |
Zusätzliche Details zum aktuellen Zustand, einschließlich der Gründe für dessen Erreichen. Sind keine Details verfügbar, ist dieses Array leer. Folgende Werte sind definiert:
|
Metadaten |
Falsch |
Client- und dienstspezifische Metadaten, die der Ressource zugeordnet sind. Definierte Werte sind:
|
Beispielanfrage
{
"type": "application/astra-appMirror",
"version": "1.1",
"stateDesired": "failedOver"
}
Antwort
Status: 204, Indicates if the appMirror resource was updated.
Antwort
Status: 401, Unauthorized
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Typ |
Zeichenkette |
True |
|
Titel |
Zeichenkette |
True |
|
Detail |
Zeichenkette |
True |
|
Status |
Zeichenkette |
True |
|
Korrelations-ID |
Zeichenkette |
Falsch |
Beispielantwort
{
"type": "https://astra.netapp.io/problems/3",
"title": "Missing bearer token",
"detail": "The request is missing the required bearer token.",
"status": "401"
}
Antwort
Status: 400, Bad request
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Typ |
Zeichenkette |
True |
|
Titel |
Zeichenkette |
True |
|
Detail |
Zeichenkette |
True |
|
Status |
Zeichenkette |
True |
|
Korrelations-ID |
Zeichenkette |
Falsch |
|
invalidFields |
Array["invalidFields"] |
Falsch |
Liste ungültiger Anfragetextfelder |
Beispielantwort
{
"type": "https://astra.netapp.io/problems/5",
"title": "Invalid query parameters",
"detail": "The supplied query parameters are invalid.",
"status": "400"
}
Antwort
Status: 409, Conflict
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Typ |
Zeichenkette |
True |
|
Titel |
Zeichenkette |
True |
|
Detail |
Zeichenkette |
True |
|
Status |
Zeichenkette |
True |
|
Korrelations-ID |
Zeichenkette |
Falsch |
|
invalidFields |
Array["invalidFields"] |
Falsch |
Liste ungültiger Anfragetextfelder |
Beispielantwort
{
"type": "https://astra.netapp.io/problems/10",
"title": "JSON resource conflict",
"detail": "The request body JSON contains a field that conflicts with an idempotent value.",
"status": "409"
}
Antwort
Status: 403, Forbidden
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Typ |
Zeichenkette |
True |
|
Titel |
Zeichenkette |
True |
|
Detail |
Zeichenkette |
True |
|
Status |
Zeichenkette |
True |
|
Korrelations-ID |
Zeichenkette |
Falsch |
Beispielantwort
{
"type": "https://astra.netapp.io/problems/11",
"title": "Operation not permitted",
"detail": "The requested operation isn't permitted.",
"status": "403"
}
Fehler
Status: 404, Not found
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Typ |
Zeichenkette |
True |
|
Titel |
Zeichenkette |
True |
|
Detail |
Zeichenkette |
True |
|
Status |
Zeichenkette |
True |
|
Korrelations-ID |
Zeichenkette |
Falsch |
Beispiel-Fehlermeldung
{
"type": "https://astra.netapp.io/problems/1",
"title": "Resource not found",
"detail": "The resource specified in the request URI wasn't found.",
"status": "404"
}
Definitionen
Siehe Definitionen
namespaceMapping
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Cluster-ID |
Zeichenkette |
Falsch |
Kennung des Clusters, für den die Namensräume angegeben sind. Folgende Werte sind definiert:
|
Namensräume |
Array[string] |
Falsch |
Liste der im Cluster zu verwendenden Namensräume. Korreliert mit der anderen Namensraumliste des Clusters über den Index. Definierte Werte sind:
|
Rolle |
Zeichenkette |
Falsch |
Die anfängliche Rolle für diese Namespace-Definition. Dieser Parameter ist optional, außer bei Verwendung einer Replikationskonfiguration innerhalb desselben Clusters. Folgende Werte sind definiert:
|
storageClasses
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Cluster-ID |
Zeichenkette |
Falsch |
Kennung des Clusters, für den die Speicherklasse angegeben ist. Folgende Werte sind definiert:
|
storageClassName |
Zeichenkette |
Falsch |
Name der Speicherklasse, die beim Erstellen von PVCs auf dem in „clusterID“ angegebenen Cluster verwendet werden soll. Folgende Werte sind definiert:
|
Rolle |
Zeichenkette |
Falsch |
Die anfängliche Rolle für diese Speicherklassendefinition. Dieser Parameter ist optional, außer bei Verwendung einer Replikationskonfiguration innerhalb desselben Clusters. Folgende Werte sind definiert:
|
type_astra_stateTransition
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
aus |
Zeichenkette |
True |
|
: |
Array[string] |
True |
additionalDetails
type_astra_stateDetail
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Typ |
Zeichenkette |
True |
|
Titel |
Zeichenkette |
True |
|
Detail |
Zeichenkette |
True |
|
additionalDetails |
Falsch |
Typ_Astra_Label
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Name |
Zeichenkette |
True |
|
Wert |
Zeichenkette |
True |
type_astra_metadata_update
Client- und dienstspezifische Metadaten, die der Ressource zugeordnet sind. Definierte Werte sind:
-
Entspricht dem Astra-Metadatenschema. Wird beim Erstellen kein Label angegeben, wird ein Metadatenobjekt ohne Labels erstellt. Wird beim Aktualisieren kein Label angegeben, bleiben die Labels, creationTimestamp und createdBy, des Metadatenobjekts unverändert erhalten.
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Etiketten |
Array["Typ_Astra_Label"] |
Falsch |
|
CreationZeitstempel |
Zeichenkette |
Falsch |
|
Änderungszeitstempel |
Zeichenkette |
Falsch |
|
Erstellt von |
Zeichenkette |
Falsch |
|
modifiedBy |
Zeichenkette |
Falsch |
invalidParams
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Name |
Zeichenkette |
True |
Name des ungültigen Abfrageparameters |
Grund |
Zeichenkette |
True |
Grund, warum der Abfrageparameter ungültig ist |
invalidFields
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
Name |
Zeichenkette |
True |
Name des ungültigen Anfragetextfelds |
Grund |
Zeichenkette |
True |
Grund, warum das Anfragekörperfeld ungültig ist |