Modifier une ressource AppMirror
PUT /accounts/{account_id}/k8s/v1/appMirrors/{appMirror_id}
Remplace l'intégralité de la ressource stockée par le corps de la requête JSON fourni, tout en préservant les valeurs clés non modifiables par l'utilisateur.
Effets secondaires
-
Divers effets secondaires en fonction de desiredState.
Paramètres
| Nom | Type | Dans | Obligatoire | Description |
|---|---|---|---|---|
identifiant_compte |
chaîne |
chemin |
Vrai |
ID de la ressource de compte conteneur
|
appMirror_id |
chaîne |
chemin |
Vrai |
ID de la collection appMirror à lister |
Corps de la requête
Remplace l'intégralité de la ressource stockée par le corps de la requête JSON fourni, tout en préservant les valeurs clés non modifiables par l'utilisateur.
Effets secondaires
-
Divers effets secondaires en fonction de desiredState.
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
type |
chaîne |
Vrai |
Type de média de la ressource. Les valeurs définies sont :
|
version |
chaîne |
Vrai |
Version de la ressource. Les valeurs définies sont :
|
id |
chaîne |
Faux |
Identifiant unique global de la ressource. Les valeurs définies sont :
|
sourceAppID |
chaîne |
Faux |
Identifiant de l'application source. Mis à jour uniquement lors du remplacement de sourceAppID par destinationAppID. Valeurs définies :
|
sourceClusterID |
chaîne |
Faux |
Identifiant du cluster géré hébergeant l'application source. Ce champ est en lecture seule et est déterminé en fonction du cluster hôte de l'application source. S'il est fourni lors d'une mise à jour, il doit correspondre à l'ID du cluster de l'application source, il ne peut donc être modifié que lors d'un échange entre sourceAppID et destinationAppID. Valeurs définies :
|
destinationAppID |
chaîne |
Faux |
Identifiant de l'application de destination. Ne peut pas être fourni lors de la création, car un nouvel ID d'application sera généré lors de l'initialisation de la relation. Ne peut être mis à jour que lors de l'échange de l'ID de l'application source avec l'ID de l'application de destination. Valeurs définies :
|
ID de cluster de destination |
chaîne |
Faux |
Identifiant du cluster géré hébergeant l'application de destination. Doit être fourni lors de la création, car il détermine le cluster sur lequel l'application de destination sera créée. S'il est fourni lors d'une mise à jour, il doit correspondre à l'ID du cluster de l'application de destination, il ne peut donc changer que lors de l'échange de sourceAppID avec destinationAppID. Valeurs définies :
|
namespaceMapping |
tableau["namespaceMapping"] |
Faux |
L'espace de noms (ou les espaces de noms) à utiliser lors de la création de l'application de destination, correspondant aux espaces de noms de l'application source. Chaque objet JSON contient les champs « clusterID » et « namespaces », où la valeur de « clusterID » est l'identifiant JSON du cluster source ou du cluster de destination, et la valeur de « namespaces » est un tableau JSON de chaînes JSON. Il doit y avoir exactement un objet JSON pour chaque cluster, et les espaces de noms seront corrélés par index. Si non fourni, le même espace de noms du cluster source sera utilisé dans le cluster de destination. Valeurs définies :
|
storageClasses |
tableau["storageClasses"] |
Faux |
Classe de stockage à utiliser sur le cluster de destination lors de la création de nouvelles revendications de volume persistant (PVC). Chaque objet JSON contient les champs « clusterID » et « storageClassName », où la valeur « clusterID » est l’identifiant JSON du cluster source ou de destination, et « storageClassName » est la classe de stockage à utiliser lors de la création de PVC sur ce cluster. Si cette valeur n’est pas fournie ou si elle est manquante pour un cluster, la classe de stockage par défaut sera utilisée pour ce cluster. Valeurs définies :
|
État |
chaîne |
Faux |
État de la relation. Valeurs définies :
|
stateTransitions |
tableau["type_astra_stateTransition"] |
Faux |
Transitions d'état autorisées. Les transitions d'état suivantes sont possibles pour cette ressource :
|
stateDesired |
chaîne |
Faux |
État souhaité de la relation. À la création, la seule valeur valide est « established ». Les valeurs définies sont :
|
stateAllowed |
tableau[chaîne] |
Faux |
États pouvant être demandés dans un état donné. Les états suivants peuvent être demandés dans chaque état défini :
|
stateDetails |
tableau["type_astra_stateDetail"] |
Faux |
Informations complémentaires sur l'état actuel, notamment la raison pour laquelle cet état a été atteint. Si aucune information n'est disponible, ce tableau sera vide. Valeurs définies :
|
transferState |
chaîne |
Faux |
État du transfert d'instantané actuel ou le plus récent. Les valeurs définies sont :
|
transferStateTransitions |
tableau["type_astra_stateTransition"] |
Faux |
Transitions d'état autorisées à partir d'un état défini. Les transitions d'état suivantes sont possibles pour cette ressource :
|
transferStateDetails |
tableau["type_astra_stateDetail"] |
Faux |
Informations complémentaires sur l'état actuel, notamment la raison pour laquelle cet état a été atteint. Si aucune information n'est disponible, ce tableau sera vide. Valeurs définies :
|
healthState |
chaîne |
Faux |
État de santé de la ressource. Les valeurs définies sont :
|
healthStateTransitions |
tableau["type_astra_stateTransition"] |
Faux |
Transitions d'état autorisées à partir d'un état défini. Les transitions d'état suivantes sont possibles pour cette ressource :
|
healthStateDetails |
tableau["type_astra_stateDetail"] |
Faux |
Informations complémentaires sur l'état actuel, notamment la raison pour laquelle cet état a été atteint. Si aucune information n'est disponible, ce tableau sera vide. Valeurs définies :
|
les métadonnées |
Faux |
Métadonnées spécifiques au client et au service associées à la ressource. Les valeurs définies sont :
|
Exemple de requête
{
"type": "application/astra-appMirror",
"version": "1.1",
"stateDesired": "failedOver"
}
Réponse
Status: 204, Indicates if the appMirror resource was updated.
Réponse
Status: 401, Unauthorized
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
type |
chaîne |
Vrai |
|
titre |
chaîne |
Vrai |
|
détail |
chaîne |
Vrai |
|
statut |
chaîne |
Vrai |
|
identifiant de corrélation |
chaîne |
Faux |
Exemple de réponse
{
"type": "https://astra.netapp.io/problems/3",
"title": "Missing bearer token",
"detail": "The request is missing the required bearer token.",
"status": "401"
}
Réponse
Status: 400, Bad request
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
type |
chaîne |
Vrai |
|
titre |
chaîne |
Vrai |
|
détail |
chaîne |
Vrai |
|
statut |
chaîne |
Vrai |
|
identifiant de corrélation |
chaîne |
Faux |
|
invalidFields |
tableau["invalidFields"] |
Faux |
Liste des champs invalides du corps de la requête |
Exemple de réponse
{
"type": "https://astra.netapp.io/problems/5",
"title": "Invalid query parameters",
"detail": "The supplied query parameters are invalid.",
"status": "400"
}
Réponse
Status: 409, Conflict
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
type |
chaîne |
Vrai |
|
titre |
chaîne |
Vrai |
|
détail |
chaîne |
Vrai |
|
statut |
chaîne |
Vrai |
|
identifiant de corrélation |
chaîne |
Faux |
|
invalidFields |
tableau["invalidFields"] |
Faux |
Liste des champs invalides du corps de la requête |
Exemple de réponse
{
"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"
}
Réponse
Status: 403, Forbidden
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
type |
chaîne |
Vrai |
|
titre |
chaîne |
Vrai |
|
détail |
chaîne |
Vrai |
|
statut |
chaîne |
Vrai |
|
identifiant de corrélation |
chaîne |
Faux |
Exemple de réponse
{
"type": "https://astra.netapp.io/problems/11",
"title": "Operation not permitted",
"detail": "The requested operation isn't permitted.",
"status": "403"
}
Erreur
Status: 404, Not found
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
type |
chaîne |
Vrai |
|
titre |
chaîne |
Vrai |
|
détail |
chaîne |
Vrai |
|
statut |
chaîne |
Vrai |
|
identifiant de corrélation |
chaîne |
Faux |
Exemple de réponse d'erreur
{
"type": "https://astra.netapp.io/problems/1",
"title": "Resource not found",
"detail": "The resource specified in the request URI wasn't found.",
"status": "404"
}
Définitions
Voir les définitions
namespaceMapping
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
clusterID |
chaîne |
Faux |
Identifiant du cluster pour lequel les espaces de noms sont spécifiés. Les valeurs définies sont :
|
espaces de noms |
tableau[chaîne] |
Faux |
Liste des espaces de noms à utiliser sur le cluster. Corrélée avec l'autre liste d'espaces de noms du cluster par index. Valeurs définies :
|
rôle |
chaîne |
Faux |
Rôle initial de cette définition d'espace de noms. Ce paramètre est facultatif, sauf en cas de configuration de réplication au sein d'un même cluster. Valeurs possibles :
|
storageClasses
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
clusterID |
chaîne |
Faux |
Identifiant du cluster pour lequel la classe de stockage est spécifiée. Les valeurs définies sont :
|
storageClassName |
chaîne |
Faux |
Nom de la classe de stockage à utiliser lors de la création de PVC sur le cluster spécifié dans « clusterID ». Les valeurs définies sont :
|
rôle |
chaîne |
Faux |
Rôle initial de cette définition de classe de stockage. Ce paramètre est facultatif, sauf en cas de configuration de réplication au sein d'un même cluster. Valeurs possibles :
|
type_astra_stateTransition
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
depuis |
chaîne |
Vrai |
|
pour |
tableau[chaîne] |
Vrai |
additionalDetails
type_astra_stateDetail
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
type |
chaîne |
Vrai |
|
titre |
chaîne |
Vrai |
|
détail |
chaîne |
Vrai |
|
additionalDetails |
Faux |
type_astra_label
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
nom |
chaîne |
Vrai |
|
valeur |
chaîne |
Vrai |
type_astra_metadata_update
Métadonnées spécifiques au client et au service associées à la ressource. Les valeurs définies sont :
-
Conforme au schéma de métadonnées Astra. Si aucune étiquette n'est spécifiée lors de la création, un objet de métadonnées sera créé sans étiquette. Si aucune étiquette n'est spécifiée lors de la mise à jour, les étiquettes de l'objet de métadonnées, creationTimestamp et createdBy, seront conservées sans modification.
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
étiquettes |
tableau["type_astra_label"] |
Faux |
|
CréationTimestamp |
chaîne |
Faux |
|
ModificationTimestamp |
chaîne |
Faux |
|
CreatedBy |
chaîne |
Faux |
|
modifiedBy |
chaîne |
Faux |
invalidParams
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
nom |
chaîne |
Vrai |
Nom du paramètre de requête invalide |
raison |
chaîne |
Vrai |
Raison pour laquelle le paramètre de requête est invalide |
invalidFields
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
nom |
chaîne |
Vrai |
Nom du champ invalide du corps de la requête |
raison |
chaîne |
Vrai |
Raison pour laquelle le champ du corps de la requête est invalide |