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ì:
- Thiết lập và cấu hình môi trường
- Thiết lập thông tin xác thực
- Thiết lập hàng tồn kho
- Thiết lập dự án
- Thiết lập mẫu công việc
- 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.
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 đó.
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.
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’.
Nhập “ TÊN ” và “ MÔ TẢ ” của kho, sau đó nhấp vào nút “ LƯU ”.
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.
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’.
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 ”.
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 ‘.
Và bạn sẽ được chuyển sang trang mới và bên dưới là kết quả.
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 “+” .
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.
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.
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 ”.
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.
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.
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.
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 đó.
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 ”.
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
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’.
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