Operations

Azure CycleCloud fournit une API REST pour la gestion des clusters, des nœuds et des ressources associées par programmation. Utilisez ces opérations d’API pour interroger l’état du cluster, créer et gérer des nœuds et suivre les opérations de longue durée. Cette référence répertorie les points de terminaison, paramètres et formats de réponse disponibles pour vous aider à automatiser et intégrer la gestion des clusters CycleCloud dans vos workflows.

Obtenir des nœuds de cluster

GET /clusters/{cluster}/nodes

Parameters

Type Name Description Schema
Path cluster
required
Cluster à interroger string
Query operation
optional
Si elle est donnée, retourne uniquement les nœuds de cet ID d’opération et inclut l’attribut d’opération sur le corps string
Query request_id
optional
Si elle est donnée, retourne uniquement les nœuds de l’opération identifiée par cet ID de requête et inclut l’attribut d’opération sur le corps string

Responses

HTTP Code Description Schema
200 OK NodeList
400 Spécification non valide Aucun contenu
404 Introuvable Aucun contenu

Exemple de requête HTTP

Chemin de la requête

/clusters/CLUSTER_NAME/nodes

Exemple de réponse HTTP

Réponse 200

{
  "nodes" : [ { } ],
  "operation" : {
    "action" : "string",
    "startTime" : "2020-01-01T12:34:56Z"
  }
}

Créer des nœuds de cluster

POST /clusters/{cluster}/nodes/create

Description

Cette opération ajoute de nouveaux nœuds d’un nœud à un cluster. Il accepte plusieurs définitions de nœud dans un seul appel. Elle retourne l’URL à l’opération qui peut être utilisée pour suivre l’état de l’opération.

Parameters

Type Name Description Schema
Path cluster
required
Cluster à ajouter des nœuds à string
Body nodes
required
Ensembles de nœuds à créer NodeCreationRequest

Responses

HTTP Code Description Schema
202 Accepté
En-têtes :
Location (chaîne) : URL de l’opération.
NodeCreationResult
409 entrée non valide Aucun contenu

Exemple de requête HTTP

Chemin de la requête

/clusters/CLUSTER_NAME/nodes/create

Corps de la demande

{
  "requestId" : "00000000-0000-0000-0000-000000000000",
  "sets" : [ "object" ]
}

Exemple de réponse HTTP

Réponse 202

{
  "operationId" : "00000000-0000-0000-0000-000000000000",
  "sets" : [ "object" ]
}

Libérer des nœuds de cluster

POST /clusters/{cluster}/nodes/deallocate

Description

Cette opération libère des nœuds dans un cluster. Les nœuds peuvent être identifiés de plusieurs façons, notamment le nom du nœud, l’ID de nœud ou par filtre.

Parameters

Type Name Description Schema
Path cluster
required
Cluster pour libérer des nœuds dans string
Body action
required
Description des nœuds à libérer NodeManagementRequest

Responses

HTTP Code Description Schema
202 Accepté
En-têtes :
Location (chaîne) : URL de l’opération.
NodeManagementResult
409 entrée non valide Aucun contenu

Exemple de requête HTTP

Chemin de la requête

/clusters/CLUSTER_NAME/nodes/deallocate

Corps de la demande

{
  "filter" : "State === \"Started\"",
  "hostnames" : [ "hostname1", "hostname2" ],
  "ids" : [ "id1", "id2" ],
  "ip_addresses" : [ "10.0.1.1", "10.1.1.2" ],
  "names" : [ "name1", "name2" ],
  "requestId" : "00000000-0000-0000-0000-000000000000"
}

Exemple de réponse HTTP

Réponse 202

{
  "nodes" : [ "object" ],
  "operationId" : "00000000-0000-0000-0000-000000000000"
}

Réimager des nœuds de cluster

POST /clusters/{cluster}/nodes/reimage

Description

Cette opération réimage des nœuds dans un cluster. Les nœuds peuvent être identifiés de plusieurs façons, notamment le nom du nœud, l’ID de nœud ou par filtre.

Parameters

Type Name Description Schema
Path cluster
required
Cluster dans lequel réimager des nœuds string
Body action
required
Description des nœuds à réimager NodeManagementRequest

Responses

HTTP Code Description Schema
202 Accepté
En-têtes :
Location (chaîne) : URL de l’opération.
NodeManagementResult
409 entrée non valide Aucun contenu

