Tutorial

Hướng dẫn AWX Ansible: Cách sử dụng và cấu hình cơ bản

Ansible AWX

AWX là một ứng dụng web nguồn mở cung cấp giao diện người dùng, API REST và công cụ tác vụ cho Ansible. Đây là phiên bản mã nguồn mở của Ansible Tower. AWX cho phép bạn quản lý sổ tay Ansible, kho lưu trữ và lên lịch công việc để chạy bằng giao diện web.

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách sử dụng cơ bản của Ansible AWX. Vì vậy, bạn cần một máy chủ đã được cài đặt Ansible AWX. Chúng tôi đề cập đến một số cấu hình cơ bản của Ansible AWX mà bạn phải biết, chẳng hạn như thông tin xác thực thiết lập, kho lưu trữ, thiết lập và chạy mẫu công việc, v.v. Nếu bạn chưa cài đặt Ansible, vui lòng xem hướng dẫn này:  https://congdonglinux.com /huong-dan-cai-dat-ansible-awx-voi-nginx-tren-ubuntu/.

Điều kiện tiên quyết

  • 2 hoặc 3 máy chủ
    • 10.5.5.20 ansible-awx
    • 10.5.5.21 chanh
  • Hiểu biết cơ bản về Ansible
  • Đặc quyền gốc

Chúng tôi sẽ làm gì:

  1. Thiết lập và cấu hình môi trường
  2. Thiết lập thông tin xác thực
  3. Thiết lập hàng tồn kho
  4. Thiết lập dự án
  5. Thiết lập mẫu công việc
  6. Chạy công việc

Bước 1 – Thiết lập và cấu hình môi trường

Trong hướng dẫn này, chúng ta sẽ triển khai và chạy Playbook Ansible để cài đặt LEMP cơ bản dựa trên bảng điều khiển Ansible AWX.

Ansible AWX

Chúng tôi có hai máy chủ cho chính awx và máy mục tiêu.

10.5.5.20   ansible-awx
10.5.5.21   lemp

Bây giờ chúng ta sẽ triển khai playbook với tư cách người dùng được gọi là ‘hakase’ và sử dụng xác thực SSH dựa trên khóa. Vì vậy, hãy đảm bảo rằng bạn đã thiết lập xác thực dựa trên khóa và người dùng trên máy mục tiêu ‘lemp’.

Kiểm tra bằng lệnh sau từ máy chủ ‘ ansible-awx ‘.

su - hakase
ssh [email protected]

Đảm bảo bạn đăng nhập mà không cần bất kỳ mật khẩu nào.

Bây giờ người dùng ‘hakase’ phải có quyền root không cần mật khẩu để chạy các tác vụ.

Trên máy đích ‘ lemp ‘, chạy lệnh sudo như bên dưới.

su - hakase
sudo su

Đảm bảo rằng bạn đã nhập quyền root mà không cần mật khẩu.

Bây giờ bạn phải cài đặt gói python trên tất cả các máy mục tiêu do Ansible quản lý.

sudo apt install python -y

Bước 2 – Thiết lập thông tin xác thực

Trước hết, chúng ta cần định cấu hình Thông tin xác thực AWX của Ansible. Nó được sử dụng để xác thực khi khởi chạy và chạy các công việc trên các máy chủ được quản lý, đồng bộ hóa với các nguồn tồn kho và nhập dự án.

Theo mặc định, Ansible AWX hỗ trợ nhiều thông tin xác thực, bao gồm máy VM thông qua xác thực SSH, Amazon Web Services, Google Computer Engine, OpenStack, mật khẩu Vault, Kiểm soát nguồn, v.v.

Để thiết lập thông tin xác thực, hãy nhấp vào menu ‘ Credentials ‘ ở bên trái và nhấp vào  nút ‘+’  ở bên phải của nó.

