Temps de lecture : 4 minutes

Que se passe-t-il lorsque vous orientez certains des cerveaux informatiques les plus intelligents de votre entreprise vers l'innovation, plutôt que vers l'exploitation ?

C'est une question que nous posons souvent à nos clients. Récemment, nous nous sommes posé la question à nous-mêmes. La réponse - cette fois-ci - est un produit complètement différent, mais en parfaite adéquation avec l'objectif de bat365, qui est de permettre aux organisations de faire des choses étonnantes avec des données non structurées.

Cloud Block Store est un dérivé de la technologie ultrarapide qui alimente bat365 Data Services , permettant à des milliards de fichiers provenant de bat365 et d'autres partages de fichiers d'être ingérés, recherchés, analysés, audités et surveillés en quasi temps réel. Il s'agit d'une plateforme de stockage Hyper-Convergée native du nuage qui peut être déployée à la demande et adaptée en fonction des besoins.

Disponible sur la place de marché Google Cloud Platform (GCP) pour les clusters Google Kubernetes Engine (GKE), bat365 Cloud Block Store (CBS) est une plateforme de stockage persistant à l'échelle du Web Kubernetes pour les applications conteneurisées. Cloud Block Store a la capacité de monter en charge lorsque vous avez besoin de plus de ressources, ou de descendre en charge lorsque moins de ressources sont nécessaires. Sans limites de mise à l'échelle, CBS présente un cache de lecture distribué évolutif aux applications conteneurisées, optimisant les ressources du cluster Kubernetes pour les charges de travail à haute performance.

Pourquoi le Cloud Block Store est-il important pour Kubernetes ?

Les conteneurs sont désormais utilisés dans les organisations, des petites startups aux grandes entreprises. Les organisations ont besoin de différents niveaux de persistance des données pour leurs applications conteneurisées. Les applications Kubernetes ont été conçues pour utiliser des volumes qui suivent le conteneur au niveau du pod, ce qui signifie qu'ils sont créés et supprimés en même temps que les pods. Ces applications sont dites "sans état". De nombreuses applications de conteneurs auront besoin d'un volume de stockage qui stocke des informations pendant l'utilisation du conteneur, afin d'être disponible si le conteneur ou le pod est supprimé. Lorsque le pod ou le conteneur redémarre, il doit résoudre tous les changements de données qui se sont produits.

En d'autres termes, les volumes se comportent davantage comme une base de données. Ces applications sont dites "stateful".

bat365 Cloud Block Store fournit les volumes de stockage persistants requis pour les applications avec ou sans état en créant un cache de lecture distribué évolutif. Ce cache de lecture est un cluster de nœuds GKE évolutifs créé pour la haute disponibilité des données et facile à intégrer aux applications Kubernetes.

L'optimisation de Cloud Block Store est axée sur les performances et la fiabilité. Pour accélérer l'ingestion des blocs et se prémunir contre leur perte en cas de défaillance d'un nœud, Cloud Block Store déploie des services de cache redondants multiples et partagés pour faciliter l'accès aux données. Cela crée une performance optimale, si un nœud de cache de lecture devait tomber en panne, un autre nœud serait en mesure d'accéder aux données des services de cache. Toutes les données sont finalement stockées dans Google Cloud Storage pour une durabilité à long terme.

Cloud Block Store est mis en œuvre comme une collection de pods et de conteneurs gérés par Kubernetes. Kubernetes déploie le nombre optimal de chaque type de conteneur pour maintenir le niveau de service souhaité.

La mise à l'échelle automatique pour plus de ressources se produit lorsque les occurrences de lecture dans le cache dépassent un seuil d'occurrences manquées. La mise à l'échelle se produit lorsque le nombre d'occurrences dans le cache dépasse un seuil inférieur d'occurrences manquées ou un taux de bande passante de 1 Mo/sec ou moins, ce qui signifie que moins de ressources sont utilisées.

