Cách cài đặt Ansible AWX trên Debian 10

theanh

Administrator
Nhân viên
Ansible là một công cụ tự động hóa nguồn mở được sử dụng để cung cấp phần mềm, quản lý cấu hình và triển khai ứng dụng. Nó cho phép bạn cài đặt, cấu hình và triển khai ứng dụng trên nhiều hệ thống một cách tự động.

AWX là một ứng dụng dựa trên web được sử dụng để kiểm soát Ansible. Bạn có thể quản lý sổ tay hướng dẫn, kho lưu trữ, Bí mật và các công việc đã lên lịch của Ansible từ giao diện web AWX.

Tính năng
  • Hỗ trợ nhiều đám mây như AWS, Azure và GCP
  • Theo dõi hoạt động của người dùng
  • Tăng hiệu quả & bảo mật
  • Kiểm soát quyền truy cập dựa trên vai trò của người dùng & Xác thực
  • Lên lịch công việc
  • Thông báo tích hợp
Trong bài đăng này, chúng tôi sẽ chỉ cho bạn cách cài đặt AWX trên máy chủ Debian 10.

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

  • Máy chủ chạy Debian 10.
  • Mật khẩu gốc được định cấu hình cho máy chủ.

Bắt đầu​

Đầu tiên, hãy cập nhật tất cả các gói hệ thống lên phiên bản mới nhất bằng lệnh sau:
Mã:
apt-get update -y
Sau khi tất cả các gói được cập nhật, hãy cài đặt các gói cần thiết khác bằng lệnh sau:
Mã:
apt-get install apt-transport-https ca-certificates software-properties-common unzip gnupg2 curl git -y
Sau khi cài đặt tất cả các gói, bạn có thể tiến hành bước tiếp theo.

Cài đặt Ansible​

Tiếp theo, bạn sẽ cần cài đặt Ansible trong hệ thống của mình. Theo mặc định, phiên bản mới nhất của Ansible không có trong kho lưu trữ Debian 10. Vì vậy, bạn sẽ cần thêm kho lưu trữ Ansible vào APT. Bạn có thể thêm nó bằng lệnh sau:
Mã:
echo "deb http://ppa.launchpad.net/ansible/ansible/ubuntu bionic main" | tee /etc/apt/sources.list.d/ansible.list
Sau khi kho lưu trữ được thêm vào, hãy thêm khóa GPG bằng lệnh sau:
Mã:
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367
Tiếp theo, hãy cập nhật kho lưu trữ và cài đặt phiên bản Ansible mới nhất bằng lệnh sau:
Mã:
apt-get update -y
apt-get install ansible -y
Sau khi Ansible được cài đặt, bạn có thể xác minh phiên bản Ansible đã cài đặt bằng lệnh sau:
Mã:
ansible --version
Bạn sẽ nhận được kết quả sau:
Mã:
ansible 2.9.19 config file = /etc/ansible/ansible.cfg configure module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules'] ansible python module location = /usr/lib/python2.7/dist-packages/ansible executable location = /usr/bin/ansible python version = 2.7.16 (mặc định, 10 tháng 10 năm 2019, 22:02:15) [GCC 8.3.0]
Lúc này, Ansible đã được cài đặt trong hệ thống của bạn. Bây giờ bạn có thể tiến hành bước tiếp theo.

Cài đặt Docker và Docker Compose​

Tiếp theo, bạn sẽ cần cài đặt Docker và Docker Compose vào hệ thống của mình. Theo mặc định, phiên bản Docker mới nhất không có trong kho lưu trữ mặc định của Debian 10. Vì vậy, bạn sẽ cần thêm kho lưu trữ Docker CE vào hệ thống của mình. Trước tiên, hãy thêm khóa Docker và kho lưu trữ bằng lệnh sau:
Mã:
curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
Tiếp theo, hãy cập nhật kho lưu trữ và cài đặt Docker CE bằng lệnh sau:
Mã:
apt-get update -y
apt-get install docker-ce -y
Sau khi Docker được cài đặt, hãy xác minh phiên bản Docker bằng lệnh sau:
Mã:
docker --version
Bạn sẽ thấy đầu ra sau:
Mã:
Docker phiên bản 20.10.5, bản dựng 55c4c88
Tiếp theo, bạn sẽ cần cài đặt phiên bản Docker Compose mới nhất vào hệ thống của mình. Bạn có thể tải xuống tệp nhị phân Docker Compose bằng lệnh sau:
Mã:
curl -s https://api.github.com/repos/docker/compose/releases/latest | grep browser_download_url | grep docker-compose-Linux-x86_64 | cut -d '"' -f 4 | wget -qi -
Sau khi tải xuống hoàn tất, hãy đặt quyền thích hợp bằng lệnh sau:
Mã:
chmod +x docker-compose-Linux-x86_64
Tiếp theo, di chuyển tệp nhị phân Docker Compose đến đường dẫn hệ thống bằng lệnh sau:
Mã:
mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
Tiếp theo, hãy xác minh phiên bản Docker Compose bằng lệnh sau:
Mã:
docker-compose version
Bạn sẽ nhận được kết quả sau:
Mã:
docker-compose version 1.28.5, build c4eb3a1fdocker-py version: 4.4.4CPython version: 3.7.10OpenSSL version: OpenSSL 1.1.0l 10 Tháng 9 năm 2019
Lúc này, Docker và Docker Compose đã được cài đặt trong hệ thống của bạn. Bây giờ bạn có thể tiến hành bước tiếp theo.