Exemple de requête HTTP

Chemin de la requête

/clusters/CLUSTER_NAME/nodes/reimage

Corps de la demande

{
  "filter" : "State === \"Started\"",
  "hostnames" : [ "hostname1", "hostname2" ],
  "ids" : [ "id1", "id2" ],
  "ip_addresses" : [ "10.0.1.1", "10.1.1.2" ],
  "names" : [ "name1", "name2" ],
  "requestId" : "00000000-0000-0000-0000-000000000000"
}

Exemple de réponse HTTP

Réponse 202

{
  "nodes" : [ "object" ],
  "operationId" : "00000000-0000-0000-0000-000000000000"
}

Terminer et supprimer des nœuds de cluster

POST /clusters/{cluster}/nodes/remove

Description

Cette opération supprime les nœuds d’un cluster. Vous pouvez identifier les nœuds par nom de nœud, ID de nœud ou filtre. Par défaut, CycleCloud supprime les nœuds à l’arrêt, de sorte que cet appel se comporte comme se terminer. Les nœuds avec l’attribut fixe défini sur true ne sont pas supprimés lors de l’arrêt.

Parameters

Type Name Description Schema
Path cluster
required
Cluster dans lequel supprimer des nœuds string
Body action
required
Description des nœuds à supprimer NodeManagementRequest

Responses

HTTP Code Description Schema
202 Accepté
En-têtes :
Location (chaîne) : URL de l’opération.
NodeManagementResult
409 entrée non valide Aucun contenu

Exemple de requête HTTP

Chemin de la requête

/clusters/CLUSTER_NAME/nodes/remove

Corps de la demande

{
  "filter" : "State === \"Started\"",
  "hostnames" : [ "hostname1", "hostname2" ],
  "ids" : [ "id1", "id2" ],
  "ip_addresses" : [ "10.0.1.1", "10.1.1.2" ],
  "names" : [ "name1", "name2" ],
  "requestId" : "00000000-0000-0000-0000-000000000000"
}

Exemple de réponse HTTP

Réponse 202

{
  "nodes" : [ "object" ],
  "operationId" : "00000000-0000-0000-0000-000000000000"
}

Redémarrer les nœuds de cluster

POST /clusters/{cluster}/nodes/restart

Description

Cette opération redémarre les nœuds d’un cluster. Les nœuds peuvent être identifiés de plusieurs façons, notamment le nom du nœud, l’ID de nœud ou par filtre.

Parameters

Type Name Description Schema
Path cluster
required
Cluster dans lequel redémarrer des nœuds string
Body action
required
Description des nœuds à redémarrer NodeManagementRequest

Responses

HTTP Code Description Schema
202 Accepté
En-têtes :
Location (chaîne) : URL de l’opération.
NodeManagementResult
409 entrée non valide Aucun contenu

Exemple de requête HTTP

Chemin de la requête

/clusters/CLUSTER_NAME/nodes/restart

Corps de la demande

{
  "filter" : "State === \"Started\"",
  "hostnames" : [ "hostname1", "hostname2" ],
  "ids" : [ "id1", "id2" ],
  "ip_addresses" : [ "10.0.1.1", "10.1.1.2" ],
  "names" : [ "name1", "name2" ],
  "requestId" : "00000000-0000-0000-0000-000000000000"
}

Exemple de réponse HTTP

Réponse 202

{
  "nodes" : [ "object" ],
  "operationId" : "00000000-0000-0000-0000-000000000000"
}

Arrêter ou libérer des nœuds de cluster

POST /clusters/{cluster}/nodes/shutdown

Description

Cet appel arrête les nœuds d’un cluster. L’attribut ShutdownPolicy de chaque nœud décide de l’action : Arrêter (par défaut) ou Libérer.

Parameters

Type Name Description Schema
Path cluster
required
Cluster dans lequel arrêter des nœuds string
Body action
required
Description des nœuds à arrêter NodeManagementRequest

Responses

HTTP Code Description Schema
202 Accepté
En-têtes :
Location (chaîne) : URL de l’opération.
NodeManagementResult
409 entrée non valide Aucun contenu

Exemple de requête HTTP

Chemin de la requête

/clusters/CLUSTER_NAME/nodes/shutdown

Corps de la demande

