Xin chào ! Nếu đây là lần đầu tiên bạn đến với diễn đàn, xin vui lòng danh ra một phút bấm vào đây để đăng kí và tham gia thảo luận cùng VnPro.

Announcement

Collapse
No announcement yet.

Lab: Sử dụng Group Variable trong Ansible để tạo loopback cho thiết bi

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Lab: Sử dụng Group Variable trong Ansible để tạo loopback cho thiết bi

    Mô tả:
    • Sơ đồ bài thực hành gồm máy Workstation cài đặt Ansible và 2 router
    • Tạo một thư mục bao gồm 3 file
      • Inventory File ( chứa thông tin host cần cấu hình ).
      • File group_vars ( chứa thông tin các giá trị cần cấu hình ).
      • Playbook ( chứa các bước cấu hình ).
    Yêu cầu kỹ thuật:
    • Học viên thực hiện khai báo thông tin các host
    • Học viên thực hiện viết cấu hình Playbook để cấu hình cho các host sử dụng file giá trị group_vars.
    • Kiểm tra kết quả
    Các bước thực hiện:

    Bước 1 : Khai báo thông tin thiết bị trong file inventory ( ở lab này sử dụng file inventory mặc định của Ansible )


    ( Các câu lệnh đã được giải thích trong bài làm quen với Ansible )

    Bước 2 : Tạo một thư mục với tên group_vars ( đây là tên thự mục mặc định Ansible quy định nên phải khai báo đúng như vậy ), sau đó di chuyển đến thư mục group_vars vừa tạo bằng lệnh cd.

    Tạo file variable cho group Router vừa khai báo với cấu trúc đặt tên file là <group_name>.yml



    Nội dung file variable Router.yml như sau :


    Bước 3: Viết playbook để cấu hình với tên file là interface.yml


    Giải thích :
    • hosts: Router có nghĩa là playbook này sẽ được thực thi trên những host hiện đang có trong group Router được khai báo trong inventory ( bao gồm R1 và R2 )
    • gather_facts: no là dòng mặc định có khi cấu hình thiết bị mạng vì Ansible không thu thập thông tin của thiết bị mạng.
    • Sử dụng vòng lặp with_items để thực hiện lặp các thành phần trong biến loopback đã khai báo trong file variable Router.yml
    • Sử dụng module ios_l3_interface để thực hiện tạo và đặt ip cho loopback với 2 thành phần là name và ipv4
      • name : sẽ truyền giá trị lấy được từ vòng lặp with_items, mà vòng lặp with_items hiện nay đang là biến loopback nên sẽ có 2 thành phần được khai báo là name và ip. {{ item.name }} sẽ trả về giá trị của biến loopback -> name
      • ipv4 : tương tự như name , {{ item.ip }} sẽ trả về giá trị của biến loopback -> ip
    Bước 4: Chạy playbook và kiểm tra.

    Cấu hình ban đầu của Router R1 :



    Cấu hình ban đầu của Router R2 :


    Dùng câu lệnh ansible-playbook interface.yml để thực thi playbook ( ở đây do sử dụng inventory file mặc định của Ansible nên không cần khai báo )


    Đã thực hiện cấu hình thành công trên R1 và R2

    Kiểm tra :

    R1 đã được tạo thêm 2 loopback 1 và loopback 2 với ip như khai báo


    R2 đã được tạo thêm 2 loopback 1 và loopback 2 với ip như khai báo


    Hoàn thành.

    Thank you.
    Nguồn : VNPRO
Working...
X