Init: mediaserver

This commit is contained in:
2023-02-08 12:13:28 +01:00
parent 848bc9739c
commit f7c23d4ba9
31914 changed files with 6175775 additions and 0 deletions

View File

@@ -0,0 +1,37 @@
# Provision CLOS fabric using the Ansible collection for Dell EMC SmartFabric OS10
This example describes how to use Ansible to build a CLOS fabric using Dell EMC PowerSwitch platforms running Dell EMC SmartFabric OS10. The sample topology is a two-tier CLOS fabric with two spines and four leaves connected as mesh. eBGP is running between the two tiers. All switches in spine have the same AS number, and each leaf switch has a unique AS number. All AS numbers used are private.
For application load-balancing purposes, the same prefix is advertised from multiple leaf switches and uses _BGP multipath relax_ feature.
![CLOS FABRIC Topology](https://ansible-dellos-docs.readthedocs.io/en/latest/_images/topo.png)
## Create simple Ansible playbook
**1**. Create an inventory file called `inventory.yaml`, then specify the device IP address.
**2**. Create a group variable file called `group_vars/all`, then define credentials and SNMP variables.
**3**. Create a group variable file called `group_vars/spine.yaml`, then define credentials, hostname, and BGP neighbors of spine group.
**4**. Create a host variable file called `host_vars/spine1.yaml`, then define the host, credentials, and transport.
**5**. Create a host variable file called `host_vars/spine2.yaml`, then define the host, credentials, and transport.
**6**. Create a host variable file called `host_vars/leaf1.yaml`, then define the host, credentials, and transport.
**7**. Create a host variable file called `host_vars/leaf2.yaml`, then define the host, credentials, and transport.
**8**. Create a host variable file called `host_vars/leaf3.yaml`, then define the host, credentials, and transport.
**9**. Create a host variable file called `host_vars/leaf4.yaml`, then define the host, credentials, and transport.
**10**. Create a playbook called `datacenter.yaml`.
**11**. Run the playbook.
ansible-playbook -i inventory.yaml datacenter.yaml
(c) 2017-2020 Dell Inc. or its subsidiaries. All rights reserved.

View File

@@ -0,0 +1,11 @@
---
- hosts: datacenter
gather_facts: no
connection: network_cli
collections:
- dellemc.os10
roles:
- os10_interface
- os10_bgp
- os10_snmp
- os10_system

View File

@@ -0,0 +1,9 @@
ansible_ssh_user: xxxxx
ansible_ssh_pass: xxxxx
ansible_network_os: dellemc.os10.os10
os10_snmp:
snmp_community:
- name: public
access_mode: ro
state: present

View File

@@ -0,0 +1,85 @@
ansible_ssh_user: xxxxx
ansible_ssh_pass: xxxxx
ansible_network_os: dellemc.os10.os10
os10_system:
hostname: "{{ spine_hostname }}"
os10_bgp:
asn: 64901
router_id: "{{ bgp_router_id }}"
best_path:
as_path: multipath-relax
as_path_state: present
med:
- attribute: missing-as-worst
state: present
neighbor:
- type: ipv4
remote_asn: "{{ bgp_neigh1_remote_asn }}"
ip: "{{ bgp_neigh1_ip }}"
admin: up
state: present
- type: ipv4
remote_asn: "{{ bgp_neigh2_remote_asn }}"
ip: "{{ bgp_neigh2_ip }}"
admin: up
state: present
- type: ipv4
remote_asn: "{{ bgp_neigh3_remote_asn }}"
ip: "{{ bgp_neigh3_ip }}"
admin: up
state: present
- type: ipv4
remote_asn: "{{ bgp_neigh4_remote_asn }}"
ip: "{{ bgp_neigh4_ip }}"
admin: up
state: present
- type: ipv6
remote_asn: "{{ bgp_neigh5_remote_asn }}"
ip: "{{ bgp_neigh5_ip }}"
admin: up
address_family:
- type: ipv4
activate: false
state: present
- type: ipv6
activate: true
state: present
state: present
- type: ipv6
remote_asn: "{{ bgp_neigh6_remote_asn }}"
ip: "{{ bgp_neigh6_ip }}"
admin: up
address_family:
- type: ipv4
activate: false
state: present
- type: ipv6
activate: true
state: present
state: present
- type: ipv6
remote_asn: "{{ bgp_neigh7_remote_asn }}"
ip: "{{ bgp_neigh7_ip }}"
admin: up
address_family:
- type: ipv4
activate: false
state: present
- type: ipv6
activate: true
state: present
state: present
- type: ipv6
remote_asn: "{{ bgp_neigh8_remote_asn }}"
ip: "{{ bgp_neigh8_ip }}"
admin: up
address_family:
- type: ipv4
activate: false
state: present
- type: ipv6
activate: true
state: present
state: present

View File

@@ -0,0 +1,77 @@
ansible_ssh_user: xxxxx
ansible_ssh_pass: xxxxx
ansible_network_os: dellemc.os10.os10
leaf_hostname: "leaf-1"
os10_system:
hostname: "{{ leaf_hostname }}"
hash_algo:
algo:
- name: ecmp
mode: crc
state: present
os10_interface:
ethernet 1/1/1:
desc: "Connected to Spine 1"
mtu: 9216
portmode:
admin: up
switchport: False
ip_and_mask: 100.1.1.2/24
ipv6_and_mask: 2001:100:1:1::2/64
state_ipv6: present
ethernet 1/1/9:
desc: "Connected to Spine 2"
mtu: 9216
portmode:
admin: up
switchport: False
ip_and_mask: 100.2.1.2/24
ipv6_and_mask: 2001:100:2:1::2/64
state_ipv6: present
os10_bgp:
asn: 64801
router_id: 100.0.2.1
address_family_ipv4: true
address_family_ipv6: true
best_path:
as_path: multipath-relax
as_path_state: present
med:
- attribute: missing-as-worst
state: present
neighbor:
- type: ipv4
remote_asn: 64901
ip: 100.1.1.1
admin: up
state: present
- type: ipv4
remote_asn: 64901
ip: 100.2.1.1
admin: up
state: present
- type: ipv6
remote_asn: 64901
ip: 2001:100:1:1::1
admin: up
address_family:
- type: ipv4
activate: false
state: present
- type: ipv6
activate: true
state: present
state: present
- type: ipv6
remote_asn: 64901
ip: 2001:100:2:1::1
admin: up
address_family:
- type: ipv4
activate: false
state: present
- type: ipv6
activate: true
state: present
state: present
state: present

View File

@@ -0,0 +1,81 @@
hostname: leaf2
ansible_ssh_user: xxxxx
ansible_ssh_pass: xxxxx
ansible_network_os: dellemc.os10.os10
leaf_hostname: "leaf-2"
os10_system:
hostname: "{{ leaf_hostname }}"
hash_algo:
algo:
- name: ecmp
mode: crc
state: present
os10_interface:
ethernet 1/1/1:
desc: "Connected to Spine 1"
mtu: 9216
portmode:
admin: up
switchport: False
ip_and_mask: 100.1.17.2/24
ipv6_and_mask: 2001:100:1:11::2/64
state_ipv6: present
ethernet 1/1/9:
desc: "Connected to Spine 2"
mtu: 9216
portmode:
admin: up
switchport: False
ip_and_mask: 100.2.17.2/24
ipv6_and_mask: 2001:100:2:11::2/64
os10_bgp:
asn: 64802
router_id: 100.0.2.2
address_family_ipv4: true
address_family_ipv6: true
best_path:
as_path: multipath-relax
as_path_state: present
med:
- attribute: missing-as-worst
state: present
neighbor:
- type: ipv4
remote_asn: 64901
ip: 100.1.18.1
admin: up
state: present
- type: ipv4
remote_asn: 64901
ip: 100.1.17.1
admin: up
state: present
- type: ipv4
remote_asn: 64901
ip: 100.2.17.1
admin: up
state: present
- type: ipv6
remote_asn: 64901
ip: 2001:100:1:11::1
admin: up
address_family:
- type: ipv4
activate: false
state: present
- type: ipv6
activate: true
state: present
state: present
- type: ipv6
remote_asn: 64901
ip: 2001:100:2:11::1
admin: up
address_family:
- type: ipv4
activate: false
state: present
- type: ipv6
activate: true
state: present
state: present

View File

@@ -0,0 +1,81 @@
hostname: leaf3
ansible_ssh_user: xxxxx
ansible_ssh_pass: xxxxx
ansible_network_os: dellemc.os10.os10
leaf_hostname: "leaf-3"
os10_system:
hostname: "{{ leaf_hostname }}"
hash_algo:
algo:
- name: ecmp
mode: crc
state: present
os10_interface:
ethernet 1/1/1:
desc: "Connected to Spine 1"
mtu: 9216
portmode:
admin: up
switchport: False
ip_and_mask: 100.1.33.2/24
ipv6_and_mask: 2001:100:1:21::2/64
state_ipv6: present
ethernet 1/1/9:
desc: "Connected to Spine 2"
mtu: 9216
portmode:
admin: up
switchport: False
ip_and_mask: 100.2.33.2/24
ipv6_and_mask: 2001:100:2:21::2/64
os10_bgp:
asn: 64803
router_id: 100.0.2.3
address_family_ipv4: true
address_family_ipv6: true
best_path:
as_path: multipath-relax
as_path_state: present
med:
- attribute: missing-as-worst
state: present
neighbor:
- type: ipv4
remote_asn: 64901
ip: 100.1.33.1
admin: up
state: present
- type: ipv4
remote_asn: 64901
ip: 100.2.33.1
admin: up
state: present
- type: ipv6
remote_asn: 64901
ip: 2001:100:1:21::1
admin: up
state: present
- type: ipv6
remote_asn: 64901
ip: 2001:100:1:22::1
admin: up
address_family:
- type: ipv4
activate: false
state: present
- type: ipv6
activate: true
state: present
state: present
- type: ipv6
remote_asn: 64901
ip: 2001:100:2:21::1
admin: up
address_family:
- type: ipv4
activate: false
state: present
- type: ipv6
activate: true
state: present
state: present

View File

@@ -0,0 +1,77 @@
hostname: leaf4
ansible_ssh_user: xxxxx
ansible_ssh_pass: xxxxx
ansible_network_os: dellemc.os10.os10
leaf_hostname: "leaf-4"
os10_system:
hostname: "{{ leaf_hostname }}"
hash_algo:
algo:
- name: ecmp
mode: crc
state: present
os10_interface:
ethernet 1/1/5:
desc: "Connected to Spine 1"
mtu: 9216
portmode:
admin: up
switchport: False
ip_and_mask: 100.1.49.2/24
ipv6_and_mask: 2001:100:1:31::2/64
state_ipv6: present
ethernet 1/1/17:
desc: "Connected to Spine 2"
mtu: 9216
portmode:
admin: up
switchport: False
ip_and_mask: 100.2.49.2/24
ipv6_and_mask: 2001:100:2:31::2/64
state_ipv6: present
os10_bgp:
asn: 64804
router_id: 100.0.2.4
address_family_ipv4: true
address_family_ipv6: true
best_path:
as_path: multipath-relax
as_path_state: present
med:
- attribute: missing-as-worst
state: present
neighbor:
- type: ipv4
remote_asn: 64901
ip: 100.1.49.1
admin: up
state: present
- type: ipv4
remote_asn: 64901
ip: 100.2.49.1
admin: up
state: present
- type: ipv6
remote_asn: 64901
ip: 2001:100:1:31::1
admin: up
address_family:
- type: ipv4
activate: false
state: present
- type: ipv6
activate: true
state: present
state: present
- type: ipv6
remote_asn: 64901
ip: 2001:100:2:31::1
admin: up
address_family:
- type: ipv4
activate: false
state: present
- type: ipv6
activate: true
state: present
state: present

View File

@@ -0,0 +1,61 @@
hostname: spine1
ansible_ssh_user: xxxxx
ansible_ssh_pass: xxxxx
ansible_network_os: dellemc.os10.os10
spine_hostname: "spine-1"
os10_interface:
ethernet 1/1/1:
desc: "Connected to leaf 1"
mtu: 9216
portmode:
admin: up
switchport: False
ip_and_mask: 100.1.1.1/24
ipv6_and_mask: 2001:100:1:1::1/64
state_ipv6: present
ethernet 1/1/17:
desc: "Connected to leaf 2"
mtu: 9216
portmode:
admin: up
switchport: False
ip_and_mask: 100.1.33.1/24
ipv6_and_mask: 2001:100:1:21::1/64
state_ipv6: present
ethernet 1/1/25:
desc: "Connected to leaf 3"
mtu: 9216
portmode:
admin: up
switchport: False
ip_and_mask: 100.1.17.1/24
ipv6_and_mask: 2001:100:1:11::1/64
state_ipv6: present
ethernet 1/1/9:
desc: "Connected to leaf 4"
mtu: 9216
portmode:
admin: up
switchport: False
ip_and_mask: 100.1.49.1/24
ipv6_and_mask: 2001:100:1:31::1/64
state_ipv6: present
bgp_router_id: "100.0.1.1"
bgp_neigh1_remote_asn: 64801
bgp_neigh1_ip: "100.1.1.2"
bgp_neigh2_remote_asn: 64803
bgp_neigh2_ip: "100.1.33.2"
bgp_neigh3_remote_asn: 64802
bgp_neigh3_ip: "100.1.17.2"
bgp_neigh4_remote_asn: 64804
bgp_neigh4_ip: "100.1.49.2"
bgp_neigh5_remote_asn: 64801
bgp_neigh5_ip: "2001:100:1:1::2"
bgp_neigh6_remote_asn: 64802
bgp_neigh6_ip: "2001:100:1:11::2"
bgp_neigh7_remote_asn: 64803
bgp_neigh7_ip: "2001:100:1:21::2"
bgp_neigh8_remote_asn: 64804
bgp_neigh8_ip: "2001:100:1:31::2"

View File

@@ -0,0 +1,60 @@
hostname: spine2
ansible_ssh_user: xxxxx
ansible_ssh_pass: xxxxx
ansible_network_os: dellemc.os10.os10
spine_hostname: "spine-2"
os10_interface:
ethernet 1/1/1:
desc: "Connected to leaf 1"
mtu: 9216
portmode:
admin: up
switchport: False
ip_and_mask: 100.2.1.1/24
ipv6_and_mask: 2001:100:2:1::1/64
state_ipv6: present
ethernet 1/1/25:
desc: "Connected to leaf 2"
mtu: 9216
portmode:
admin: up
switchport: False
ip_and_mask: 100.2.17.1/24
ipv6_and_mask: 2001:100:2:11::1/64
state_ipv6: present
ethernet 1/1/17:
desc: "Connected to leaf 3"
mtu: 9216
portmode:
admin: up
switchport: False
ip_and_mask: 100.2.33.1/24
ipv6_and_mask: 2001:100:2:21::1/64
state_ipv6: present
ethernet 1/1/9:
desc: "Connected to leaf 4"
mtu: 9216
portmode:
admin: up
switchport: False
ip_and_mask: 100.2.49.1/24
ipv6_and_mask: 2001:100:2:31::1/64
state_ipv6: present
bgp_router_id: "100.0.1.2"
bgp_neigh1_remote_asn: 64801
bgp_neigh1_ip: "100.2.1.2"
bgp_neigh2_remote_asn: 64802
bgp_neigh2_ip: "100.2.33.2"
bgp_neigh3_remote_asn: 64803
bgp_neigh3_ip: "100.2.17.2"
bgp_neigh4_remote_asn: 64804
bgp_neigh4_ip: "100.2.49.2"
bgp_neigh5_remote_asn: 64801
bgp_neigh5_ip: "2001:100:2:1::2"
bgp_neigh6_remote_asn: 64802
bgp_neigh6_ip: "2001:100:2:11::2"
bgp_neigh7_remote_asn: 64803
bgp_neigh7_ip: "2001:100:2:21::2"
bgp_neigh8_remote_asn: 64804
bgp_neigh8_ip: "2001:100:2:31::2"

View File

@@ -0,0 +1,20 @@
spine1 ansible_host=10.11.182.25
spine2 ansible_host=10.11.182.26
leaf1 ansible_host=10.11.182.27
leaf2 ansible_host=10.11.182.28
leaf3 ansible_host=10.11.182.29
leaf4 ansible_host=10.11.182.30
[spine]
spine1
spine2
[leaf]
leaf1
leaf2
leaf3
leaf4
[datacenter:children]
spine
leaf

View File

@@ -0,0 +1,63 @@
# VxLAN Symmetric-IRB configuration using BGP EVPN using the Ansible collection for Dell EMC SmartFabric OS10
This example describes how to use Ansible to build a Leaf-Spine topology with Dell EMC PowerSwitch platforms running Dell EMC SmartFabric OS10, using a VxLAN Symmetric-IRB configuration model.
VxLAN Symmetric-IRB is configured using BGP EVPN with Leaf-Spine topology. BGP unnumbered is configured between the Leaf and Spine over VLANS for both underlay and overlay. VLT is configured between the pair of Leaf nodes.
In all Leaf nodes, the L3 VRF VNI "test" is configured to route between different VNs spanned across the topology, and the VTEP router MAC is configured to identify the remote VTEPs.
VN 100 and VN 300 is configured in a pair of Leaf nodes, and VN 200 and VN 300 configured in an other pair of Leaf nodes.
## Create simple Ansible playbook
**1**. Create an inventory file called `inventory.yaml`, then specify the device IP address.
**2**. Create a host variable file called `host_vars/spine1.yaml`, then define the host, credentials, and transport.
**3**. Create a host variable file called `host_vars/spine2.yaml`, then define the host, credentials, and transport.
**4**. Use the *os10_interface* and *os10_vlan* roles to configure the required VLANs.
**5**. Use the *os10_bgp* role to configure BGP unnumbered.
**Configurations for VTEP-1**
**1**. Create a host variable file called `host_vars/prim-vtep1.yaml`.
**2**. Create a host variable file called `host_vars/sec-vtep1.yaml`.
**3**. Define the host, credentials, and transport.
**4**. Use the *os10_interface* and *os10_vlan* roles to configure the required VLANs.
**5**. Use the *os10_bgp* role to configure BGP unnumbered.
**6**. Use the *os10_vxlan* role to configure VN networks, EVPN and Symmetric IRB functionality.
**7**. Use *os10_vlt* role to configure VLT between leaves prim-vtep1 and sec-vtep1.
**Configurations for VTEP-2**
**1**. Create a host variable file called `host_vars/prim-vtep2.yaml`.
**2**. Create a host variable file called `host_vars/sec-vtep2.yaml`.
**3**. Define the host, credentials, and transport.
**4**. Use *os10_interface* and *os10_vlan* roles to configure the required VLANs.
**5**. Use the *os10_bgp* role to configure BGP unnumbered.
**6**. Use *os10_vxlan* role to configure VN networks, EVPN and Symmetric IRB functionality.
**7**. Use the *os10_vlt* role to configure VLT between leaves prim-vtep2 and sec-vtep2.
**Create and run the playbook**
**1**. Create a playbook called `datacenter.yaml`.
**2**. Run the playbook.
ansible-playbook -i inventory.yaml datacenter.yaml
(c) 2017-2020 Dell Inc. or its subsidiaries. All rights reserved.

View File

@@ -0,0 +1,16 @@
---
- hosts: datacenter
connection: network_cli
collections:
- dellemc.os10
vars:
build_dir: "/home/administrator/ansible/debug"
roles:
- os10_vrf
- os10_interface
- os10_system
- os10_bgp
- os10_lag
- os10_vlan
- os10_vxlan
- os10_vlt

View File

@@ -0,0 +1,210 @@
ansible_ssh_user: xxxxx
ansible_ssh_pass: xxxxx
ansible_network_os: dellemc.os10.os10
os10_system:
hostname: "VLT1-Primary"
os10_bgp:
asn: 100
router_id: 1.1.1.10
neighbor:
- type: ipv4
interface: vlan20
send_community:
- type: extended
state: present
address_family:
- type: l2vpn
activate: true
state: present
admin: up
state: present
- type: ipv4
interface: vlan10
send_community:
- type: extended
state: present
address_family:
- type: l2vpn
activate: true
state: present
admin: up
state: present
- type: ipv4
interface: vlan11
send_community:
- type: extended
state: present
address_family:
- type: l2vpn
activate: true
state: present
admin: up
state: present
ipv4_network: 1.1.1.1/32
redistribute:
- route_type: connected
address_type: ipv4
state: present
state: "present"
os10_interface:
loopback 0:
admin: up
ip_and_mask: 1.1.1.1/32
ethernet 1/1/6:
switchport: False
admin: up
ethernet 1/1/4:
admin: up
switchport: False
ethernet 1/1/5:
admin: up
switchport: False
ethernet 1/1/1:
admin: up
switchport: False
portmode: "trunk"
# ethernet 1/1/2:
ethernet 1/1/3:
admin: up
switchport: False
portmode: "trunk"
port-channel 10:
portmode: "trunk"
admin: up
vlan 10:
suppress_ra: absent
min_ra: 3
max_ra: 4
admin: up
vlan 11:
suppress_ra: absent
min_ra: 3
max_ra: 4
admin: up
vlan 20:
suppress_ra: absent
min_ra: 3
max_ra: 4
admin: up
virtual-network 100:
vrf: "test"
ip_and_mask: "15.1.1.1/24"
ip_virtual_gateway_ip: "15.1.1.254"
admin: up
virtual-network 300:
vrf: "test"
ip_and_mask: "25.1.1.1/24"
ip_virtual_gateway_ip: "25.1.1.254"
admin: up
os10_lag:
port-channel 10:
type: dynamic
channel_members:
# - port: ethernet1/1/5
- port: ethernet1/1/6
mode: active
state: present
os10_vlan:
vlan 10:
tagged_members:
- port: ethernet 1/1/1
state: "present"
access_vlan: "false"
state: "present"
vlan 20:
tagged_members:
# - port: ethernet 1/1/2
- port: ethernet 1/1/3
state: "present"
access_vlan: "false"
state: "present"
os10_vrf:
vrfdetails:
- vrf_name: "test"
state: "present"
os10_vxlan:
anycast_gateway_mac: "00:00:aa:bb:ee:ff"
nve:
source_interface: 0
state: "present"
evpn:
evi:
- id: 100
vni:
id: 100
state: "present"
rd: "auto"
route_target:
- type: "manual"
asn_value: "65530:65532"
route_target_type: "both"
state: "present"
state: "present"
- id: 300
vni:
id: 300
state: "present"
rd: "auto"
route_target:
- type: "auto"
state: "present"
state: "present"
vrf:
- name: "test"
vni: 1000
adv_ipv4:
- type: "connected"
state: "present"
- type: "bgp"
state: "present"
route_target:
- type: "manual"
asn_value: "65530:65534"
route_target_type: "both"
state: "present"
rmac: 00:11:11:11:11:11
dis_rt_asn: "true"
virtual_network:
virtual_net:
- id: 100
vlt_vlan_id: 100
member_interface:
- ifname: "port-channel10"
type: "tagged"
vlanid: 100
state: "present"
vxlan_vni:
id: 100
state: "present"
state: "present"
- id: 300
vlt_vlan_id: 300
member_interface:
- ifname: "port-channel10"
type: "tagged"
vlanid: 300
state: "present"
vxlan_vni:
id: 300
state: "present"
state: "present"
os10_vlt:
domain: 1
destination_type: "ipv4"
peer_routing: True
# discovery_intf: "1/1/3-1/1/4"
discovery_intf: "1/1/4-1/1/5"
vlt_mac: 00:00:00:11:22:33
vlt_peers:
Po 10:
peer_lag: 10
state: "present"

View File

@@ -0,0 +1,194 @@
ansible_ssh_user: xxxxx
ansible_ssh_pass: xxxxx
ansible_network_os: dellemc.os10.os10
os10_system:
hostname: "VLT2-Primary"
os10_bgp:
asn: 300
router_id: 2.2.2.10
ipv4_network: 2.2.2.2/32
redistribute:
- route_type: connected
address_type: ipv4
state: present
state: "present"
neighbor:
- type: ipv4
interface: vlan50
send_community:
- type: extended
state: present
address_family:
- type: l2vpn
activate: true
state: present
admin: up
state: present
- type: ipv4
interface: vlan60
send_community:
- type: extended
state: present
address_family:
- type: l2vpn
activate: true
state: present
admin: up
state: present
- type: ipv4
interface: vlan11
send_community:
- type: extended
state: present
address_family:
- type: l2vpn
activate: true
state: present
admin: up
state: present
os10_interface:
loopback 0:
admin: up
ip_and_mask: 2.2.2.2/32
loopback 10:
admin: up
vrf: "test"
ip_and_mask: 50.1.1.10/32
loopback 20:
admin: up
vrf: "test"
ip_and_mask: 60.1.1.10/32
ethernet 1/1/1:
admin: up
switchport: False
portmode: "trunk"
ethernet 1/1/2:
admin: up
switchport: False
portmode: "trunk"
ethernet 1/1/3:
switchport: False
admin: up
ethernet 1/1/4:
admin: up
switchport: False
ethernet 1/1/5:
switchport: False
vrf: "test"
ip_and_mask: "21.21.21.20/24"
admin: up
vlan 11:
suppress_ra: absent
min_ra: 3
max_ra: 4
admin: up
vlan 50:
suppress_ra: absent
min_ra: 3
max_ra: 4
admin: up
vlan 60:
suppress_ra: absent
min_ra: 3
max_ra: 4
admin: up
virtual-network 200:
vrf: "test"
ip_and_mask: "30.1.1.100/24"
ip_virtual_gateway_ip: "30.1.1.254"
admin: up
virtual-network 300:
vrf: "test"
ip_and_mask: "25.1.1.100/24"
ip_virtual_gateway_ip: "25.1.1.254"
admin: up
os10_vlan:
vlan 50:
tagged_members:
- port: ethernet 1/1/1
state: "present"
access_vlan: "false"
state: "present"
vlan 60:
tagged_members:
- port: ethernet 1/1/2
state: "present"
access_vlan: "false"
state: "present"
os10_vrf:
vrfdetails:
- vrf_name: "test"
state: "present"
os10_vxlan:
anycast_gateway_mac: "00:00:aa:bb:ee:ff"
nve:
source_interface: 0
state: "present"
evpn:
evi:
- id: 200
vni:
id: 200
state: "present"
rd: "auto"
route_target:
- type: "manual"
asn_value: "65530:65533"
route_target_type: "both"
state: "present"
state: "present"
- id: 300
vni:
id: 300
state: "present"
rd: "auto"
route_target:
- type: "auto"
state: "present"
state: "present"
vrf:
- name: "test"
vni: 1000
adv_ipv4:
- type: "connected"
state: "present"
- type: "bgp"
state: "present"
route_target:
- type: "manual"
asn_value: "65530:65534"
route_target_type: "both"
state: "present"
rmac: 00:00:22:22:22:22
dis_rt_asn: "true"
virtual_network:
virtual_net:
- id: 200
vlt_vlan_id: 200
vxlan_vni:
id: 200
state: "present"
state: "present"
- id: 300
vlt_vlan_id: 300
vxlan_vni:
id: 300
state: "present"
state: "present"
os10_vlt:
domain: 1
destination_type: "ipv4"
peer_routing: True
discovery_intf: "1/1/3-1/1/4"
vlt_mac: 00:00:00:44:55:66
vlt_peers:
Po 10:
peer_lag: 10
state: "present"

View File

@@ -0,0 +1,206 @@
ansible_ssh_user: xxxxx
ansible_ssh_pass: xxxxx
ansible_network_os: dellemc.os10.os10
os10_system:
hostname: "VLT1-SEC"
os10_bgp:
asn: 100
router_id: 1.1.1.20
neighbor:
- type: ipv4
interface: vlan40
send_community:
- type: extended
state: present
address_family:
- type: l2vpn
activate: true
state: present
admin: up
state: present
- type: ipv4
interface: vlan30
send_community:
- type: extended
state: present
address_family:
- type: l2vpn
activate: true
state: present
admin: up
state: present
- type: ipv4
interface: vlan11
send_community:
- type: extended
state: present
address_family:
- type: l2vpn
activate: true
state: present
admin: up
state: present
ipv4_network: 1.1.1.1/32
redistribute:
- route_type: connected
address_type: ipv4
state: present
state: "present"
os10_interface:
loopback 0:
admin: up
ip_and_mask: 1.1.1.1/32
ethernet 1/1/3:
switchport: False
admin: up
ethernet 1/1/4:
admin: up
switchport: False
ethernet 1/1/5:
admin: up
switchport: False
ethernet 1/1/1:
admin: up
switchport: False
portmode: "trunk"
ethernet 1/1/2:
admin: up
switchport: False
portmode: "trunk"
port-channel 10:
portmode: "trunk"
admin: up
vlan 30:
suppress_ra: absent
min_ra: 3
max_ra: 4
admin: up
vlan 11:
suppress_ra: absent
min_ra: 3
max_ra: 4
admin: up
vlan 40:
suppress_ra: absent
min_ra: 3
max_ra: 4
admin: up
virtual-network 100:
vrf: "test"
ip_and_mask: "15.1.1.2/24"
ip_virtual_gateway_ip: "15.1.1.254"
admin: up
virtual-network 300:
vrf: "test"
ip_and_mask: "25.1.1.2/24"
ip_virtual_gateway_ip: "25.1.1.254"
admin: up
os10_lag:
port-channel 10:
type: dynamic
channel_members:
- port: ethernet1/1/5
mode: active
state: present
os10_vlan:
vlan 30:
tagged_members:
- port: ethernet 1/1/1
state: "present"
access_vlan: "false"
state: "present"
vlan 40:
tagged_members:
- port: ethernet 1/1/2
state: "present"
access_vlan: "false"
state: "present"
os10_vrf:
vrfdetails:
- vrf_name: "test"
state: "present"
os10_vxlan:
anycast_gateway_mac: "00:00:aa:bb:ee:ff"
nve:
source_interface: 0
state: "present"
evpn:
evi:
- id: 100
vni:
id: 100
state: "present"
rd: "auto"
route_target:
- type: "manual"
asn_value: "65530:65532"
route_target_type: "both"
state: "present"
state: "present"
- id: 300
vni:
id: 300
state: "present"
rd: "auto"
route_target:
- type: "auto"
state: "present"
state: "present"
vrf:
- name: "test"
vni: 1000
adv_ipv4:
- type: "connected"
state: "present"
- type: "bgp"
state: "present"
route_target:
- type: "manual"
asn_value: "65530:65534"
route_target_type: "both"
state: "present"
rmac: 00:11:11:11:11:11
dis_rt_asn: "true"
virtual_network:
virtual_net:
- id: 100
vlt_vlan_id: 100
member_interface:
- ifname: "port-channel10"
type: "tagged"
vlanid: 100
state: "present"
vxlan_vni:
id: 100
state: "present"
state: "present"
- id: 300
vlt_vlan_id: 300
member_interface:
- ifname: "port-channel10"
type: "tagged"
vlanid: 300
state: "present"
vxlan_vni:
id: 300
state: "present"
state: "present"
os10_vlt:
domain: 1
destination_type: "ipv4"
peer_routing: True
discovery_intf: "1/1/3-1/1/4"
vlt_mac: 00:00:00:11:22:33
vlt_peers:
Po 10:
peer_lag: 10
state: "present"

View File

@@ -0,0 +1,200 @@
ansible_ssh_user: xxxxx
ansible_ssh_pass: xxxxx
ansible_network_os: dellemc.os10.os10
os10_system:
hostname: "VLT2-SEC"
os10_bgp:
asn: 300
router_id: 2.2.2.20
neighbor:
- type: ipv4
interface: vlan70
send_community:
- type: extended
state: present
address_family:
- type: l2vpn
activate: true
state: present
admin: up
state: present
- type: ipv4
interface: vlan80
send_community:
- type: extended
state: present
address_family:
- type: l2vpn
activate: true
state: present
admin: up
state: present
- type: ipv4
interface: vlan11
send_community:
- type: extended
state: present
address_family:
- type: l2vpn
activate: true
state: present
admin: up
state: present
vrf:
name: "test"
address_type: ipv4
redistribute:
- route_type: l2vpn
ipv4_network: 2.2.2.2/32
redistribute:
- route_type: connected
address_type: ipv4
state: present
state: "present"
os10_interface:
loopback 0:
admin: up
ip_and_mask: 2.2.2.2/32
loopback 10:
admin: up
vrf: "test"
ip_and_mask: 80.1.1.10/32
loopback 20:
admin: up
vrf: "test"
ip_and_mask: 90.1.1.10/32
ethernet 1/1/1:
admin: up
switchport: False
portmode: "trunk"
ethernet 1/1/2:
admin: up
switchport: False
portmode: "trunk"
ethernet 1/1/3:
switchport: False
admin: up
ethernet 1/1/4:
admin: up
switchport: False
ethernet 1/1/5:
switchport: False
vrf: "test"
ip_and_mask: "20.20.20.20/24"
admin: up
vlan 11:
suppress_ra: absent
min_ra: 3
max_ra: 4
admin: up
vlan 70:
suppress_ra: absent
min_ra: 3
max_ra: 4
admin: up
vlan 80:
suppress_ra: absent
min_ra: 3
max_ra: 4
admin: up
virtual-network 200:
vrf: "test"
ip_and_mask: "30.1.1.101/24"
ip_virtual_gateway_ip: "30.1.1.254"
admin: up
virtual-network 300:
vrf: "test"
ip_and_mask: "25.1.1.101/24"
ip_virtual_gateway_ip: "25.1.1.254"
admin: up
os10_vlan:
vlan 70:
tagged_members:
- port: ethernet 1/1/1
state: "present"
access_vlan: "false"
state: "present"
vlan 80:
tagged_members:
- port: ethernet 1/1/2
state: "present"
access_vlan: "false"
state: "present"
os10_vrf:
vrfdetails:
- vrf_name: "test"
state: "present"
os10_vxlan:
anycast_gateway_mac: "00:00:aa:bb:ee:ff"
nve:
source_interface: 0
state: "present"
evpn:
evi:
- id: 200
vni:
id: 200
state: "present"
rd: "auto"
route_target:
- type: "manual"
asn_value: "65530:65533"
route_target_type: "both"
state: "present"
state: "present"
- id: 300
vni:
id: 300
state: "present"
rd: "auto"
route_target:
- type: "auto"
state: "present"
state: "present"
vrf:
- name: "test"
vni: 1000
adv_ipv4:
- type: "connected"
state: "present"
- type: "bgp"
state: "present"
route_target:
- type: "manual"
asn_value: "65530:65534"
route_target_type: "both"
state: "present"
rmac: 00:00:22:22:22:22
dis_rt_asn: "true"
virtual_network:
virtual_net:
- id: 200
vlt_vlan_id: 200
vxlan_vni:
id: 200
state: "present"
state: "present"
- id: 300
vlt_vlan_id: 300
vxlan_vni:
id: 300
state: "present"
state: "present"
os10_vlt:
domain: 1
destination_type: "ipv4"
peer_routing: True
discovery_intf: "1/1/3-1/1/4"
vlt_mac: 00:00:00:44:55:66
vlt_peers:
Po 10:
peer_lag: 10
state: "present"

View File

@@ -0,0 +1,95 @@
ansible_ssh_user: xxxxx
ansible_ssh_pass: xxxxx
ansible_network_os: dellemc.os10.os10
os10_system:
hostname: "spine1"
os10_bgp:
asn: 200
router_id: 9.9.9.10
neighbor:
- type: "peergroup"
name: "ebgp_session"
send_community:
- type: extended
state: present
address_family:
- type: l2vpn
activate: true
state: present
state: present
- type: ipv4
interface: vlan10
peergroup: ebgp_session
peergroup_type: ebgp
admin: up
state: present
- type: ipv4
interface: vlan30
peergroup: ebgp_session
peergroup_type: ebgp
admin: up
state: present
- type: ipv4
interface: vlan50
peergroup: ebgp_session
peergroup_type: ebgp
admin: up
state: present
- type: ipv4
interface: vlan70
peergroup: ebgp_session
peergroup_type: ebgp
admin: up
state: present
state: "present"
os10_interface:
vlan 10:
suppress_ra: absent
min_ra: 3
max_ra: 4
admin: up
vlan 30:
suppress_ra: absent
min_ra: 3
max_ra: 4
admin: up
vlan 50:
suppress_ra: absent
min_ra: 3
max_ra: 4
admin: up
vlan 70:
suppress_ra: absent
min_ra: 3
max_ra: 4
admin: up
os10_vlan:
vlan 10:
tagged_members:
- port: ethernet 1/1/1
state: "present"
access_vlan: "false"
state: "present"
vlan 30:
tagged_members:
- port: ethernet 1/1/2
state: "present"
access_vlan: "false"
state: "present"
vlan 50:
tagged_members:
- port: ethernet 1/1/3
state: "present"
access_vlan: "false"
state: "present"
vlan 70:
tagged_members:
- port: ethernet 1/1/4
state: "present"
access_vlan: "false"
state: "present"

View File

@@ -0,0 +1,95 @@
ansible_ssh_user: xxxxx
ansible_ssh_pass: xxxxx
ansible_network_os: dellemc.os10.os10
os10_system:
hostname: "spine2"
os10_bgp:
asn: 201
router_id: 9.9.9.20
neighbor:
- type: "peergroup"
name: "ebgp_session"
send_community:
- type: extended
state: present
address_family:
- type: l2vpn
activate: true
state: present
state: present
- type: ipv4
interface: vlan20
peergroup: ebgp_session
peergroup_type: ebgp
admin: up
state: present
- type: ipv4
interface: vlan40
peergroup: ebgp_session
peergroup_type: ebgp
admin: up
state: present
- type: ipv4
interface: vlan60
peergroup: ebgp_session
peergroup_type: ebgp
admin: up
state: present
- type: ipv4
interface: vlan80
peergroup: ebgp_session
peergroup_type: ebgp
admin: up
state: present
state: "present"
os10_interface:
vlan 20:
suppress_ra: absent
min_ra: 3
max_ra: 4
admin: up
vlan 40:
suppress_ra: absent
min_ra: 3
max_ra: 4
admin: up
vlan 60:
suppress_ra: absent
min_ra: 3
max_ra: 4
admin: up
vlan 80:
suppress_ra: absent
min_ra: 3
max_ra: 4
admin: up
os10_vlan:
vlan 20:
tagged_members:
- port: ethernet 1/1/1
state: "present"
access_vlan: "false"
state: "present"
vlan 40:
tagged_members:
- port: ethernet 1/1/2
state: "present"
access_vlan: "false"
state: "present"
vlan 60:
tagged_members:
- port: ethernet 1/1/3
state: "present"
access_vlan: "false"
state: "present"
vlan 80:
tagged_members:
- port: ethernet 1/1/4
state: "present"
access_vlan: "false"
state: "present"

View File

@@ -0,0 +1,20 @@
spine1 ansible_host=101.104.34.141
prim-vtep1 ansible_host=101.104.34.217
sec-vtep1 ansible_host=101.104.34.218
spine2 ansible_host=101.104.34.142
prim-vtep2 ansible_host=101.104.34.219
sec-vtep2 ansible_host=101.104.34.220
[site1]
prim-vtep1
sec-vtep1
spine1
[site2]
prim-vtep2
spine2
sec-vtep2
[datacenter:children]
site1
site2

Binary file not shown.

After

Width:  |  Height:  |  Size: 99 KiB