{
  "filter" : "State === \"Started\"",
  "hostnames" : [ "hostname1", "hostname2" ],
  "ids" : [ "id1", "id2" ],
  "ip_addresses" : [ "10.0.1.1", "10.1.1.2" ],
  "names" : [ "name1", "name2" ],
  "requestId" : "00000000-0000-0000-0000-000000000000"
}

Exemple de réponse HTTP

Réponse 202

{
  "nodes" : [ "object" ],
  "operationId" : "00000000-0000-0000-0000-000000000000"
}

Démarrer les nœuds de cluster désalloués ou arrêtés

POST /clusters/{cluster}/nodes/start

Description

Cette opération démarre les nœuds d’un cluster. Les nœuds peuvent être identifiés de plusieurs façons, notamment le nom du nœud, l’ID de nœud ou par filtre.

Parameters

Type Name Description Schema
Path cluster
required
Cluster dans lequel démarrer des nœuds string
Body action
required
Description des nœuds à démarrer NodeManagementRequest

Responses

HTTP Code Description Schema
202 Accepté
En-têtes :
Location (chaîne) : URL de l’opération.
NodeManagementResult
409 entrée non valide Aucun contenu

Exemple de requête HTTP

Chemin de la requête

/clusters/CLUSTER_NAME/nodes/start

Corps de la demande

{
  "filter" : "State === \"Started\"",
  "hostnames" : [ "hostname1", "hostname2" ],
  "ids" : [ "id1", "id2" ],
  "ip_addresses" : [ "10.0.1.1", "10.1.1.2" ],
  "names" : [ "name1", "name2" ],
  "requestId" : "00000000-0000-0000-0000-000000000000"
}

Exemple de réponse HTTP

Réponse 202

{
  "nodes" : [ "object" ],
  "operationId" : "00000000-0000-0000-0000-000000000000"
}

Arrêter les nœuds de cluster

POST /clusters/{cluster}/nodes/terminate

Description

Cette opération met fin aux nœuds d’un cluster. Les nœuds peuvent être identifiés de plusieurs façons, notamment le nom du nœud, l’ID de nœud ou par filtre.

Parameters

Type Name Description Schema
Path cluster
required
Cluster pour mettre fin aux nœuds dans string
Body action
required
Description des nœuds à arrêter NodeManagementRequest

Responses

HTTP Code Description Schema
202 Accepté
En-têtes :
Location (chaîne) : URL de l’opération.
NodeManagementResult
409 entrée non valide Aucun contenu

Exemple de requête HTTP

Chemin de la requête

/clusters/CLUSTER_NAME/nodes/terminate

Corps de la demande

{
  "filter" : "State === \"Started\"",
  "hostnames" : [ "hostname1", "hostname2" ],
  "ids" : [ "id1", "id2" ],
  "ip_addresses" : [ "10.0.1.1", "10.1.1.2" ],
  "names" : [ "name1", "name2" ],
  "requestId" : "00000000-0000-0000-0000-000000000000"
}

Exemple de réponse HTTP

Réponse 202

{
  "nodes" : [ "object" ],
  "operationId" : "00000000-0000-0000-0000-000000000000"
}

Envoyer le rapport d’intégrité invité pour le nœud de cluster

POST /clusters/{cluster}/nodes/{node}/ghr

Description

Envoyer un rapport d’intégrité pour un nœud avec un problème d’intégrité

Parameters

Type Name Description Schema
Path cluster
required
Cluster qui contient le nœud à signaler string
Path node
required
Nœud à signaler string
Query category
optional
Catégorie rapport d’intégrité invité pour l’impact string
Query description
optional
Message personnalisé décrivant l’échec ou le contexte string

Responses

HTTP Code Description Schema
202 Acceptée Aucun contenu
400 entrée non valide Aucun contenu
404 Introuvable Aucun contenu
409 Conflit - Rapport d’intégrité invité déjà envoyé pour ce nœud Aucun contenu

Exemple de requête HTTP

Chemin de la requête

/clusters/CLUSTER_NAME/nodes/string/ghr

Obtenir le rapport d’intégrité invité pour le nœud de cluster

GET /clusters/{cluster}/nodes/{node}/ghr

Description

Retourne l’impact de la charge de travail d’un nœud avec un problème d’intégrité, afin de pouvoir l’envoyer au point de terminaison de rapport d’intégrité.

Parameters

