Creating a basic 3-node network¶
In this section, we will create a three-node network. The three nodes are: foo, bar, and baz.
foo -> bar <- baz
foo and baz are directly connected to bar with TCP connections.
foo can reach baz by sending network packets through bar.
Receptor configurations¶
Create three configuration files, one for each node.
foo.yml
---
version: 2
node:
id: foo
control-services:
- service: control
filename: /tmp/foo.sock
tcp-peers:
- address: localhost:2222
log-level:
level: debug
...
bar.yml
---
version: 2
node:
id: bar
control-services:
- service: control
filename: /tmp/bar.sock
tcp-listeners:
- port: 2222
log-level:
level: debug
...
baz.yml
---
version: 2
node:
id: baz
control-services:
- service: control
filename: /tmp/baz.sock
tcp-peers:
- address: localhost:2222
log-level:
level: debug
- work-command:
workType: echo
command: bash
params: "-c \"while read -r line; do echo $line; sleep 1; done\""
allowruntimeparams: true
...
Run the services in separate terminals.
./receptor --config foo.yml
./receptor --config bar.yml
./receptor --config baz.yml
See also
- Configuring Receptor with a config file
Configuring Receptor with a configuration file
- Connecting nodes
Detail on connecting receptor nodes