La réduction d'échelle diminue les coûts d'utilisation de la capacité de Cloud Block Store, car les clients ne paient que 0,0003 $ par gigaoctet/jour de Google Cloud Storage. Des coûts supplémentaires de cluster Google Kubernetes Engine s'appliquent et sont distincts de CBS. Vous trouverez ci-dessous quelques points saillants des caractéristiques et de l'architecture de CBS.

Caractéristiques :

- Thin Provisioned, déduplication et compression globale
- Cryptage AES256
- Plainte du pilote CSI
- Snapshots montables illimités
- Simple à mettre en œuvre via CLI et Automation
- Statistiques et rapports en temps réel
- Prise en charge d'Intel Optane en mode AppDirect (cache de 16 To)
- Interface de volume POSIX haute performance

Architecture à l'échelle du Web :

- Espace de noms de volume jusqu'à 1 Po
- Cache de lecture distribué de 100 To ou plus sur SSD local et persistant
- Auto Scale out et down, basé sur les hits du cache de lecture (et le coût)
- Charges de travail de sauvegarde, d'archivage et d'analyse Optimisation des performances d'E/S

bat365 Cloud Block Store
Flux de base du flux de données des conteneurs clients vers le Cloud Block Store via Kubernetes.
bat365 Composants des blocs de nuages
Exemple de diagramme de l'architecture de base du Cloud Block Store

La couche de traitement des données (DPL) accepte/traite les demandes des clients provenant d'un périphérique de bloc ou d'un service S3. La déduplication globale, la compression et la conversion à la taille de bloc 4K sont effectuées dans la couche de traitement des données, offrant une efficacité de stockage des données pour des opérations de données performantes.

Le Cloud Block Store est présenté comme un cache de lecture distribué aux applications clientes sous la forme d'une interface POSIX haute performance. Le service de cache du journal garantit que les données qui ne se trouvent pas dans le cache de lecture distribué sont disponibles dans le cache du journal, et que les métadonnées des autres services de cache se trouvent dans le service backend Cassandra. Tous les services de cache collaborent les uns avec les autres pour maintenir les données disponibles à partir de n'importe quel nœud du cluster GKE pour les demandes des clients.

Principaux éléments

- Le Cloud Block Store est un cache à blocs à l'échelle qui est partagé par toutes les instances de calcul au sein d'un cluster GKE.

- Les applications Kubernetes qui utilisent une interface de périphérique de bloc peuvent bénéficier de Cloud Block Store.

- Cloud Block Store est présenté aux applications Kubernetes comme un volume persistant utilisant une interface POSIX haute performance comme un répertoire montable sur un conteneur ou un pod.

- Le service de cache de lecture distribué est extensible pour ajouter plus de nœuds avec des SSD persistants locaux supplémentaires pour augmenter la capacité.

- Tous les blocs ingérés dans le Cloud Block Store sont finalement téléchargés vers le nuage dorsal S3 pour un stockage durable.

- Seules les données les plus récentes et les plus fréquemment consultées sont stockées dans le Cloud Block Store sous forme de cache de lecture distribué (nœuds SSD locaux).

- Lorsqu'un bloc est demandé par un utilisateur, tout nœud du cache distribué peut répondre, quel que soit le nœud qui stocke ce bloc dans le cache. Ceci est dû à la déduplication globale lors de l'ingestion. Tout bloc peut être lu à tout moment.

- Si un bloc n'est pas mis en cache, il est extrait de S3 (stockage GCP) et stocké à nouveau dans le cache de lecture distribué.

En résumé, bat365 Cloud Block Store est à la pointe du stockage persistant de conteneurs pour les architectures natives en nuage destinées aux applications conteneurisées d'entreprise. En utilisant une variété d'approches novatrices pour maintenir des coûts bas, Cloud Block Store fournit un retour sur investissement clair en vous permettant d'exploiter un stockage de conteneurs Kubernetes persistant de haute performance. L'installation est facile à partir de la place de marché Google Cloud Platform. Un cluster Google Kubernetes Engine est un prérequis. La documentation disponible sur le site de la place de marché présente les spécifications recommandées pour le cluster, des exemples de commandes gcloud pour l'installation et une interface de gestion CBS pour exécuter des appels API afin d'obtenir des informations précieuses sur Cloud Block Store.