216 lines
6.0 KiB
YAML
216 lines
6.0 KiB
YAML
openapi: 3.1.0
|
||
info:
|
||
title: Proxmox Cluster Extended API
|
||
version: "1.2"
|
||
servers:
|
||
- url: https://pve.lawek.com/api2/json
|
||
paths:
|
||
/cluster/status:
|
||
get:
|
||
operationId: getClusterStatus
|
||
summary: Récupère le statut du cluster Proxmox
|
||
responses:
|
||
"200":
|
||
description: Statut du cluster retourné avec succès
|
||
content:
|
||
application/json:
|
||
schema:
|
||
type: object
|
||
properties:
|
||
data:
|
||
type: array
|
||
items:
|
||
type: object
|
||
/nodes:
|
||
get:
|
||
operationId: listNodes
|
||
summary: Liste tous les nœuds du cluster
|
||
responses:
|
||
"200":
|
||
description: Liste des nœuds
|
||
content:
|
||
application/json:
|
||
schema:
|
||
type: object
|
||
properties:
|
||
data:
|
||
type: array
|
||
items:
|
||
type: object
|
||
properties:
|
||
node:
|
||
type: string
|
||
status:
|
||
type: string
|
||
uptime:
|
||
type: integer
|
||
maxcpu:
|
||
type: integer
|
||
maxmem:
|
||
type: integer
|
||
/nodes/{node}/status:
|
||
get:
|
||
operationId: getNodeStatus
|
||
summary: Récupère les informations d’un nœud spécifique
|
||
parameters:
|
||
- name: node
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
responses:
|
||
"200":
|
||
description: Statut du nœud
|
||
content:
|
||
application/json:
|
||
schema:
|
||
type: object
|
||
properties:
|
||
data:
|
||
type: object
|
||
/cluster/resources:
|
||
get:
|
||
operationId: getClusterResources
|
||
summary: Récupère les ressources du cluster (VMs, containers, etc.)
|
||
responses:
|
||
"200":
|
||
description: Ressources du cluster retournées avec succès
|
||
content:
|
||
application/json:
|
||
schema:
|
||
type: object
|
||
properties:
|
||
data:
|
||
type: array
|
||
items:
|
||
type: object
|
||
/cluster/replication:
|
||
get:
|
||
operationId: listReplicationJobs
|
||
summary: Liste les jobs de réplication
|
||
responses:
|
||
"200":
|
||
description: Liste des jobs de réplication
|
||
content:
|
||
application/json:
|
||
schema:
|
||
type: object
|
||
properties:
|
||
data:
|
||
type: array
|
||
items:
|
||
type: object
|
||
/nodes/{node}/lxc:
|
||
get:
|
||
operationId: listLxcContainers
|
||
summary: Liste les conteneurs LXC sur un nœud donné
|
||
parameters:
|
||
- name: node
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
responses:
|
||
"200":
|
||
description: Liste des conteneurs LXC
|
||
content:
|
||
application/json:
|
||
schema:
|
||
type: object
|
||
properties:
|
||
data:
|
||
type: array
|
||
items:
|
||
type: object
|
||
/nodes/{node}/qemu:
|
||
get:
|
||
operationId: listQemuVMs
|
||
summary: Liste les machines virtuelles QEMU sur un nœud donné
|
||
parameters:
|
||
- name: node
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
responses:
|
||
"200":
|
||
description: Liste des VMs QEMU
|
||
content:
|
||
application/json:
|
||
schema:
|
||
type: object
|
||
properties:
|
||
data:
|
||
type: array
|
||
items:
|
||
type: object
|
||
/cluster/ceph/status:
|
||
get:
|
||
operationId: getCephStatus
|
||
summary: Récupère le statut de Ceph dans le cluster
|
||
responses:
|
||
"200":
|
||
description: Statut Ceph retourné avec succès
|
||
content:
|
||
application/json:
|
||
schema:
|
||
type: object
|
||
properties:
|
||
data:
|
||
type: object
|
||
/nodes/{node}/lxc/{vmid}/migrate:
|
||
post:
|
||
operationId: migrateLxcContainer
|
||
summary: Migre un conteneur LXC vers un autre noeud
|
||
description: Démarre la migration d'un conteneur LXC depuis un noeud source vers un noeud cible. Utilise "1" ou "0" pour
|
||
les champs boolean comme online et restart.
|
||
parameters:
|
||
- name: node
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: string
|
||
- name: vmid
|
||
in: path
|
||
required: true
|
||
schema:
|
||
type: integer
|
||
requestBody:
|
||
required: true
|
||
content:
|
||
application/x-www-form-urlencoded:
|
||
schema:
|
||
type: object
|
||
properties:
|
||
target:
|
||
type: string
|
||
description: Nom du noeud cible
|
||
online:
|
||
type: string
|
||
enum:
|
||
- "1"
|
||
- "0"
|
||
description: 1 pour une migration a chaud, 0 sinon
|
||
restart:
|
||
type: string
|
||
enum:
|
||
- "1"
|
||
- "0"
|
||
description: 1 pour forcer le redemarrage, 0 sinon
|
||
timeout:
|
||
type: integer
|
||
description: Delai d'attente avant expiration (en secondes)
|
||
required:
|
||
- target
|
||
responses:
|
||
"200":
|
||
description: Migration lancee avec succes
|
||
content:
|
||
application/json:
|
||
schema:
|
||
type: object
|
||
properties:
|
||
data:
|
||
type: string
|
||
description: Identifiant de la tache (UPID)
|