Bây giờ hãy nhập thông tin xác thực ‘ NAME ‘ và ‘ DESCRIPTION ‘, sau đó chỉ định ‘ LOẠI CREDENTIAL ‘ cho ‘ Máy ‘.

Đơn giản, thông tin xác thực ‘Máy’ sẽ cho phép bạn sử dụng xác thực SSH để quản lý máy chủ. Nó hỗ trợ cả xác thực dựa trên mật khẩu và khóa.

Đối với hướng dẫn này, chúng tôi sẽ sử dụng xác thực dựa trên khóa. Vì vậy, hãy nhập tên người dùng và dán khóa riêng cho người dùng đó.

Ansible AWX

Sau đó nhấp vào nút “ LƯU ”.

Kết quả là loại thông tin xác thực Ansible AWX mới ‘Máy’ đã được tạo.

Ansible AWX

Bước 3 – Thiết lập hàng tồn kho

Khoảng không quảng cáo là các nhóm máy chủ lưu trữ được quản lý bởi Ansible AWX. Kho lưu trữ cho phép bạn tạo một nhóm có nhiều máy chủ lưu trữ trên đó. Và việc quản lý các máy chủ khác nhau với các môi trường khác nhau sẽ dễ dàng hơn.

Để quản lý và cung cấp máy chủ, chúng ta phải tạo một nhóm khoảng không quảng cáo mới và sau đó thêm máy chủ lưu trữ vào nhóm khoảng không quảng cáo đó.

Để thêm khoảng không quảng cáo mới, hãy nhấp vào menu ‘ Khoảng không quảng cáo ‘ ở bên trái, sau đó nhấp vào  nút ‘+’  và chọn ‘Hàng tồn kho’.

Ansible AWX

Nhập “ TÊN ” và “ MÔ TẢ ” của kho, sau đó nhấp vào nút “ LƯU ”.

Ansible AWX

Bây giờ hãy nhấp vào tab ‘ HOSTS ‘ và nhấp vào  nút ‘+’  để thêm máy chủ mới.

Ansible AWX

Nhập ‘ HOST NAME ‘, ‘ DESCRIPTION ‘ và ‘ VARIABLES ‘ với cấu hình bổ sung cho địa chỉ IP máy mục tiêu ‘ansible_host: 10.5.5.21’.

Ansible AWX

Bây giờ hãy nhấp vào nút “ LƯU ”.

Tiếp theo, chúng ta cần đảm bảo cấu hình máy chủ bằng cách kiểm tra máy chủ bằng lệnh ping.

Quay lại tab “ HOSTS ”, đánh dấu vào name server của máy chủ của bạn và nhấp vào nút “ RUN COMMANDS ”.

Ansible AWX

Bây giờ hãy chọn ‘ MODULE ‘ được gọi là ‘ ping ‘, nhấp vào nút tìm kiếm bên trong ‘ MACHINE CREDENTIAL ‘ và ‘ SELECT ‘ của riêng bạn, sau đó nhấp vào nút ‘ LAUNCH ‘.

Ansible AWX

Và bạn sẽ được chuyển sang trang mới và bên dưới là kết quả.

Ansible AWX

Một kho lưu trữ mới đã được tạo và máy chủ của máy mục tiêu đã được thêm vào đó.

Bước 4 – Thiết lập dự án

Các dự án được thể hiện dưới dạng Ansible Playbooks trên AWX. Bộ sưu tập Playbook Ansible mà chúng tôi có thể quản lý thông qua thư mục dự án cục bộ hoặc sử dụng hệ thống SCM như Git, Subversion, Mercurial và RedHat Insights.

Để tạo dự án mới, nhấp vào menu “ Projects ” ở bên trái và nhấp vào  nút “+”  .

Ansible AWX

Nhập ‘ TÊN ‘ dự án của bạn và ‘ MÔ TẢ ‘, sau đó chọn ‘ LOẠI SCM ‘ vào ‘ Git ‘ và dán kho lưu trữ playbook của bạn.

