Cách chạy bản cập nhật apt-get trong Ansible

How Run An Apt Get Update Ansible



Trong quy trình làm việc hàng ngày của mình, tôi làm việc với nhiều hệ thống Linux từ xa, hầu hết trong số đó đều dựa trên Debian.

Tôi có thể công khai với bạn rằng đôi khi, việc SSH vào tất cả các máy rất mệt mỏi, thực hiện cập nhật apt-get, sau đó kiểm tra xem có bất kỳ bản cập nhật nào không và cài đặt chúng. Ngay cả với đăng nhập SSH không cần mật khẩu, nó vẫn mất rất nhiều thời gian.







Sau khi liên tục tự hỏi bản thân, làm thế nào tôi có thể tự động hóa quá trình này? Tôi đã tìm thấy Ansible!



Đối với hướng dẫn này, tôi sẽ chỉ cho bạn cách sử dụng công cụ tự động hóa mạnh mẽ này để cập nhật tất cả các hệ thống từ xa của bạn bằng cách sử dụng apt. Luôn cập nhật và áp dụng tất cả các bản vá cho hệ thống của bạn sẽ giúp bảo mật hệ thống của bạn.



Ansible là gì?

Ansible là một công cụ tự động hóa mạnh mẽ cho phép bạn định cấu hình và quản lý hệ thống từ xa và tự động. Ngoài ra, nó cung cấp các tính năng hấp dẫn như cài đặt phần mềm từ xa, khôi phục trong trường hợp có lỗi, sao lưu, tải xuống từ xa và nhiều tính năng khác.





Ansible cũng rất dễ sử dụng. Nó sử dụng các tệp YAML dễ viết, dễ đọc và mức độ bảo mật cao vì nó sử dụng SSH để đăng nhập và quản lý hệ thống.

Quản lý nhiều hệ thống từ một công cụ duy nhất còn hơn cả chiến thắng và bất kỳ quản trị viên hệ thống nào cũng nên quen thuộc nếu chưa sử dụng Ansible.



Cài đặt Ansible

Với những lời khen ngợi hết lời của Ansible, chúng ta hãy xem cách cài đặt Ansible trên máy cục bộ của chúng tôi để quản lý các máy chủ từ xa.

Đối với hướng dẫn này, tôi sẽ sử dụng Ubuntu 20.10 làm máy cục bộ của mình. Để tìm hiểu cách cài đặt Ansible trên các hệ thống khác, hãy xem tài liệu.

Trên Ubuntu, sử dụng các lệnh:

cập nhật apt sudo
sudo apt cài đặt phần mềm-thuộc tính-chung
sudo add-apt-repository - có - cập nhật ppa: ansible / ansible
sudo apt cài đặt ansible

Ansible Thêm máy chủ

Nếu bạn chưa quen với Ansible, bước đầu tiên là xây dựng danh mục các máy từ xa mà bạn muốn tự động hóa. Bạn có thể làm điều này bằng cách chỉnh sửa / etc / ansible / hosts.

Để thêm máy chủ Debian, hãy nhập các mục nhập dưới dạng:

[debian]
192.168.0.13

Bạn có thể chuyển địa chỉ IP của máy chủ từ xa hoặc sử dụng tên máy chủ của máy.

Khi chúng tôi có danh sách các máy chủ để quản lý trong tệp cấu hình, chúng tôi có thể tiến hành và tự động hóa các bản cập nhật.

Cập nhật bằng cách sử dụng mô-đun apt

Để cập nhật và quản lý các gói từ xa trên các máy chạy Debian, chúng tôi sử dụng mô-đun apt do Ansible cung cấp. Mô-đun apt cho phép chúng tôi quản lý các gói apt với các cấu hình khác.

Cập nhật bộ nhớ cache của kho lưu trữ
Để cập nhật bộ nhớ cache của kho lưu trữ bằng Ansible, chúng tôi có thể sử dụng sách phát như được cung cấp bên dưới:

---
- máy chủ: debian
trở thành: vâng
trở thành_method: sudo
nhiệm vụ:
- name: 'Cập nhật bộ nhớ cache của Kho lưu trữ'
đúng cách:
update_cache: true
cache_valid_time: 3600
force_apt_get: true

Lưu tệp và chạy bằng lệnh dưới dạng:

ansible-playbook --user = debian apt.yaml

Thao tác này sẽ chạy playbook và thực hiện các tác vụ được chỉ định. Đầu ra như hình dưới đây:

Trong playbook Ansible, chúng tôi bắt đầu bằng cách chỉ định các máy chủ. Trong trường hợp này, chúng tôi chỉ muốn các máy chủ Debian.

Tiếp theo, chúng tôi đặt nó trở thành true, cho phép người dùng nâng cao các đặc quyền bằng cách sử dụng sudo như được chỉ định trong going_method.

Cuối cùng, chúng tôi thiết lập các nhiệm vụ để cập nhật bộ nhớ cache của kho lưu trữ. Chúng tôi cũng đặt cache_valid_time là 3600 để làm mới bộ nhớ cache nếu nó cũ hơn thời gian đã nói.

GHI CHÚ: Sử dụng force_apt-get thay vì aptitude.

Nâng cấp tất cả các gói
Chúng tôi cũng có thể cập nhật tất cả các gói trong hệ thống tương ứng với lệnh:

sudo apt-get dist-upgrade

Để thực hiện việc này bằng cách sử dụng Ansible playbook, chúng tôi thêm tệp yaml dưới dạng:

---
- máy chủ: tất cả
trở thành: vâng
trở thành_method: sudo
nhiệm vụ:
- name: 'Cập nhật bộ nhớ cache & Cập nhật toàn bộ hệ thống'
đúng cách:
update_cache: true
nâng cấp: dist
cache_valid_time: 3600
force_apt_get: true

Tương tự, chạy Ansible Playbook ở trên, như được hiển thị trong lệnh đầu tiên.

Phần kết luận

Trong hướng dẫn này, chúng ta đã nhanh chóng tìm hiểu Ansible là gì, nó cung cấp những gì và cách chúng ta có thể sử dụng các mô-đun của nó để thực hiện cập nhật hệ thống trên hệ thống dựa trên Debian.

Cảm ơn bạn & Chúc bạn tự động hóa vui vẻ