LAB: SỬ DỤNG ANSIBLE CẤU HÌNH TỰ ĐỘNG VXLAN
Sơ đồ mạng:Mô tả:
- Sơ đồ gồm: 2 Switch Nexus 9000, 2 PC kết nối vào mạng Lan, và một PC sử dụng làm Linux Controler. Yêu cầu các thiết bị ping thông với Ansible Server.
- Máy tính của học viên có thể truy cập vào Ansible Server thông qua trình duyệt web.
Thực hiện các công việc sau:
- Thêm thiết bị vào file host là file lưu địa chỉ IP của các thiết bị.
- Tạo playbook YAML để thực hiện cấu hình tự động cho Switch Nexus 9000.
- Chạy các playbook để cấu hình.
- Cấu hình SSH cho Switch Nexus 9000 thứ nhất.
Code:
[FONT=Calibri]NXOS1#configure terminal[/FONT] [FONT=Calibri]NXOS1(config)# feature SSH[/FONT] [FONT=Calibri]NXOS1(config)# feature DHCP[/FONT] [FONT=Calibri]NXOS1(config)# interface e1/1[/FONT] [FONT=Calibri]NXOS1(config-if)# no switchport[/FONT] [FONT=Calibri]NXOS1(config-if)# no shutdown[/FONT] [FONT=Calibri]NXOS1(config-if)# ip address dhcp[/FONT]
- Cấu hình SSH tương tự với NXOS2.
Code:
[FONT=Calibri]NXOS2#configure terminal[/FONT] [FONT=Calibri]NXOS2(config)# feature SSH[/FONT] [FONT=Calibri]NXOS2(config)# feature DHCP[/FONT] [FONT=Calibri]NXOS2(config)# interface e1/1[/FONT] [FONT=Calibri]NXOS2(config-if)# no switchport[/FONT] [FONT=Calibri]NXOS2(config-if)# no shutdown[/FONT] [FONT=Calibri]NXOS2(config-if)# ip address dhcp[/FONT]
- Cài đặt Ansible trên PC Linux Controller:
Code:
[FONT=Calibri]sudo apt-add-repository ppa:ansible/ansible[/FONT] [FONT=Calibri]sudo apt update[/FONT] [FONT=Calibri]sudo apt install ansible[/FONT]
Code:
[FONT=Calibri]Cd /etc/ansible[/FONT] [FONT=Calibri]Sudo nano host[/FONT]
Ta thêm vào File host các thiết bị:
Tham khảo link: https://github.com/tranquocthaidtd/A...er/VxLan/hosts
Giải thích:
- Ansible_host: địa chỉ ip của các thiết bị cần cấu hình thông qua SSH.
- Ansible_connection: network_cli là phương thức kết nối các thiết bị thông qua SSH.
- Ansible_network_os: ios ở đây dùng thiết bị nexus nên khai báo là nxos.
- Ansible_user, ansible_pass: là tài khoản để SSH thiết bị.
Sau khi xong nhấn Ctrl + X, sau đó Y và enter để lưu file lại.
- Tạo file playbook:
Gồm các công việc:
Cấu hình cho NXOS1:
+ Bật các dịch vụ cần thiết cho Switch Nexus 9000: SSH, DHCP, OSPF, Vlan Segment,...
Code:
[FONT=Calibri][FONT=Courier New][COLOR=black]---[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier New][COLOR=black]- name: NXOS1[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier New][COLOR=black] hosts: nxos1[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier New][COLOR=black] gather_facts: no[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier New][COLOR=black] tasks:[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier New][COLOR=black] - name: Enable services[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier New][COLOR=black] nxos_config:[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier New][COLOR=black] lines:[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier New][COLOR=black] - feature ospf[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier New][COLOR=black] - feature vn-segment-vlan-based[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier New][COLOR=black] - feature nv overlay[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier New][COLOR=black] - system jumbomtu 9216[/COLOR][/FONT][/FONT] [FONT=Courier New][COLOR=black] - name: Config ospf[/COLOR][/FONT] [FONT=Courier New][COLOR=black] nxos_config:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] lines:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - router ospf 1[/COLOR][/FONT]
Code:
[FONT=Courier New][COLOR=black]- name: Set ospf for int e1/2[/COLOR][/FONT] [FONT=Courier New][COLOR=black] nxos_config:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] parents:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - int e1/2[/COLOR][/FONT] [FONT=Courier New][COLOR=black] lines:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - no switchport[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - no shutdown[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - ip address 100.1.1.1/30[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - ip router ospf 1 area 0[/COLOR][/FONT]
Code:
[FONT=Courier New][COLOR=black]- name: Create vlan 50[/COLOR][/FONT] [FONT=Courier New][COLOR=black] nxos_config:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] parents:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - vlan 50[/COLOR][/FONT] [FONT=Courier New][COLOR=black] lines:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - vn-segment 5000[/COLOR][/FONT] [FONT=Courier New][COLOR=black]- name: Access vlan 50[/COLOR][/FONT] [FONT=Courier New][COLOR=black] nxos_config:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] parents:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - int e1/3[/COLOR][/FONT] [FONT=Courier New][COLOR=black] lines:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - switchport mode access[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - switchport access vlan 50[/COLOR][/FONT]
Code:
[FONT=Courier New][COLOR=black]- name: Creat NVE[/COLOR][/FONT] [FONT=Courier New][COLOR=black] nxos_config:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] parents:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - int nve 1[/COLOR][/FONT] [FONT=Courier New][COLOR=black] lines:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - no shut[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - source-interface loopback 0[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - member vni 5000[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - ingress-replication protocol static[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - peer-ip 20.20.20.20[/COLOR][/FONT]
Code:
[FONT=Courier New][COLOR=black]- name: Config ospf for looback[/COLOR][/FONT] [FONT=Courier New][COLOR=black] nxos_config:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] parents:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - int loopback 0[/COLOR][/FONT] [FONT=Courier New][COLOR=black] lines:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - ip address 10.10.10.10/32[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - ip router ospf 1 area 0[/COLOR][/FONT]
+ Bật các dịch vụ cần thiết cho Switch Nexus 9000: SSH, DHCP, OSPF, Vlan Segment,...
Code:
[FONT=Calibri][FONT=Courier New][COLOR=black]- name: NXOS2[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier New][COLOR=black] hosts: nxos2[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier New][COLOR=black] gather_facts: no[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier New][COLOR=black] tasks:[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier New][COLOR=black] - name: Enable services[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier New][COLOR=black] nxos_config:[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier New][COLOR=black] lines:[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier New][COLOR=black] - feature ospf[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier New][COLOR=black] - feature vn-segment-vlan-based[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier New][COLOR=black] - feature nv overlay[/COLOR][/FONT][/FONT] [FONT=Calibri][FONT=Courier New][COLOR=black] - system jumbomtu 9216[/COLOR][/FONT][/FONT] [FONT=Courier New][COLOR=black]- name: Config ospf[/COLOR][/FONT] [FONT=Courier New][COLOR=black] nxos_config:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] lines:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - router ospf 1[/COLOR][/FONT]
+ Cấu hình cho interface e1/2 (interface kết nối 2 Switch Nexus) và quảng bá ospf:
Code:
[FONT=Courier New][COLOR=black]- name: Set ospf for int e1/2[/COLOR][/FONT] [FONT=Courier New][COLOR=black] nxos_config:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] parents:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - int e1/2[/COLOR][/FONT] [FONT=Courier New][COLOR=black] lines:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - no switchport[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - no shutdown[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - ip address 100.1.1.2/30[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - ip router ospf 1 area 0[/COLOR][/FONT]
Code:
[FONT=Courier New][COLOR=black]- name: Create vlan 50[/COLOR][/FONT] [FONT=Courier New][COLOR=black] nxos_config:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] parents:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - vlan 50[/COLOR][/FONT] [FONT=Courier New][COLOR=black] lines:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - vn-segment 5000[/COLOR][/FONT] [FONT=Courier New][COLOR=black]- name: Access vlan 50[/COLOR][/FONT] [FONT=Courier New][COLOR=black] nxos_config:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] parents:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - int e1/3[/COLOR][/FONT] [FONT=Courier New][COLOR=black] lines:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - switchport mode access[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - switchport access vlan 50[/COLOR][/FONT]
Code:
[FONT=Courier New][COLOR=black]- name: Creat NVE[/COLOR][/FONT] [FONT=Courier New][COLOR=black] nxos_config:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] parents:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - int nve 1[/COLOR][/FONT] [FONT=Courier New][COLOR=black] lines:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - no shut[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - source-interface loopback 0[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - member vni 5000[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - ingress-replication protocol static[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - peer-ip 10.10.10.10[/COLOR][/FONT]
Code:
[FONT=Courier New][COLOR=black]- name: Config ospf for looback[/COLOR][/FONT] [FONT=Courier New][COLOR=black] nxos_config:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] parents:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - int loopback 0[/COLOR][/FONT] [FONT=Courier New][COLOR=black] lines:[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - ip address 20.20.20.20/32[/COLOR][/FONT] [FONT=Courier New][COLOR=black] - ip router ospf 1 area 0[/COLOR][/FONT]
Tham khảo: https://github.com/tranquocthaidtd/A...VxLan/nxos.yml
Ta có thể tham khảo file cấu hình NXOS mô hình trên theo dạng module :
https://github.com/tranquocthaidtd/A...xos_module.yml
Lab cấu hình VxLan căn bản trên Cisco Nexus: https://www.forum.vnpro.org/forum/cc...An-cisco-nexus
Thực hiện chạy các Playbook bằng câu lệnh sau ansible-playbook nxos.yml
Đã cấu hình trên NXOS1
Đã cấu hình trên NXOS2
Đã cấu hình hoàn tất.
Kiểm tra trên Nexus Switch:
Kiểm tra vxlan data:
Kiểm tra cổng virtual network:
Kiểm tra ping giữa 2 thiết bị trong cùng vlan 50:
Hoàn thành bài lab.
Thank you!