1 Here a sample of command with pvesh to manage the sdn.
4 #create a vlan transportzone
5 pvesh create /cluster/sdn/ --sdn vlanzone --type vlan --uplink-id 1
8 #create a layer2 vxlan multicast transportzone
9 pvesh create /cluster/sdn/ --sdn vxlanmulticastzone --type vxlan --uplink-id 1 --multicast-address 239.192.114.23
11 #create a layer2 vxlan unicast transportzone
12 pvesh create /cluster/sdn/ --sdn vxlanunicastzone --type vxlan --uplink-id 1 --unicast-address 192.168.0.1,192.168.0.2,192.168.0.3
15 pvesh create /cluster/sdn/ --sdn frrrouter1 --type frr --uplink-id 1 --peers 192.168.0.1,192.168.0.2,192.168.0.3 --asn 1234
17 #create a layer2 vxlan bgpevpn transportzone
18 pvesh create /cluster/sdn/ --sdn layer2evpnzone --type vxlan --uplink-id 1 --router frrrouter1
20 #create a layer3 routable vxlan bgpevpn transportzone
21 pvesh create /cluster/sdn/ --sdn layer3evpnzone --type vxlan --uplink-id 1 --router frrrouter1 --vrf vrf1 --vrf-vxlan 4000
24 #create a vnet in the transportzone
25 pvesh create /cluster/sdn/ --sdn vnet10 --type vnet --transportzone vlanzone --tag 10
27 #create a vnet in the transportzone with ip for evpn routing
28 pvesh create /cluster/sdn/ --sdn vnet11 --type vnet --transportzone layer3evpnzone --tag 11 --ipv4 10.0.0.1/24 --mac c8:1f:66:f8:62:8d
29 pvesh create /cluster/sdn/ --sdn vnet12 --type vnet --transportzone layer3evpnzone --tag 12 --ipv4 10.0.1.1/24 --mac c8:1f:66:f8:62:8e
32 #apply changes from /etc/pve/sdn.cfg.new to /etc/pve/sdn.cfg
33 pvesh set /cluster/sdn
36 #generate local /etc/network/interfaces.d/sdn and reload (need to be called on each node)
37 pvesh set /nodes/<node>/network
40 display transporzone status on all cluster nodes
41 #pvesh get /cluster/resources
42 ┌────────────────────────────────────┬─────────┬───────┬───────────┬─────────┬───────┬────────┬─────────────┬────────────┬────────────┬───────────────┬──────┬───────────┬──────────────┬────────────────┐
43 │ id │ type │ cpu │ disk │ hastate │ level │ maxcpu │ maxdisk │ maxmem │ mem │ node │ pool │ status │ storage │ uptime │
44 │ sdn/node1/transportzone10 │ sdn │ │ │ │ │ │ │ │ │ kvmformation1 │ │ error │ │ │
45 ├────────────────────────────────────┼─────────┼───────┼───────────┼─────────┼───────┼────────┼─────────────┼────────────┼────────────┼───────────────┼──────┼───────────┼──────────────┼────────────────┤
46 │ sdn/node1/zone1 │ sdn │ │ │ │ │ │ │ │ │ node1 │ │ available │ │ │
47 ├────────────────────────────────────┼─────────┼───────┼───────────┼─────────┼───────┼────────┼─────────────┼────────────┼────────────┼───────────────┼──────┼───────────┼──────────────┼────────────────┤
48 │ sdn/node1/zone4 │ sdn │ │ │ │ │ │ │ │ │ node1 │ │ available │ │ │
49 ├────────────────────────────────────┼─────────┼───────┼───────────┼─────────┼───────┼────────┼─────────────┼────────────┼────────────┼───────────────┼──────┼───────────┼──────────────┼────────────────┤
54 #list all transport zones of a node
56 pvesh get /nodes/<node>/sdn/
57 ┌─────────────────┬───────────┐
59 ├─────────────────┼───────────┤
60 │ transportzone10 │ error │
61 ├─────────────────┼───────────┤
63 ├─────────────────┼───────────┤
65 └─────────────────┴───────────┘
68 #list all vnet status from a node transportzone
70 pveset get /nodes/<node>/sdn/<transportzone>/content