Khái niệm về cung cấp máy chủ
Cung cấp máy chủ là quá trình chuẩn bị một máy chủ với một hệ thống phù hợp, dữ liệu và phần mềm để máy chủ sẵn sàng cho các hoạt động mạng.
Các nhiệm vụ cơ bản trong quá trình cung cấp máy chủ:
Bạn đang xem: Server Provisioning
- Chọn một máy chủ từ danh sách các máy chủ khả dụng.
- Cài đặt các phần mềm phù hợp, bao gồm hệ điều hành, driver phần cứng, phần mềm trung gian và ứng dụng.
- Tùy chỉnh và cấu hình hệ thống và phần mềm để tạo ra một hình ảnh khởi động của máy chủ, sau đó thay đổi các thông số như địa chỉ IP, điểm đăng nhập IP để kết nối mạng và lưu trữ tài nguyên và kiểm tra hoạt động của hệ thống.
Với việc kiểm tra hệ thống này, bạn đảm bảo tuân thủ một tiêu chuẩn quốc tế về bảo mật thông tin (OVAL) với số lượng lỗ hỏng giới hạn, đảm bảo sự an toàn và khả năng nâng cấp với các bản vá.
Sau đó, khởi động lại hệ thống và tải phần mềm mới, máy chủ đã sẵn sàng hoạt động. Các nhà cung cấp dịch vụ mạng (ISP) hoặc trung tâm điều khiển mạng thường thực hiện các tác vụ này để cung cấp tập hợp các tham số đầu vào tốt nhất thay vì cài đặt thủ công.
Có nhiều phần mềm sẵn có để tạo và cung cấp một máy chủ với các dịch vụ đầy đủ cùng với các thiết bị đầu cuối cho người dùng. Ví dụ: BMC Bladelogic Server Automation, HP Server Automation, IBM Tivoli Provisioning Manager, Redhat Kickstart, xCAT, HP Insight CMU, vv Các phần mềm trung gian và ứng dụng có thể được cài đặt đồng thời với hệ điều hành hoặc sau đó bằng cách sử dụng công cụ quản lý dịch vụ tự động.
Trong cloud computing, máy chủ có thể cung cấp thông qua giao diện web hoặc phần mềm đặc biệt. Tận dụng những lợi ích của cloud computing, quá trình này có thể được thực hiện một cách dễ dàng và nhanh chóng. Phần mềm giám sát sẽ tự động cung cấp tài nguyên khi tài nguyên hiện có quá tải, và thay đổi các thông số phù hợp để hệ thống vẫn hoạt động trơn tru.
Giới thiệu về Ansible
Ansible là một công cụ đơn giản và toàn diện được viết bằng Python để tự động hóa việc cung cấp máy chủ trong môi trường đám mây. Nó hoạt động thông qua kết nối SSH mà không yêu cầu cài đặt bất kỳ trình quản lý nào trên máy chủ.
Các cấu hình được mô tả trong các file YAML gọi là “playbooks”, cung cấp các nhiệm vụ và xử lý sự kiện. Một nhiệm vụ ví dụ có thể cập nhật các file cấu hình hoặc cơ sở dữ liệu của máy chủ, trong khi một xử lý sự kiện có thể khởi động lại cơ sở dữ liệu sau khi nhiệm vụ hoàn thành.
Một số ứng dụng của Ansible
-
Ansible thường được sử dụng trong kiến trúc push-based
Máy chủ điều khiển (control host) là máy chủ đại diện để khởi tạo quá trình Ansible. Ansible sử dụng tệp danh sách máy chủ – nơi liệt kê các địa chỉ máy chủ được nhóm lại. Trong ví dụ trên, hai nhóm là máy chủ DB và máy chủ Web, vì vậy tệp danh sách máy chủ sẽ liệt kê các địa chỉ IP và tên máy chủ theo các nhóm này.
Mỗi playbook sẽ nhắm vào một hoặc nhiều nhóm từ danh sách máy chủ. Ví dụ như mô tả ở trên, có một playbook cho cung cấp máy chủ cơ sở dữ liệu và một playbook cho máy chủ web, định nghĩa của các playbook có thể được đưa ra và từ đó một số thành phần chung có thể được sử dụng để định nghĩa một playbook thứ ba, phục vụ như một phần chung cho cả máy chủ cơ sở dữ liệu và máy chủ web.
-
Ansible cũng có thể sử dụng trong mô hình pull-based
Xem thêm : Opera là gì? Lịch sử hình thành và phát triển của opera từ trước tới nay
Mô hình push-based không phải lúc nào cũng có thể triển khai được, có nhiều khó khăn tồn tại như các rào cản mạng, kết nối SSH và các vấn đề về mở rộng và tự động hóa. Trong những tình huống như vậy, Ansible vẫn cung cấp một giải pháp, là sử dụng ansibile-pull.
- Mỗi máy chủ đã được cài đặt Ansible.
- Các tệp cấu hình được lưu trữ trên một repo GIT.
- ansibile-pull nginx repo này một nhánh hoặc tag cụ thể.
- ansibile-pull thực hiện một playbook cụ thể.
- Sử dụng cronjob để tự động hóa quy trình và đẩy tất cả các thay đổi cấu hình lên repo.
Kết luận
Tự động hóa quá trình cấu hình máy chủ trở nên dễ dàng với Ansible. Việc có thể cấu hình một tập hợp máy chủ hoặc một máy chủ duy nhất với một quy trình có thể tái tạo được là vô giá.
Hơn nữa, Ansible dễ tiếp cận và có thể hoạt động tốt với các mô hình push-based và pull-based chỉ với một số điều chỉnh nhỏ. Dù chúng ta mới chỉ khám phá những gì có thể làm với Ansible, sự đơn giản và dễ sử dụng của nó vẫn thuyết phục và hữu ích khi cần cung cấp một hoặc nhiều máy chủ.
Tài liệu tham khảo
https://en.wikipedia.org/wiki/Provisioning_(disambiguation)
http://www.ansible.com/how-ansible-works
https://en.wikipedia.org/wiki/Push-pull_strategy
https://julien.ponge.org/blog/scalable-and-understandable-provisioning-with-ansible-and-vagrant/
Nguồn: https://stamboom-boden.com
Danh mục: Là Gì