Type Name Description Schema
Path cluster
required
Cluster qui contient le nœud à signaler string
Path node
required
Nœud à signaler string
Query category
optional
Catégorie rapport d’intégrité invité pour l’impact string
Query description
optional
Message personnalisé décrivant l’échec ou le contexte string

Responses

HTTP Code Description Schema
200 D’accord Aucun contenu
400 entrée non valide Aucun contenu
404 Introuvable Aucun contenu

Exemple de requête HTTP

Chemin de la requête

/clusters/CLUSTER_NAME/nodes/string/ghr

Mettre à l’échelle le cluster à la taille

POST /clusters/{cluster}/scale/{nodearray}

Description

Cette opération ajoute des nœuds en fonction des besoins à un nodearray pour atteindre un nombre total. La requête est traitée une seule fois et n’ajoute pas de nœuds ultérieurement pour conserver le nombre donné. Spécifiez la taille cible à l’aide du nombre totalCoreCount total de cœurs d’UC ou totalNodeCount (nombre total de machines virtuelles), mais pas des deux dans la même requête. Elle retourne l’URL à l’opération que vous pouvez utiliser pour suivre son état.

Parameters

Type Name Description Schema
Path cluster
required
Cluster à ajouter des nœuds à string
Path nodearray
required
Nodearray à ajouter des nœuds à string
Query totalCoreCount
optional
Nombre total de cœurs à avoir dans ce nœud, y compris les nœuds déjà créés integer
Query totalNodeCount
optional
Nombre total d’ordinateurs à avoir dans ce nœud, y compris les nœuds déjà créés integer

Responses

HTTP Code Description Schema
202 Accepté
En-têtes :
Location (chaîne) : URL de l’opération.
NodeCreationResult
409 entrée non valide Aucun contenu

Exemple de requête HTTP

Chemin de la requête

/clusters/CLUSTER_NAME/scale/NODEARRAY_NAME

Exemple de réponse HTTP

Réponse 202

{
  "operationId" : "00000000-0000-0000-0000-000000000000",
  "sets" : [ "object" ]
}

Obtenir l’état du cluster

GET /clusters/{cluster}/status

Description

Cette opération contient des informations sur les nœuds et les nœuds dans un cluster donné. Pour chaque nœud, il retourne l’état de chaque « compartiment » d’allocation disponible. L’état inclut le nombre de nœuds actuel dans le compartiment et le nombre de nœuds supplémentaires que vous pouvez ajouter. Chaque compartiment est un ensemble de machines virtuelles possibles d’un profil matériel donné qui peut être créé dans un emplacement donné sous un compte client donné, etc. La définition du cluster de l’utilisateur détermine les compartiments valides pour un nodearray, mais le fournisseur de cloud détermine en partie les limites.

Parameters

Type Name Description Schema
Path cluster
required
Cluster à interroger string
Query nodes
optional
Si la valeur est true, les nœuds et les références de nœud sont retournés dans la réponse boolean

Responses

HTTP Code Description Schema
200 OK ClusterStatus

Exemple de requête HTTP

Chemin de la requête

/clusters/CLUSTER_NAME/status

Exemple de réponse HTTP

Réponse 200

{
  "maxCoreCount" : 16,
  "maxCount" : 4,
  "nodearrays" : [ "object" ],
  "nodes" : [ { } ],
  "state" : "Starting",
  "targetState" : "Started"
}

Obtenir des informations sur l’utilisation et les coûts facultatifs pour un cluster

GET /clusters/{cluster}/usage

Description

Cette opération retourne des données d’utilisation globales (heures principales) et des données de coût, le cas échéant, pour le cluster et une répartition par nœud. Par défaut, elle retourne la valeur d’utilisation du mois actuel.

Parameters

Type Name Description Schema
Path cluster
required
Cluster pour lequel retourner les données d’utilisation pour string
Query Délai
optional
Intervalle de temps à utiliser pour la requête. Valeurs valides : monthToDate (mois en cours), lastMonth (mois précédent), weekToDate (semaine actuelle, dimanche à compter du dimanche) ou custom (nécessite les paramètres de requête et to de from requête). La valeur par défaut est monthToDate. Toutes les heures sont exprimées en heure UTC. énumération (monthToDate, lastMonth, weekToDate, custom)
Query from
optional
Pour les délais personnalisés, cette valeur est le début de la période au format ISO-8601. Il est arrondi à l’heure ou à la journée la plus proche. string
Query to
optional
Pour les délais personnalisés, cette valeur est la fin de la période au format ISO-8601. Il est arrondi à l’heure ou à la journée la plus proche. string
Query Granularité
optional
Spécifie comment agréger des données : toutes les heures, tous les jours ou sous la forme d’un total unique. L’intervalle par défaut est quotidien. enum (total, quotidien, horaire)

