86 lines
2.5 KiB
YAML
86 lines
2.5 KiB
YAML
# topology documentation: http://containerlab.dev/lab-examples/single-srl/
|
|
name: sshworkshop
|
|
topology:
|
|
kinds:
|
|
nokia_srlinux:
|
|
type: ixrd3
|
|
image: ghcr.io/nokia/srlinux
|
|
arista_ceos:
|
|
image: ceos-lab:4.32.0.1F
|
|
linux:
|
|
image: workshop-debian:v1
|
|
network-mode: none
|
|
binds:
|
|
- ./names-hashes.yml:/etc/workshopnames.yml:ro
|
|
- ./config/authorized_keys:/root/.ssh/authorized_keys:ro
|
|
- ./setups/linux.sh:/usr/local/bin/setup.sh:ro
|
|
memory: 256MB
|
|
cpu-set: 4-7
|
|
nodes:
|
|
# a1:
|
|
# kind: arista_ceos
|
|
br-clab-intonly:
|
|
kind: bridge
|
|
br-ext:
|
|
kind: bridge
|
|
linux-gw:
|
|
kind: linux
|
|
# network-mode: "bridge"
|
|
binds:
|
|
- ./config/dnsmasq.conf:/etc/dnsmasq.conf:ro
|
|
- ./setups/gateway.sh:/usr/local/bin/setup.sh:ro
|
|
- ./names-hashes.yml:/etc/workshopnames.yml:ro
|
|
jumphost1:
|
|
kind: linux
|
|
binds:
|
|
- ./setups/jumphost.sh:/usr/local/bin/setup.sh:ro
|
|
- ./names-hashes.yml:/etc/workshopnames.yml:ro
|
|
memory: 4GB
|
|
cpu-set: 2-3
|
|
jumphost2:
|
|
kind: linux
|
|
binds:
|
|
- ./setups/jumphost.sh:/usr/local/bin/setup.sh:ro
|
|
memory: 1GB
|
|
webserver1:
|
|
kind: linux
|
|
# network-mode: "bridge"
|
|
binds:
|
|
- ./namepicker/webserver.py:/usr/local/bin/webserver.py:ro
|
|
- ./setups/webserver.sh:/usr/local/bin/setup.sh:ro
|
|
memory: 1GB
|
|
webserver2:
|
|
kind: linux
|
|
# network-mode: "bridge"
|
|
binds:
|
|
- ./namepicker/webserver.py:/usr/local/bin/webserver.py:ro
|
|
- ./setups/webserver.sh:/usr/local/bin/setup.sh:ro
|
|
memory: 1GB
|
|
linux1:
|
|
kind: linux
|
|
linux2:
|
|
kind: linux
|
|
linux3:
|
|
kind: linux
|
|
linux4:
|
|
kind: linux
|
|
linux5:
|
|
kind: linux
|
|
linux6:
|
|
kind: linux
|
|
|
|
links:
|
|
# - endpoints: ["a1:eth1","br-clab:eth1"]
|
|
- endpoints: [ "linux-gw:eth1", "br-ext:gw1" ]
|
|
- endpoints: [ "linux-gw:eth2", "br-clab-intonly:gw2" ]
|
|
- endpoints: [ "linux-gw:eth3", "jumphost1:eth0" ]
|
|
- endpoints: [ "jumphost1:eth1", "webserver1:eth1" ]
|
|
- endpoints: [ "jumphost1:eth2", "jumphost2:eth0" ]
|
|
- endpoints: [ "jumphost2:eth1", "webserver2:eth1" ]
|
|
- endpoints: [ "linux1:eth0", "br-clab-intonly:l1" ]
|
|
- endpoints: [ "linux2:eth0", "br-clab-intonly:l2" ]
|
|
- endpoints: [ "linux3:eth0", "br-clab-intonly:l3" ]
|
|
- endpoints: [ "linux4:eth0", "br-clab-intonly:l4" ]
|
|
- endpoints: [ "linux5:eth0", "br-clab-intonly:l5" ]
|
|
- endpoints: [ "linux6:eth0", "br-clab-intonly:l6" ]
|