Ansible AWX

Bây giờ hãy nhấp vào nút “ SAVE ” và kết quả là một dự án mới cho playbook đã được tạo.

Ansible AWX

Ngoài ra:

Nếu bạn muốn tạo một dự án mới với loại SCM ‘ Manual ‘, bạn có thể tạo một thư mục playbooks mới nằm trong thư mục ‘ /var/lib/awx/projects ‘.

Thư mục ‘/var/lib/awx/projects’ là thư mục dự án mặc định cho Playbook Ansible của bạn nếu bạn đang sử dụng phiên bản docker AWX có bật ‘ project_data_dir ‘.

Bước 5 – Tạo mẫu công việc mới

Mẫu công việc là định nghĩa về việc chạy chính Playbook Ansible. Vì vậy, để tạo mẫu công việc mới hoặc chạy mẫu công việc, chúng tôi cần thêm Playbook Ansible từ ‘Dự án’, ‘Thông tin xác thực’ để xác thực và các máy mục tiêu được lưu trữ trên ‘Hàng tồn kho’.

Đối với hướng dẫn này, chúng tôi đã tạo Dự án, Thông tin xác thực và Khoảng không quảng cáo mới. Vì vậy, chỉ cần nhấp vào menu “ Mẫu ” ở bên trái, sau đó nhấp vào  nút “+”  và chọn tùy chọn “ Mẫu công việc ”.

Ansible AWX

Bây giờ bạn cần gõ “ TÊN ” và “ MÔ TẢ ” của công việc. Sau đó chọn ‘ HÀNG KHO ‘, ‘ CREDENTIAL ‘ và ‘ DỰ ÁN ‘. Và sau đó, chỉ định “ PLAYBOOK ” mà bạn muốn chạy và triển khai.

Ansible AWX

Và kết quả là mẫu công việc mới Ansible AWX đã được tạo.

Bước 6 – Chạy mẫu công việc

Sau khi tạo mẫu công việc mới, chúng tôi sẽ chạy mẫu công việc và triển khai ‘Dự án’ Playbooks tới các máy chủ mục tiêu trên ‘Hàng tồn kho’.

Nhấp vào menu “ Mẫu ” ở bên trái và bạn sẽ nhận được danh sách các mẫu công việc có sẵn.

Ansible AWX

Sau khi công việc hoàn thành, bạn sẽ nhận được dấu hiệu màu xanh lục bên trong tên mẫu công việc.

Ansible AWX

Nhấp vào dấu màu xanh bên trong tên mẫu công việc và bạn sẽ thấy kết quả thực tế của công việc đó.

Ansible AWX

Công việc đã được hoàn thành thành công và máy mục tiêu đã được cài đặt LEMP Stack thông qua Ansible AWX.

Bước 7 – Kiểm tra máy mục tiêu

Kiểm tra tên miền của máy mục tiêu. Cấu hình tên miền được lưu trữ ở cấu hình “ roles/web/vars/main.yml ”.

Ansible AWX

Kiểm tra các dịch vụ Nginx và PHP-FPM bằng lệnh systemctl.

systemctl status nginx
systemctl status php7.2-fpm
Ansible AWX

Kiểm tra cơ sở dữ liệu MySQL trên máy mục tiêu. Cấu hình chi tiết của cơ sở dữ liệu MySQL được lưu trữ tại tệp cấu hình ‘roles/db/vars/main.yml’.

Ansible AWX

Kết quả là LEMP Stack đã được cài đặt trên máy mục tiêu thông qua Ansible AWX.

Tham khảo

Đăng ký liền tay Nhận Ngay Bài Mới

Subscribe ngay

Cám ơn bạn đã đăng ký !

Lỗi đăng ký !

Add Comment

Click here to post a comment

Đăng ký liền tay
Nhận Ngay Bài Mới

Subscribe ngay

Cám ơn bạn đã đăng ký !

Lỗi đăng ký !