Dell Technologies đã cung cấp Ansible Collections thông qua Ansible Galaxy và GitHub trong một thời gian. Điều này đã đơn giản hóa đáng kể việc thiết lập cấu hình Ansible để playbook có thể chạy nhanh. Tuy nhiên, trong một số môi trường, nhu cầu phải năng động hơn nữa có nghĩa là ngay cả quá trình này cũng có thể gây ra thách thức. Đây là nơi môi trường thực thi ansible có thể giúp ích.
Môi trường thực thi Ansible là môi trường chứa độc lập cung cấp môi trường có thể tái tạo dưới dạng hình ảnh chứa có thể chạy khi cần, giữ cấu hình ở mức tối thiểu. Chúng cũng đảm bảo rằng môi trường tự động hóa lưu trữ và các phụ thuộc của nó có thể được khởi động khi cần, biết rằng các môi trường này đã được kiểm tra và không có xung đột cấu hình với các môi trường tự động hóa khác. Sau đây là phần giới thiệu tuyệt vời về môi trường thực thi Ansible .
Việc tạo môi trường thực thi được thực hiện bằng Python với một gói Python tùy chọn có tên là Ansible-builder giúp người dùng tạo môi trường thực thi Ansible của riêng họ được đóng gói dưới dạng container. Một tổ chức có thể xây dựng kho lưu trữ hình ảnh môi trường thực thi để sử dụng với các thư viện playbook của họ từ nhiều nhà cung cấp khác nhau, để giảm độ phức tạp và loại bỏ mọi xung đột phụ thuộc. Các tổ chức thậm chí có thể duy trì các phiên bản môi trường thực thi cho hoạt động tự động hóa của họ đối với các cấu hình khác nhau của cùng một sản phẩm, đảm bảo rằng những gì đã được thử nghiệm và biết là hoạt động sẽ luôn hoạt động.
Để tạo môi trường thực thi, bạn sẽ cần tạo ba tệp:
- môi trường thực thi.yml
- yêu cầu.txt
- môi trường.yml
Nội dung và mục đích của các tập tin này như sau.
môi trường thực thi.yml
execution-environment.yml – Tệp YAML này mô tả thiết lập và các phụ thuộc từ Ansible Galaxy. Nó cũng chỉ ra bất kỳ yêu cầu Python nào trong requirements.txt. Sau đây là một ví dụ về nội dung của nó:
# mẫu môi trường thực thi.yml --- Phiên bản: 1 build_arg_defaults: EE_BASE_IMAGE: 'quay.io/Ansible/Ansible-runner:mới nhất' Ansible_config: 'Ansible.cfg' sự phụ thuộc: thiên hà: requirements.yml python: requirements.txt
Dưới đây là ví dụ về tệp requirements.yml.
# Yêu cầu mẫu.yml bộ sưu tập: - tên: dellemc.powermax Phiên bản: 1.6
yêu cầu.txt
Sau đây là mẫu tệp requirements.txt:
# Mẫu requirements.txt PyU4V==9.2.1.4
Sau khi các tệp requirements.yml, requirements.txt và execution-environment.yml được tạo, bạn có thể tiếp tục tạo vùng chứa môi trường thực thi.
Để tạo vùng chứa, chỉ cần chạy lệnh như sau. (Lưu ý rằng thẻ có thể là bất kỳ thứ gì có ý nghĩa trong môi trường của bạn.)
ansible-builder xây dựng –tag dellemc_ee_powermax1.6 –container-runtime podman
Sau khi môi trường thực thi đã được tạo, hãy chạy lệnh build cho podman hoặc Docker để tạo ảnh container môi trường thực thi. Bạn phải chạy lệnh này từ thư mục ngữ cảnh được tạo bởi lệnh Ansible-builder.
Sau khi hình ảnh được xây dựng và lưu trong sổ đăng ký cục bộ, bạn có thể chạy container và xác minh rằng mọi thứ đã được cài đặt như mong đợi.
Hình ảnh trên cho thấy môi trường thực thi Ansible đang chạy với một terminal tương tác. Lệnh pip list được thực thi trong terminal cho thấy tất cả các phụ thuộc Python được cài đặt như mong đợi. Lệnh ansible-galaxy list cho thấy các bộ sưu tập được cài đặt.
Môi trường này đã sẵn sàng để thực thi playbook hoặc được phân phối tới một sổ đăng ký chứa để sử dụng khi cần.
Tải lên sổ đăng ký container như quay.io sẽ giúp container có sẵn cho bất kỳ ai trong tổ chức của bạn khi cần hoặc sẽ cung cấp cho các công cụ như Ansible Automation Controller.
Bài viết mới cập nhật
Hiểu về các tùy chọn triển khai InsightIQ 5.0.0: Đơn giản so với mở rộng quy mô
Tổng quan InsightIQ 5.0.0 giới thiệu hai tùy chọn triển khai ...
Làm chủ việc giám sát và báo cáo với InsightIQ 5.0.0
Tổng quan Trong bối cảnh phức tạp của quản lý dữ ...
Cảnh báo trong IIQ 5.0.0 – Phần II
Bài đăng trước của tôi đã giới thiệu một trong những ...
Cảnh báo trong IIQ 5.0.0 – Phần I
Alert là tính năng mới được giới thiệu cùng với bản phát ...