Aller au contenu principal
Déploiements

Déployez Zaris à votre façon

D'une bibliothèque embarquée à un cluster Kubernetes sécurisé et auto-scalant — le même store, la même chaîne de connexion. Choisissez la forme qui correspond à l'endroit où vous exécutez aujourd'hui.

Un store, de nombreuses formes

Commencez embarqué, grandissez vers un cluster

Zaris exécute le même code in-process et en cluster. Avancez sur ce chemin sans réécrire votre application — seule la chaîne de connexion change.

Embarqué

In-process

Le moteur Zaris s'exécute dans votre application — aucun saut réseau, aucun serveur, aucun coordinateur. Idéal pour le développement, les tests et les caches mono-processus.

  • Le chemin le plus rapide vers un store fonctionnel — un seul paquet NuGet
  • Des tests d'intégration déterministes et sans dépendance
  • La même API que vous utiliserez en cluster — aucune réécriture ensuite
services.AddClustronZaris("demo", "zaris://inproc/demo");
PROCESSUS DE VOTRE APPLICATION .NETVotre codeIZarisClientPut / Get / Watch / LockMoteur Zaris (in-proc)les partitions vivent dans ce processusaucun serveur · aucun coordinateuren mémoire
Application(s) cliente(s)CLUSTER · conteneurs ou VMzaris-n0partitions + réplicasNodus · sécurité · métriqueszaris-n1partitions + réplicasNodus · sécurité · métriqueszaris-n2partitions + réplicasNodus · sécurité · métriquesréplication · RF copies par partitionManager + Consoleobserver · sécuriser · mettre à l'échelle
Docker · VM

Multi-nœuds sur Docker ou VM

Un vrai cluster répliqué que vous exécutez avec Docker Compose ou sur de simples machines — avec un manager et une console à côté. Des fichiers compose prêts à l'emploi en montent un en une seule commande.

  • Réplication (RF copies) pour la disponibilité
  • Un demostore sécurisé (jeton + TLS) prêt à l'emploi
  • S'exécute partout où Docker ou .NET s'exécute — y compris Windows
services.AddClustronZaris("store", "zaris://n0:7861,n1:7861,n2:7861/store");
Recommandé à l'échelle

Kubernetes avec Helm

Un StatefulSet de pods nœuds derrière un Service headless et client, plus le manager — installé par le chart Helm officiel. La découverte Kubernetes fait de la mise à l'échelle un simple kubectl scale.

  • Montée en charge à chaud — de nouveaux pods rejoignent, la carte des partitions s'étend, sans redémarrage
  • Convergence auto-réparatrice après redémarrages et démarrages à froid
  • TLS par secret monté ou par enrôlement, accès externe par pod
helm install zaris charts/zaris -n zaris --set node.replicas=5
NAMESPACE: zaris · Helm chartclient Service :7861StatefulSet · zariszaris-0pod · partitionsPVC-free · emptyDirzaris-1pod · partitionsPVC-free · emptyDirzaris-2pod · partitionsPVC-free · emptyDirheadless Service · stable pod DNS + discoveryManagerDeployment + Consolekubectl scale statefulset → la carte s'étend sur les nouveaux pods
HORS DU CLUSTERClient externezariss://zaris-0.ext…/storeTLS · feuille multi-SAN · jetonCLUSTER KUBERNETESper-pod Service / LoadBalancerzaris-0listener interne + externeannonce son adresse externezaris-1listener interne + externeannonce son adresse externeles clients in-cluster utilisent le DNS interne (inchangé)
Hors cluster

Clients externes

Laissez les clients hors du cluster se connecter. Chaque nœud annonce une adresse joignable de l'extérieur (le modèle d'adresses annoncées façon Kafka) via un second listener et un Service par pod — les clients in-cluster ne sont pas affectés.

  • Adressage par pod via NodePort, LoadBalancer ou Ingress
  • TLS avec une feuille multi-SAN couvrant le nom d'hôte externe
  • Une transformation en couche de bordure — la carte des partitions est intacte
services.AddClustronZaris("store", "zariss://zaris-0.ext.example.com:7863/store?ca=/ca.pem");
Modèle de gestion

Qui exécute les nœuds ?

Deux modèles d'exploitation, une seule console. En mode superviseur, le manager exécute les nœuds ; en mode attach, votre orchestrateur les exécute et le manager adopte le cluster pour l'observer et le sécuriser.

Superviseur

Manager (superviseur)nœud 0nœud 1nœud 2le manager possède le cycle de vie des nœuds

Attach

Orchestrateur (k8s / compose)nœud 0nœud 1nœud 2Le manager adopte (observe)l'orchestrateur possède le cycle de vie

La même chaîne de connexion, partout

Quelle que soit la forme choisie, les clients se connectent de la même façon — une seule chaîne zaris:// / zariss://. Changez où elle pointe, pas votre code.