Responses

HTTP Code Description Schema
200 OK ClusterUsage

Exemple de requête HTTP

Chemin de la requête

/clusters/CLUSTER_NAME/usage

Exemple de réponse HTTP

Réponse 200

{
  "usage" : [ "object" ]
}

Répertorier l’état des opérations

GET /operations/

Parameters

Type Name Description Schema
Query request_id
optional
ID de demande de l’opération. Si cette valeur est donnée, la liste contient 0 ou 1 élément. string

Responses

HTTP Code Description Schema
200 OK < OperationStatus> Array
400 Demande non valide Aucun contenu
404 Introuvable Aucun contenu

Exemple de requête HTTP

Chemin de la requête

/operations/

Exemple de réponse HTTP

Réponse 200

[ {
  "action" : "string",
  "startTime" : "2020-01-01T12:34:56Z"
} ]

Obtient l’état de l’opération par ID

GET /operations/{id}

Parameters

Type Name Description Schema
Path id
required
ID d’opération string

Responses

HTTP Code Description Schema
200 OK OperationStatus
404 Introuvable Aucun contenu

Exemple de requête HTTP

Chemin de la requête

/operations/00000000-0000-0000-0000-000000000000

Exemple de réponse HTTP

Réponse 200

{
  "action" : "string",
  "startTime" : "2020-01-01T12:34:56Z"
}

Resources

Azure CycleCloud définit un ensemble de modèles de ressources qui décrivent les clusters, les tableaux de nœuds, les nœuds et l’état d’allocation. Ces ressources sont retournées par l’API REST et fournissent des détails tels que les limites de capacité, l’utilisation et l’état du cluster. Utilisez cette référence pour comprendre la structure et les propriétés des réponses d’API lors de la gestion et de la surveillance des clusters CycleCloud par programmation.

ClusterStatus

État du cluster

Name Description Schema
maxCoreCount
required
Nombre maximal de cœurs qui peuvent être ajoutés à ce cluster
Exemple : 16
integer
maxCount
required
Nombre maximal de nœuds qui peuvent être ajoutés à ce cluster
Exemple : 4
integer
nodearrays
required
Exemple : [ "object" ] < nodearrays> Array
nodes
optional
Liste facultative de nœuds dans ce cluster, incluse uniquement si node=true se trouve dans la requête
Exemple : [ "[node](#node)" ]
< Nœud> Array
state
optional
État actuel du cluster, disponible après au moins un démarrage
Exemple : "Starting"
string
targetState
optional
État souhaité du cluster (par exemple, Démarré ou Terminé)
Exemple : "Started"
string

nodearrays

Name Description Schema
buckets
required
Chaque compartiment d’allocation pour ce nœud. Les paramètres « nombre de cœurs » sont toujours un multiple du nombre de cœurs pour ce compartiment.
Exemple : [ "object" ]
< Seaux> Array
maxCoreCount
required
Nombre maximal de cœurs qui peuvent se trouver dans ce nodearray
Exemple : 16
integer
maxCount
required
Nombre maximal de nœuds qui peuvent se trouver dans ce nœud
Exemple : 4
integer
name
required
Nom du nodearray
Exemple : "execute"
string
nodearray
required
Attributs de ce nodearray
Exemple : "[node](#node)"
Node

Seaux

