Hikube API v1.5.1
Les bases de données managées, RabbitMQ et le control plane Kubernetes se dimensionnent désormais avec les tailles des machines virtuelles. Cette version protège aussi le disque système des VM en service et aligne les règles des bases PostgreSQL.
Ajouté
-
Bases de données managées et RabbitMQ — Le champ
presetprend les tailles des machines virtuelles, des sériesu1,s1etm1. Une taille a les mêmes ressources qu'une VM du même nom :u1.mediumvaut 1 vCPU et 4 Gio. Les 17 tailles proposées vont des1.small(1 vCPU / 2 Gio) àm1.8xlarge(32 vCPU / 256 Gio). L'opérationpresetsde chaque service les liste avec leurs ressources. -
Kubernetes — Le control plane se dimensionne en
s1.small(1 vCPU / 2 Gio) ou ens1.medium(2 vCPU / 4 Gio). La taille s'applique à ses quatre composants, et la réponse détaille la taille de chacun. -
Ressources — La réponse d'une base de données, de RabbitMQ ou d'un cluster Kubernetes indique les ressources réelles de sa taille (
resources: CPU et mémoire). -
Codes d'erreur — Deux nouveaux refus, renvoyés en HTTP 400 :
| Code | Service | Signification |
|---|---|---|
20208 | Compute | Le disque système d'une VM existante ne peut être ni remplacé, ni détaché, ni déplacé |
30201 | Disques | Le disque est détaché, mais la VM l'utilise encore jusqu'à son prochain redémarrage : il ne peut pas encore être supprimé |
Modifié
Ces changements modifient un comportement existant. Vérifiez-les si vous appelez l'API depuis vos propres outils.
-
Tailles des bases de données et de RabbitMQ — Les anciens noms (
small,medium,large…) restent acceptés pour le moment, avec ressources inchangées. Chaque requête qui en utilise un reçoit un en-têteWarningqui indique la taille équivalente à utiliser. Chaque taille n'existe que dans une série : 1 vCPU / 2 Gio s'appelles1.small. -
Kubernetes — Un control plane plus petit que
smallest refusé à la création et lors d'un changement de taille (code70111) :nano,microet leurs équivalents. Un cluster existant de cette taille reste modifiable tant que sa taille ne change pas. -
Quotas — Le quota compte désormais les trois sentinelles d'un cluster Redis, à la taille du cluster, ainsi que les quatre composants du control plane Kubernetes.
-
PostgreSQL — Les bases système
postgres,template0ettemplate1ne peuvent plus recevoir de rôle, ni être créées, modifiées ou supprimées (code80105). Un utilisateur qui détient déjà un rôle sur l'une d'elles le garde tant que ce rôle ne change pas. -
PostgreSQL — Un nom de base peut contenir des minuscules, des chiffres, des tirets bas (
_) et des tirets. Il commence par une lettre ou un tiret bas, ne commence pas parpg_, et compte 54 caractères au plus. Les noms de 55 à 63 caractères, acceptés jusqu'ici, sont refusés (code80105). -
Compute — Une mise à jour de VM qui remplace, retire ou déplace son disque système est refusée (code
20208). Pour changer de disque système, supprimez la VM, puis recréez-la à partir du disque voulu. -
Disques — La suppression d'un disque encore utilisé est refusée : disque attaché ou listé dans une VM (code
30007), ou disque détaché que la VM utilise jusqu'à son prochain redémarrage (code30201). Redémarrez la VM, puis réessayez.
Corrigé
-
Kubernetes — Une mise à jour qui ne change pas le control plane, comme l'activation d'un addon, ne le modifie plus et ne remplace plus ses composants.
-
Kubernetes, PostgreSQL et Redis — Un cluster dont la taille ne figure pas dans la liste reste modifiable : sa taille est renvoyée telle quelle et n'est plus refusée tant qu'elle ne change pas.
-
PostgreSQL — Les noms de base avec un tiret bas, comme
app_db, sont acceptés.
Sécurité
- Compute et disques — Une modification de VM pouvait remplacer ou détacher le disque système d'une VM en service, et ce disque pouvait ensuite être supprimé alors que la VM l'utilisait encore. L'API refuse désormais ces deux opérations.