Embarquez-le dans votre application .NET en quelques secondes, ou exécutez un serveur ou un cluster avec Docker, Compose ou Kubernetes — le même client et la même chaîne de connexion les atteignent tous.
Laissez votre agent de codage IA installer et vérifier Zaris pour vous. Il détecte votre environnement — en processus, Docker, Kubernetes ou Windows — et exécute le bon parcours de bout en bout.
1 · Ajoutez la compétence Zaris à votre agent
npx skills add clustron/zaris
2 · Puis demandez simplement
Install Clustron Zaris and set it up so I can connect to a store.
Ajoutez le SDK .NET et exécutez un store complet à l'intérieur de votre propre processus — idéal pour le développement et les tests. Le même client se connecte aussi à n'importe quel cluster Zaris, sans modification de code.
# Add the Clustron Zaris SDK to your project
dotnet add package Clustron.Zaris.SDK
using Clustron.Zaris.Client.DependencyInjection;
using Microsoft.Extensions.DependencyInjection;
// An embedded, in-process store — no servers, no install.
// In-process is just a connection string: zaris://inproc/demo
var sp = new ServiceCollection()
.AddClustronZaris("demo", "zaris://inproc/demo")
.BuildServiceProvider();
Auto-hébergez partout — vos données ne quittent jamais votre environnement. Récupérez depuis Docker Hub ou installez le package Windows. Choisissez votre plateforme :
# Pull the compose file and start a 4-node cluster + web console
curl -fL https://clustron.io/quick-start.yml | docker compose -f - up -d
La valeur par défaut est 4 nœuds à RF 2 (2 partitions, chacune répliquée — survit à la perte d'un nœud). Besoin d'une taille différente ? Enregistrez le fichier (curl -fL https://clustron.io/quick-start.yml -o quick-start.yml) et modifiez la liste des nœuds — gardez le nombre de nœuds un multiple du facteur de réplication (pair pour RF 2).
Ouvrez http://localhost:7810 — le store demo apparaît avec ses 3 nœuds qui passent à l'état sain. Ou prouvez le plan de données depuis le shell :
# Prove the data plane: put a key and read it back (runs inside the manager container)
docker exec $(docker ps -qf name=manager) pwsh -Command "Connect-ZrStore -ConnectionString 'zaris://zaris-0:7861/demo'; Set-ZrItem hello world; Get-ZrItem hello"
# Point your app at the store — the path segment is the store name
zaris://localhost:7861/demo
# One command: 4 nodes at RF 2 (2 partitions x 2 copies), store auto-attached.
helm install zaris oci://registry-1.docker.io/clustron/zaris -n zaris --create-namespace
Le store est auto-attaché au déploiement — aucune inscription manuelle. Redimensionnez avec --set node.replicas / --set node.replicationFactor (gardez replicas un multiple du facteur de réplication : RF 2 → 4, 6, …).
# Open the console (private port-forward — works on any cluster):
kubectl -n zaris port-forward svc/zaris-manager-console 8080:7810
# -> http://localhost:8080
# Connect from inside the cluster
zaris://zaris-client.zaris.svc.cluster.local:7861/zaris-k8s
La sécurisation de l'espace de travail, l'exposition de la console via HTTPS, les pools de nœuds de cache dédiés et les étapes spécifiques au cloud pour AKS / EKS / GKE / OpenShift sont tous décrits dans les guides ci-dessous.
# In the extracted folder, in a terminal running as Administrator
# (or right-click install.cmd -> Run as administrator)
.\install.cmd
Enregistre le service de gestion et la console web comme services Windows, ainsi que les modules PowerShell.
# 1) Point a workspace at the local Management Service (:7801) and activate it
New-ZrWorkspace -Name local -Managers "localhost:7801" -Activate
# 2) Create the store — supervisor mode forks the node processes.
# BaseClientPort is the port your app connects to.
New-ZrStore -Name orders -ReplicationFactor 2 `
-BaseClusterPort 7811 -BaseClientPort 7861
Ou faites tout dans la console web à http://localhost:7810 (aucune cmdlet d'espace de travail nécessaire — ajoutez le manager dans l'interface).
# Connect to the store you created (BaseClientPort 7861 above)
zaris://localhost:7861/orders
Pointez votre application vers le store avec une seule chaîne de connexion. Les hôtes que vous utilisez dépendent de l'endroit où s'exécute votre application — à l'intérieur du même réseau ou cluster, ou à l'extérieur.
Lorsque votre application s'exécute à côté du store — un autre service Compose, ou un pod dans le même cluster — atteignez-le directement sur le réseau interne.
# Docker Compose — app on the same network
zaris://zaris-0:7861,zaris-1:7861,zaris-2:7861/demo
# Kubernetes — in-cluster
zaris://zaris-client.zaris.svc.cluster.local:7861/zaris-k8s
# Local quick-start — from your host (Docker quick-start)
zaris://localhost:7861/demo
Par défaut, le cluster annonce des adresses intra-réseau. Pour l'atteindre depuis l'extérieur, activez l'accès externe — chaque nœud annonce également une adresse joignable depuis l'extérieur sur un second listener, sécurisée par TLS.
# Docker Compose or Kubernetes — external access (TLS + cluster CA)
zariss://node-1.example.com:7863,node-2.example.com:7863/zaris-k8s?ca=/path/ca.pem
Nécessite l'activation de l'accès externe (adresses annoncées). Utilisez zariss:// avec la CA du cluster — et ?token=env:VAR si l'authentification par token est activée.
Déposez la chaîne de connexion dans l'injection de dépendances ou appsettings.json. Le segment de chemin est le nom du store — il est égal à l'id du cluster ; la clé d'injection de dépendances n'est qu'une étiquette locale. Les hôtes séparés par des virgules forment une liste d'amorçage avec basculement automatique.
using Clustron.Zaris.Client.DependencyInjection;
// The store name in the path IS the cluster id — set it in one place.
services.AddClustronZaris(
"demo", "zaris://localhost:7861/demo");
// …or from appsettings.json:
// "ConnectionStrings": { "demo": "zaris://localhost:7861/demo" }
services.AddClustronZarisFromConnectionStrings(configuration);
// Resolve and use it:
var provider = sp.GetRequiredService<IZarisClientProvider>();
var client = await provider.GetAsync("demo");
await client.PutAsync("k", "v");
Nodus — appartenance pair-à-pair, élection de leader et messagerie typée — est un unique package NuGet que vous embarquez dans votre service .NET. Aucun package à héberger, aucun serveur à exécuter.
dotnet add package Clustron.Nodus.Client
Parcourez toutes les versions, ou lisez la politique de versionnement et de compatibilité.