Name Description Schema
activeCoreCount
required
Nombre de cœurs utilisés pour ce compartiment, dans ce nodearray
Exemple : 40
integer
activeCount
required
Nombre de nœuds utilisés pour ce compartiment, dans ce nœud. Ce nombre inclut les nœuds qui acquièrent toujours une machine virtuelle.
Exemple : 10
integer
activeNodes
optional
Noms des nœuds utilisés pour ce compartiment dans le nodearray, y compris les nœuds qui acquièrent toujours une machine virtuelle. Retourné uniquement lorsque la requête inclut node=true.
Exemple : [ "string" ]
<tableau de chaînes >
availableCoreCount
required
Combien de cœurs supplémentaires peuvent être créés dans ce compartiment, dans ce nœud. Toujours un multiple de availableCount.
Exemple : 8
integer
availableCount
required
Nombre de nœuds supplémentaires qui peuvent être créés dans ce compartiment dans le nodearray. La valeur peut être inférieure à maxCount moins usedCount , car maxCount elle peut être limitée par une limite globale.
Exemple : 2
integer
bucketId
required
Identificateur unique du compartiment. La valeur reste la même pour un compartiment donné dans un nodearray pendant la durée de vie du cluster.
Exemple : "00000000-0000-0000-0000-000000000000"
string
consumeCoreCount
required
Nombre de cœurs pour cette famille déjà utilisés dans toute la région.
Exemple : 2
integer
definition
optional
Propriétés utilisées pour créer des nœuds à partir de ce compartiment. L’API create-nodes prend cette définition dans sa bucket propriété.
Exemple : "object"
definition
familyConsumedCoreCount
optional
Nombre de cœurs pour cette famille déjà utilisés dans toute la région.
Exemple : 2
integer
familyQuotaCoreCount
optional
Nombre total de cœurs pouvant s’exécuter pour cette famille de machines virtuelles dans la région. La valeur n’est pas nécessairement un multiple entier de familyQuotaCount.
Exemple : 16
integer
familyQuotaCount
optional
Nombre total d’instances pouvant être démarrées (en fonction de familyQuotaCoreCount)
Exemple : 4
integer
invalidReason
required
La raison pour laquelle le compartiment n’est pas valide lorsqu’il valid a la valeur false. Actuellement, les seules valeurs possibles sont NotActivated et DisabledMachineType.
Exemple : "DisabledMachineType"
string
lastCapacityFailure
required
Nombre de secondes depuis que ce compartiment a rencontré une défaillance de capacité. Toute valeur négative est traitée comme jamais.
Exemple : 180.0
number
maxCoreCount
required
Nombre maximal de cœurs qui peuvent se trouver dans ce compartiment, y compris les limites globales et nodearray. Toujours un multiple de maxCount.
Exemple : 16
integer
maxCount
required
Nombre maximal de nœuds qui peuvent se trouver dans ce compartiment, y compris les limites globales et nodearray
Exemple : 4
integer
maxPlacementGroupCoreSize
required
Nombre maximal de cœurs pouvant se trouver dans un groupe de placement dans ce compartiment. Toujours un multiple de maxPlacementGroupSize.
Exemple : 64
integer
maxPlacementGroupSize
required
Nombre maximal d’instances pouvant se trouver dans un groupe de placement dans ce compartiment
Exemple : 16
integer
placementGroups
required
Les groupes de placement utilisés pour ce nœud, le cas échéant.
Exemple : [ "object" ]
< placementGroups> Array
quotaCoreCount
required
Nombre total de cœurs pouvant s’exécuter pour cette famille de machines virtuelles dans la région, ce qui représente le nombre de cœurs de quota régional. La valeur n’est pas nécessairement un multiple entier de quotaCount.
Exemple : 16
integer
quotaCount
required
Nombre total d’instances pouvant être démarrées (quotaCoreCount donné)
Exemple : 4
integer
regionalConsumedCoreCount
optional
Nombre de cœurs déjà utilisés dans toute la région.
Exemple : 2
integer
regionalQuotaCoreCount
optional
Nombre total de cœurs pouvant s’exécuter dans la région. La valeur n’est pas nécessairement un multiple entier de regionalQuotaCount.
Exemple : 16
integer
regionalQuotaCount
optional
Nombre total d’instances pouvant être démarrées (étant donné regionalQuotaCoreCount)
Exemple : 4
integer
spotPlacementScore
required
Score de positionnement spot pour ce compartiment indiquant la probabilité de disponibilité des machines virtuelles spot. Il peut s’agir d’une chaîne haute, moyenne, basse ou vide si elle n’est pas applicable.
Exemple : "High"
string
valable
required
Si la valeur est true, ce compartiment représente un compartiment actuellement valide à utiliser pour les nouveaux nœuds. Si la valeur est false, ce compartiment représente uniquement les nœuds existants.
Exemple : true
boolean
virtualMachine
required
Propriétés des machines virtuelles lancées à partir de ce compartiment
Exemple : "object"
virtualMachine

Définition

Name Description Schema
machineType
required
Taille de la machine virtuelle de la machine virtuelle
Exemple : "A2"
string

