Skip to content

Instantly share code, notes, and snippets.

@mtmk
Last active February 12, 2024 14:32
Show Gist options
  • Select an option

  • Save mtmk/b5b2fb2c2f1781fd541aa06678710f59 to your computer and use it in GitHub Desktop.

Select an option

Save mtmk/b5b2fb2c2f1781fd541aa06678710f59 to your computer and use it in GitHub Desktop.
nats-r3
server_name=n1
listen=127.0.0.1:4221
accounts {
$SYS {
users = [
{ user: "sys",
pass: "sys"
}
]
}
}
jetstream {
store_dir=data1
}
cluster {
name: C1
listen: 127.0.0.1:6201
routes: [
nats://127.0.0.1:6201
nats://127.0.0.1:6202
nats://127.0.0.1:6203
]
}
server_name=n2
listen=127.0.0.1:4222
accounts {
$SYS {
users = [
{ user: "sys",
pass: "sys"
}
]
}
}
jetstream {
store_dir=data2
}
cluster {
name: C1
listen: 127.0.0.1:6202
routes: [
nats://127.0.0.1:6201
nats://127.0.0.1:6202
nats://127.0.0.1:6203
]
}
server_name=n3
listen=127.0.0.1:4223
accounts {
$SYS {
users = [
{ user: "sys",
pass: "sys"
}
]
}
}
jetstream {
store_dir=data3
}
cluster {
name: C1
listen: 127.0.0.1:6203
routes: [
nats://127.0.0.1:6201
nats://127.0.0.1:6202
nats://127.0.0.1:6203
]
}

Simple NATS JetStream Cluster

Start cluster on three different terminals:

> nats-server -c c1.conf
> nats-server -c c2.conf
> nats-server -c c3.conf

Check cluster status:

> nats --user=sys --password=sys server report jetstream

Other handy nats commands:

> nats stream ls
> nats consumer report

Follow the quick start here for .NET client: https://nats-io.github.io/nats.net.v2/documentation/jetstream/intro.html

More details on NATS clustering: https://docs.nats.io/running-a-nats-service/configuration/clustering

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment