OpenKeel : la solution Cloud souveraine, française à portée européenne du groupe inherent Découvrir inherent

Composants · Stockage

Swift et S3

Stockage objet : Rook-Ceph et sa passerelle RGW pour les API S3 et Swift.

Spécifié Rook-Ceph RGW

Le module

Stockage objet : Rook-Ceph et sa passerelle RGW pour les API S3 et Swift.

Ce module n'existe pas dans l'espace de travail : openkeel-swift

Comment la compatibilité est testée

OpenKeel n'a pas de service Swift propre : Rook-Ceph RGW sert les API Swift et S3 avec l'authentification Keystone, exercées avec des clients standard et Skyline sur un lab.

De bout en bout sur un lab

API Swift avec la CLI openstack

Les conteneurs et objets sont créés et listés via l'API Swift de RGW, authentifiés par Keystone.

Exécution

okadm install --mode lab --create-kind --ingress --ceph-s3, puis openstack container create, object create, object list.

Dernier résultat Exécuté en mode lab sur un nouveau cluster kind.

Source : openkeel-okadm/README.md

De bout en bout sur un lab

S3 avec des identifiants EC2 Keystone

L'API S3 accepte les identifiants EC2 Keystone, et les buckets partagent un même namespace avec les conteneurs Swift.

Exécution

openstack ec2 credentials create, puis aws s3 mb, PUT et GET.

Dernier résultat Exécuté en mode lab sur un nouveau cluster kind.

Source : openkeel-okadm/README.md

De bout en bout sur un lab

Page Object Storage de Skyline

La console Skyline liste les conteneurs RGW, téléverse un fichier et crée un conteneur via l'API Swift.

Exécution

Dans un navigateur sur le lab ; le fichier a été fourni au formulaire d'upload par script.

Dernier résultat Exécuté en mode lab ; les paramètres de production sont couverts uniquement par des tests unitaires, jamais sur un vrai cluster.

Source : openkeel-okadm/README.md

Écarté de la réécriture

OpenKeel n'a pas de service Swift : Rook-Ceph RGW, activé avec okadm --ceph-s3, sert à la fois les API Swift et S3 avec authentification Keystone.

Assuré par la plateforme Cloud Native

Proxy, anneaux et démons de stockage Swift

Repris par Rook-Ceph RGW

Pourquoi c'est écarté

Ceph fournit déjà un stockage objet répliqué, opéré par Rook sur Kubernetes ; RGW parle l'API Swift.

Pourquoi la solution n'est pas affectée

RGW est l'object-store du catalogue à /swift/v1/AUTH_<project id> ; la page de stockage objet de Skyline et les commandes container et object d'ok ont été testées contre lui.

Source : openkeel-okadm/README.md

Assuré par la plateforme Cloud Native

Couche S3 séparée (s3api, ec2-api-s3)

Repris par Rook-Ceph RGW

Pourquoi c'est écarté

RGW sert S3 nativement, avec authentification par les identifiants EC2 de Keystone.

Pourquoi la solution n'est pas affectée

Conteneurs et buckets partagent un espace de noms par projet : un conteneur créé dans Skyline est listé par aws s3 ls. Le stockage objet est optionnel et absent sans --ceph-s3.

Source : openkeel-okadm/README.md

Seul ce qui a été écarté par choix de conception figure ici ; le travail pas encore fait se trouve dans les Known gaps du docs/CONFORMANCE.md du module. Tous les modules

Interactions de Swift et S3

Vue « service » générée par la skill diagramme depuis le modèle d'OpenKeel.

Diagramme openkeel-swift.svg Plein écran
Les 3 interactions du modèle
DeVersProtocoleQuoi
Swift proxySwift storageAPI RESTinternal account/container/object requests (ring lookup)
Swift storageCSI driver (Longhorn)API Kubernetesone PVC per device (block StorageClass)
CSI driver (Longhorn)Swift storagePlan de donnéesXFS devices, 1 Longhorn replica

Spécifications