placementGroups

Name Description Schema
activeCoreCount
required
Nombre de cœurs dans ce groupe identique
Exemple : 16
integer
activeCount
required
Nombre de nœuds dans ce groupe de mise à l’échelle
Exemple : 4
integer
name
required
Identificateur unique de ce groupe de placement
Exemple : "my-placement-group"
string

virtualMachine

Name Description Schema
gpuCount
required
Le nombre de GPU dont ce type d’ordinateur a
Exemple : 2
integer
Infiniband
required
Si cette machine virtuelle prend en charge la connectivité InfiniBand
Exemple : true
boolean
memory
required
Ram dans cette machine virtuelle, en Go
Exemple : 7.5
number
pcpuCount
required
Nombre de processeurs physiques dont ce type d’ordinateur a
Exemple : 16
integer
vcpuCount
required
Nombre de processeurs virtuels dont ce type de machine a
Exemple : 32
integer
vcpuQuotaCount
optional
Nombre de processeurs virtuels que cette machine utilise à partir du quota
Exemple : 2
integer

ClusterUsage

Informations sur l’utilisation et les coûts facultatifs pour le cluster

Name Description Schema
usage
required
Liste des utilisations par intervalle de temps
Exemple : [ "object" ]
< Utilisation> Array

Utilisation

Name Description Schema
Ventilation
required
Répartition de l’utilisation dans cet intervalle, par catégorie de « nœud » et « nodearray »
Exemple : [ "[clusterusageitem](#clusterusageitem)" ]
< ClusterUsageItem> Array
end
required
Fin de l’intervalle (exclusif)
Exemple : "string"
string
start
required
Début de l’intervalle (inclusif)
Exemple : "string"
string
total
required
Utilisation globale de ce cluster dans cet intervalle, avec une catégorie de « cluster »
Exemple : "[clusterusageitem](#clusterusageitem)"
ClusterUsageItem

ClusterUsageItem

Name Description Schema
category
required
« cluster » pour l’utilisation globale ; « node » pour un seul nœud principal non matricielle ; « nodearray » pour un nœud entier
Exemple : "string"
enum (cluster, node, nodearray)
cost
optional
Montant facturé pour cette utilisation, en dollars américains et aux tarifs de vente au détail. Remarque : tous les montants des coûts sont des estimations et ne reflètent pas la facture réelle !
Exemple : 0.0
number
details
optional
Détails de la taille de machine virtuelle utilisée par un nœud, y compris les heures, les core_count, la région, la priorité et le système d’exploitation.
Exemple : [ "object" ]
< Détails> Array
hours
required
Nombre d’heures d’utilisation principales pour cette catégorie
Exemple : 0.0
number
node
optional
Le nom du nœud ou du nœud pour lequel l’utilisation est utilisée (absent pour les données au niveau du cluster)
Exemple : "string"
string

Détails

Name Description Schema
core_count
optional
Nombre de cœurs dans cette taille de machine virtuelle
Exemple : 0.0
number
cost
optional
Coût de cette taille de machine virtuelle
Exemple : 0.0
number
hours
optional
Nombre d’heures d’utilisation principales pour cette taille de machine virtuelle
Exemple : 0.0
number
os
optional
Type de système d’exploitation
Exemple : "string"
énumération (Windows, Linux)
priority
optional
Priorité de la référence SKU de machine virtuelle
Exemple : "string"
enum (normal, Spot)
region
optional
La région dans laquelle la taille de machine virtuelle est instanciée
Exemple : "string"
string
vm_size
optional
Taille de la référence SKU de machine virtuelle
Exemple : "string"
string

Node

Un enregistrement de nœud

Type : objet

NodeCreationRequest

Spécifie comment ajouter des nœuds à un cluster

Name Description Schema
requestId
optional
Jeton unique fourni par l’utilisateur facultatif pour empêcher les opérations en double en cas d’erreurs de communication réseau. Si cette valeur est incluse et correspond à un ID de requête antérieur, le serveur ignore cette requête et retourne une erreur 409.
Exemple : "00000000-0000-0000-0000-000000000000"
string
Studios
required
Liste des définitions de nœud à créer. La demande doit contenir au moins un ensemble. Chaque jeu peut spécifier un ensemble de propriétés différent.
Exemple : [ "object" ]
< Studios> Array

Studios