Cài đặt Node.js và NPM​

Tiếp theo, bạn sẽ cần cài đặt Node.js và NPM trong hệ thống của mình. Bạn có thể cài đặt Node.js và NPM bằng lệnh sau:
Mã:
apt-get install nodejs npm -y
npm install npm --global
Tiếp theo, cài đặt các dependency Python khác bằng lệnh sau:
Mã:
apt-get install python3-pip git pwgen -y
Tiếp theo, cài đặt mô-đun Docker Compose phù hợp với phiên bản Docker Compose của bạn bằng lệnh sau:
Mã:
pip3 install docker-compose==1.28.5
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Lưu ý: Đảm bảo 1.28.5 khớp với phiên bản Docker Compose được cài đặt trong hệ thống của bạn.

Cài đặt AWX​

Tiếp theo, bạn sẽ cần cài đặt AWX trong hệ thống của mình. Trước tiên, hãy tải xuống AWX từ kho lưu trữ Git Hub bằng lệnh sau:
Mã:
wget https://github.com/ansible/awx/archive/17.1.0.zip
Sau khi tải xuống hoàn tất, hãy giải nén tệp đã tải xuống bằng lệnh sau:
Mã:
unzip 17.1.0.zip
Tiếp theo, hãy thay đổi thư mục thành trình cài đặt bằng lệnh sau:
Mã:
cd awx-17.1.0/installer/
Tiếp theo, tạo khóa bí mật bằng cách chạy lệnh sau:
Mã:
pwgen -N 1 -s 30
Bạn sẽ nhận được đầu ra sau:
Mã:
3BgGA8MnM4gKTXV8r7vQhwjjNixO6o
Tiếp theo, hãy chỉnh sửa tệp hàng tồn kho và xác định tên người dùng, mật khẩu quản trị viên và khóa bí mật của bạn key:
Mã:
nano inventory
Thay đổi các dòng sau:
Mã:
admin_user=adminadmin_password=securepasswordsecret_key=3BgGA8MnM4gKTXV8r7vQhwjjNixO6o
Lưu và đóng tệp khi bạn hoàn tất, sau đó cài đặt AWX bằng cách chạy lệnh sau:
Mã:
ansible-playbook -i inventory install.yml
Sau khi AWX được cài đặt thành công, bạn sẽ nhận được kết quả sau:
Mã:
changed: [localhost]TASK [local_docker : Create Docker Compose Configuration] ****************************************************************************************changed: [localhost] = > (item={u'mode': u'0600', u'file': u'environment.sh'})đã thay đổi: [localhost] => (item={u'mode': u'0600', u'file': u'credentials.py'})đã thay đổi: [localhost] => (item={u'mode': u'0600', u'file': u'docker-compose.yml'})đã thay đổi: [localhost] => (item={u'mode': u'0600', u'file': u'nginx.conf'})đã thay đổi: [localhost] => (item={u'mode': u'0664', u'file': u'redis.conf'})NHIỆM VỤ [local_docker : Hiển thị tệp SECRET_KEY] ****************************************************************************************************đã thay đổi: [localhost]NHIỆM VỤ [local_docker : Xóa các vùng chứa AWX trước khi di chuyển postgres để vùng chứa postgres cũ không được sử dụng] *************************ok: [localhost]NHIỆM VỤ [local_docker : Chạy di chuyển trong vùng chứa tác vụ] ****************************************************************************************đã thay đổi: [localhost]NHIỆM VỤ [local_docker : Khởi động các vùng chứa] *************************************************************************************************đã thay đổi: [localhost]NHIỆM VỤ [local_docker: Cập nhật CA trust trong container awx_web] ***************************************************************************************đã thay đổi: [localhost]NHIỆM VỤ [local_docker: Cập nhật CA trust trong container awx_task] ****************************************************************************************đã thay đổi: [localhost]NHIỆM VỤ [local_docker: Đợi tập lệnh khởi chạy để tạo người dùng] *******************************************************************************************ok: [localhost]NHIỆM VỤ [local_docker: Tạo dữ liệu tải trước] **********************************************************************************************************đã thay đổi: [localhost]TÓM TẮT CHƠI ******************************************************************************************************************************************localhost : ok=21 changed=12 unreachable=0 failed=0 skipped=73 rescue=0 ignored=1
Lúc này, AWX đã được cài đặt trong hệ thống của bạn. Bây giờ bạn có thể tiếp tục truy cập vào giao diện người dùng web AWX.

Truy cập Ansible AWX​

Bây giờ, hãy mở trình duyệt web của bạn và truy cập vào giao diện người dùng web Ansible AWX bằng URL . Bạn sẽ được chuyển hướng đến trang đăng nhập AWX:



Cung cấp tên người dùng, mật khẩu quản trị viên của bạn và nhấp vào nút Đăng nhập vào. Bạn sẽ thấy bảng điều khiển Ansible AWX ở trang sau:


Kết luận​

Xin chúc mừng! Bạn đã cài đặt thành công Ansible AWX trên máy chủ Debian 10. Bây giờ bạn có thể dễ dàng quản lý playbook, inventory và jobs của Ansible từ bảng điều khiển AWX. Hãy thoải mái hỏi tôi nếu bạn có bất kỳ câu hỏi nào.
 
Back
Bên trên