Skip to content

damianoneill/nats

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nats playground

This playground uses docker to set up an environment that reflects a SaaS <-> on-premise(s) network deployment using nats.io.

A Docker network is created for the SaaS and a 3 node nats.io server cluster, is configured within this network.

Two other docker networks are defined to represent two separate organisations connecting to the SaaS network. One represented with the label hsbc and the other with the label diaego.

The diaego network like the SaaS network has a 3 node nats.io server cluster.

The hsbc network contains two 3 node nats.io server clusters, both clusters run in the same network. This configuration simulates an environment where each nats server is servicing a subset of the total nats publisher / subscriber within an organisation.

nats.io provides support natively for this type of deployment, its describes using the term leaf, further information is available in this article -- https://docs.nats.io/running-a-nats-service/configuration/leafnodes

requirements

The solution uses TLS to encrypt the traffic, see this document for details. If you plan to interact externally with the docker containers (through exposed ports), read this document to understand how to do this.

usage

To start up a tmuxinator session.

mux local

When running the playground can be stopped as follows.

mux stop nats