Name Description Schema
count
required
Nombre de nœuds à créer
Exemple : 1
integer
definition
optional
Définition du compartiment à utiliser, fournie par l’appel de l’API d’état du cluster. Si certains des éléments donnés dans l’appel d’état sont manquants ou si la propriété de compartiment entière est manquante, le premier compartiment correspondant aux éléments donnés est utilisé.
Exemple : "object"
definition
nameFormat
optional
Si cela est donné, les nœuds utilisent cette convention d’affectation de noms au lieu du format standard « nodearray-%d»
Exemple : "custom-name-%d"
string
nameOffset
optional
Si elle est donnée, ainsi que nameFormat, décalage l’index de nœud pour les nouveaux nœuds.
Exemple : 1
integer
nodeAttributes
optional
Attributs supplémentaires à définir sur chaque nœud de cet ensemble
Exemple : "[node](#node)"
Node
nodearray
required
Nom du nodearray à partir duquel démarrer des nœuds
Exemple : "execute"
string
placementGroupId
optional
Si cela est donné, les nœuds ayant la même valeur pour groupId commencent tous dans le même groupe de placement.
Exemple : "string"
string

Définition

Name Description Schema
machineType
optional
Exemple : "A2" string

NodeCreationResult

Name Description Schema
operationId
required
ID de cette opération
Exemple : "00000000-0000-0000-0000-000000000000"
string
Studios
required
Tableau de jeux, dans le même ordre que dans la requête
Exemple : [ "object" ]
< Studios> Array

Studios

Name Description Schema
Ajouté
required
Nombre de nœuds démarrés dans cet ensemble
Exemple : 1
integer
message
optional
Indique pourquoi tous les nœuds demandés ne peuvent pas être ajoutés, le cas échéant
Exemple : "string"
string

NodeList

Résultats d’une recherche de nœud

Name Description Schema
nodes
required
Nœuds retournés
Exemple : [ "[node](#node)" ]
< Nœud> Array
operation
optional
État d’une opération si la requête inclut un ID d’opération
Exemple : "[operationstatus](#operationstatus)"
OperationStatus

NodeManagementRequest

Spécifie comment effectuer des actions sur des nœuds d’un cluster. Il existe plusieurs façons de spécifier des nœuds et, si plusieurs méthodes sont incluses, elles sont traitées comme une union.

Name Description Schema
filter
optional
Expression de filtre qui correspond aux nœuds. Les chaînes de l’expression doivent être entre guillemets correctement.
Exemple : "State === \"Started\""
string
Noms
optional
Liste des noms d’hôte courts (sans domaine) à gérer
Exemple : [ "hostname1", "hostname2" ]
<tableau de chaînes >
ids
optional
Liste des ID de nœud à gérer
Exemple : [ "id1", "id2" ]
<tableau de chaînes >
ip_addresses
optional
Liste des adresses IP à gérer
Exemple : [ "10.0.1.1", "10.1.1.2" ]
<tableau de chaînes >
noms
optional
Liste des noms de nœuds à gérer
Exemple : [ "name1", "name2" ]
<tableau de chaînes >
requestId
optional
Jeton unique fourni par l’utilisateur facultatif pour empêcher les opérations en double en cas d’erreurs de communication réseau. Si cette valeur est incluse et correspond à un ID de requête antérieur, le serveur ignore cette requête et retourne une erreur 409.
Exemple : "00000000-0000-0000-0000-000000000000"
string

NodeManagementResult

Name Description Schema
nodes
required
Tableau d’informations sur chaque nœud qui correspond au filtre dans la demande de gestion. L’état de chaque nœud indique si la demande l’a affectée.
Exemple : [ "object" ]
< Nœuds> Array
operationId
required
ID de cette opération
Exemple : "00000000-0000-0000-0000-000000000000"
string

Nœuds

Name Description Schema
error
optional
Message d’erreur quand status est Error.
Exemple : "This node must be terminated before it can be removed"
string
id
required
ID du nœud
Exemple : "id1"
string
name
required
Nom du nœud
Exemple : "name1"
string
status
optional
Une des erreurs ou OK
Exemple : "Error"
énumération (OK, Erreur)

OperationStatus

État de cette opération de nœud

Name Description Schema
action
required
Exemple : "string" enum (create)
startTime
required
Lorsque cette opération a été envoyée
Exemple : "2020-01-01T12:34:56Z"
chaîne de caractères (date et heure)