Skip to main content
Version: 2.0.2

Déployer NATS en 5 minutes

Ce guide vous accompagne dans le déploiement de votre premier cluster NATS sur Hikube en quelques minutes !


Objectifs

À la fin de ce guide, vous aurez :

  • Un cluster NATS déployé et opérationnel sur Hikube
  • Une configuration haute disponibilité avec plusieurs réplicas
  • Le JetStream activé pour le stockage persistant des messages
  • Un utilisateur configuré pour se connecter à votre cluster

Prérequis

Avant de commencer, assurez-vous d’avoir :

  • kubectl configuré avec votre kubeconfig Hikube
  • Les droits administrateur sur votre tenant

Étape 1 : Créer le manifeste NATS

Préparez le fichier nats.yaml

Créez un fichier nats.yaml comme ci-dessous :

nats.yaml
apiVersion: apps.cozystack.io/v1alpha1
kind: NATS
metadata:
name: nats
namespace: tenant-x
spec:
external: false

replicas: 2
resourcesPreset: large
storageClass: "replicated"

jetstream:
enabled: true
size: 10Gi

users:
user1:
password: mypassword

config:
merge:
max_payload: 16MB
write_deadline: 2s
debug: false
trace: false
resolver:
type: full
dir: /data/resolver

Étape 2 : Déployer le cluster NATS

Appliquez simplement votre manifeste :

kubectl apply -f nats.yaml

Vérifiez ensuite le déploiement :

kubectl get nats
NAME READY AGE
nats True 2m

Et les pods associés :

kubectl get pods | grep nats
nats-0 1/1 Running 0 2m
nats-1 1/1 Running 0 2m

Étape 3 : Connexion au cluster NATS

Option 1 : Port-forward local

kubectl port-forward svc/nats-nats 4222:4222

Étape 4 : Utilisation de JetStream

Créez un stream et publiez vos premiers messages persistants :

# Créer un stream
nats stream add EVENTS --subjects "events.*" --storage file --replicas 2

# Publier un message
nats pub events.test "Hikube rocks!"

# Lire les messages
nats consumer add EVENTS my_consumer
nats consumer next EVENTS my_consumer

Étape 5 : Vérification de la persistance

Vérifiez l’état de JetStream :

nats stream report

Vous devriez voir un état similaire à :

Streams: 1  Consumers: 1  Messages: 1  Bytes: 250

📋 Résumé

Vous avez déployé :

  • Un cluster NATS en haute disponibilité sur votre tenant Hikube
  • Le JetStream activé pour la persistance des messages
  • Un utilisateur prêt à publier et consommer des messages

✨ Vous êtes maintenant prêt à intégrer NATS dans vos applications hébergées sur Hikube !