Cách triển khai một container với Ansible

Cách triển khai một container với Ansible Tìm hiểu cách triển khai container Docker bằng cách sử dụng Playbook Ansible.

Có rất nhiều cách để triển khai container. Bạn có thể sử dụng Docker, Kubernetes, MicroK8s, AWS, Google Cloud Platform. danh sách đi và về. Nhưng nếu bạn là quản trị viên Ansible, bạn có một phương pháp khác. Điều đó đúng, với một Playbook Ansible, bạn có thể triển khai một Docker container.

Và đó, các bạn của tôi, chính xác là những gì tôi sẽ chỉ cho bạn cách làm. Tôi sẽ chỉ trình diễn với hai máy chủ, cả hai máy chủ sẽ chạy Ubuntu Server 18.04. Bạn có thể kiểm tra điều này với bao nhiêu máy chủ tùy thích, nhưng tôi thích giữ nó đơn giản ở cấp độ này.

Đám mây lai: Hướng dẫn cho ưu điểm CNTT (tải xuống TechRepublic)

Những gì bạn cần

Để thực hiện công việc này, bạn sẽ cần những điều sau đây:

  • Ít nhất hai máy chủ (một trong số đó có Ansible), được cài đặt và chạy
  • Một người dùng có quyền sudo

Điều quan trọng là trước tiên bạn phải thực hiện hướng dẫn Cách cài đặt Ansible trên Ubuntu Server 18.04, nếu không điều này sẽ không hoạt động. Và đảm bảo bạn làm theo các bước để thiết lập xác thực khóa SSH.

Cách cài đặt Docker

Bởi vì chúng tôi sẽ triển khai một Docker container, chúng tôi cần Docker được cài đặt trên mọi máy. Điều này có thể được thực hiện bằng cách mở một cửa sổ đầu cuối và ban hành lệnh sau:

 sudo apt-get cài đặt docker.io python3-docker -y 

Sau khi cài đặt hoàn tất, hãy bắt đầu và kích hoạt dịch vụ docker bằng các lệnh:

 sudo systemctl bắt đầu docker sudo systemctl cho phép docker 

Cuối cùng, thêm người dùng của bạn vào nhóm docker bằng lệnh:

 sudo usermod -aG docker $ USER 

Đăng xuất và đăng nhập lại để những thay đổi sẽ có hiệu lực.

Cách tạo cấu trúc thư mục và tập tin

Trên máy chủ Ansible, tạo một thư mục mới bằng lệnh sau:

 mkdir docker_project 

Thay đổi vào thư mục docker_project bằng lệnh cd docker_project và tạo một tệp lưu trữ bằng lệnh:

 máy chủ nano 

Trong tệp đó, thêm các nội dung sau:

 máy chủ web SERVER_IP máy chủ web: vars ansible_python_interpreter = / usr / bin / python3 

Trong đó SERVER_IP là địa chỉ IP của (các) máy chủ khác. Lưu và đóng tập tin.

Chúng tôi sẽ tạo ra một cuốn sách sẽ làm như sau:

  • Cài đặt năng khiếu
  • Cài đặt một số phụ thuộc
  • Thêm kho lưu trữ docker
  • Cài đặt docker-ce
  • Cài đặt mô-đun Python docker
  • Kéo hình ảnh Ubuntu chính thức
  • Tạo bốn thùng chứa dựa trên hình ảnh Ubuntu

Ban hành lệnh nano ubfox_playbook.yml . Trong tệp mới đó, dán đoạn sau (đảm bảo định dạng theo định dạng YAML tiêu chuẩn):

 --- : Cài đặt các gói hệ thống bắt buộc apt: name = {{item}} state = update_cache = yes loop: 'apt-Transport-https', 'ca-cert', 'curl', 'software-property-common', ' python3-pip ', ' virtualenv ', ' python3-setuptools ' - tên: Thêm Docker GPG apt Key apt_key: url: https://doad.docker.com/linux/ub Ubuntu / gpg state: Present - name: Add Docker Kho lưu trữ apt_Vposeective: repo: deb https://doad.docker.com/linux/ub Ubuntu trạng thái ổn định xenial: Present - name: Cập nhật apt và cài đặt docker-ce apt: update_cache = yes name = docker-ce state = mới nhất - name: Cài đặt Mô-đun Docker cho Python pip: name: docker - name: Kéo mặc định Docker hình ảnh docker_image: name: "{{default_container_image}}" source: pull - name: Tạo mặc định c ontainers docker_container: name: "{{default_container_name}} {{item}}" image: "{{default_container_image}}" lệnh: "{{default_container_command}}" trạng thái: hiện tại với {{} 

Lưu và đóng tập tin. Một khi bạn cảm thấy cách thức hoạt động của cuốn sách này, bạn cũng có thể sửa đổi nó để phù hợp với nhu cầu của bạn. Hãy coi đây là một mẫu vững chắc để triển khai các container từ Ansible.

Làm thế nào để chạy Playbook Ansible

Bây giờ chúng ta có thể chạy Playbook Ansible của chúng tôi. Để làm điều này, ban hành lệnh:

 ansible-playbook -i lưu trữ ubfox_playbook.yml --ask-trở thành vượt qua 

Bạn sẽ được nhắc nhập mật khẩu sudo cho người dùng từ xa. Nhập nó và nhấn Enter. Playbook sau đó sẽ thực hiện mà không thất bại. Khi playbook hoàn thành, bạn sẽ thấy đầu ra biểu thị thành công ( Hình A ).

Hình A

Our playbook has succeeded.

" data-credit="" rel="noopener noreferrer nofollow">

Playbook của chúng tôi đã thành công.

Nếu bạn đi đến một trong các máy chủ từ xa của mình và đưa ra lệnh docker ps -a, bạn sẽ thấy tất cả bốn thùng chứa Ubuntu đang chạy ( Hình B ).

Hình B

Our containers are running.

" data-credit="" rel="noopener noreferrer nofollow">

Container của chúng tôi đang chạy.

Và đó là nó. Bây giờ bạn đã biết cách triển khai một Docker container bằng một Playbook Ansible. Đây chắc chắn không phải là con đường dễ nhất, nhưng nó giúp bạn có thể thực sự sáng tạo với cả container và Ansible.

Đám mây và mọi thứ như một bản tin dịch vụ

Đây là nguồn tài nguyên mới nhất của bạn về AWS, Microsoft Azure, Google Cloud Platform, XaaS, bảo mật đám mây và nhiều hơn nữa. Thứ hai được giao

Đăng ký hôm nay

© Copyright 2020 | mobilegn.com