Tóm lược
- Ansible là một công cụ DevOps là sự thay thế mạnh mẽ cho PowerShell
- RunDeck như một giao diện đồ họa rất tiện dụng
- Một số người chạy RunDeck + Ansible cùng nhau
cụm
Để gửi các lệnh từ xa đến một số máy chủ, đối với người mới bắt đầu, tôi sẽ khuyên bạn nên phân cụm
Để cài đặt clusterssh
trong Debian:
apt-get install clusterssh
Một hướng dẫn cụm khác :
ClusterSSH là một trình bao bọc Tk / Perl xung quanh các công cụ Linux tiêu chuẩn như XTerm và SSH. Như vậy, nó sẽ chạy trên bất kỳ HĐH tương thích POSIX nào có thư viện tồn tại - Tôi đã chạy nó trên Linux, Solaris và Mac OS X. Nó yêu cầu các thư viện Perl Tk (perl-tk trên Debian hoặc Ubuntu) và X11 :: Giao thức (libx11-Protocol-perl trên Debian hoặc Ubuntu), ngoài xterm và OpenSSH.
Ansible
Đối với một khung từ xa để quản trị nhiều hệ thống, Ansible là một thay thế rất thú vị cho Puppet. Nó gọn gàng hơn và không cần các tác nhân từ xa chuyên dụng vì nó hoạt động trên SSH (nó cũng đã được RedHat mua)
Playbooks phức tạp hơn các tùy chọn dòng lệnh.
Tuy nhiên, để bắt đầu sử dụng Ansible, bạn cần cài đặt đơn giản và thiết lập tệp văn bản danh sách khách hàng.
Sau đó, để chạy một lệnh trong tất cả các máy chủ, đơn giản như thực hiện:
ansible all -m command -a "uptime"
Đầu ra cũng được định dạng và phân tách rất độc đáo cho mỗi quy tắc / máy chủ, và trong khi chạy nó trong nền có thể được chuyển hướng đến một tệp và được tư vấn sau.
Bạn có thể bắt đầu với các quy tắc đơn giản và việc sử dụng Ansible sẽ trở nên thú vị hơn khi bạn phát triển trong Linux và cấu trúc hạ tầng của bạn trở nên lớn hơn. Vì vậy, nó sẽ làm được nhiều hơn PowerShell.
Ví dụ, một Playbook rất đơn giản để nâng cấp các máy chủ Linux mà tôi đã viết:
---
- hosts: all
become: yes
gather_facts: False
tasks:
- name: updates a server
apt: update_cache=yes
- name: upgrade a server
apt: upgrade=full
Nó cũng có nhiều mô-đun được xác định cho phép bạn dễ dàng viết các chính sách toàn diện.
Chỉ số mô-đun - Tài liệu Ansible
Nó cũng đã có một kho lưu trữ chính thức / mạng xã hội chính thức thú vị để tìm kiếm các chính sách có thể thực hiện được của cộng đồng. Thiên hà ansible
Ansible cũng được sử dụng rộng rãi và bạn sẽ tìm thấy rất nhiều dự án trong github, như dự án này từ chính tôi để thiết lập FreeRadius .
Mặc dù Ansible là một khung mã nguồn mở miễn phí, nó cũng có giao diện bảng điều khiển web trả phí, Ansible Tower mặc dù việc cấp phép khá tốn kém.
Ngày nay, sau khi RedHat mua nó, tháp cũng có phiên bản mã nguồn mở được gọi là AWX .
Như một phần thưởng, Ansible cũng có khả năng quản trị các máy chủ Windows, mặc dù tôi chưa bao giờ sử dụng nó cho việc đó.
Nó cũng có khả năng quản lý các thiết bị mạng (bộ định tuyến, chuyển mạch và tường lửa), làm cho nó trở thành một giải pháp rất thú vị như một giải pháp chìa khóa tự động hóa.
Cách cài đặt Ansible
Rundeck
Tuy nhiên, một lần nữa, để một khung từ xa dễ sử dụng hơn, nhưng không mạnh như Ansible, tôi khuyên bạn nên dùng Rundeck .
Đây là một giao diện đồ họa đăng nhập nhiều người dùng / đăng nhập rất mạnh mẽ, nơi bạn có thể tự động hóa nhiều công việc hàng ngày thông thường của mình và thậm chí cung cấp các chế độ xem xuống cho người dùng hệ thống hoặc người trợ giúp.
Khi chạy các lệnh, nó cũng cung cấp cho bạn các cửa sổ với đầu ra được chia nhỏ theo máy chủ / tác vụ.
Nó có thể chạy nhiều công việc trong nền một cách liền mạch và cho phép bạn xem báo cáo và đầu ra sau này.
Cách cài đặt RunDeck
Xin lưu ý rằng có những người đang chạy Ansible + RunDeck dưới dạng giao diện web; không phải tất cả các trường hợp được chiếm đoạt cho điều đó.
Cũng không cần phải nói rằng việc sử dụng Ansible và / hoặc RunDeck có thể được hiểu là một dạng hoặc một phần của tài liệu cấu trúc hạ tầng, và theo thời gian cho phép sao chép và cải thiện các hành động / công thức nấu ăn / Playbooks.
Cuối cùng, nói về một máy chủ chỉ huy trung tâm, tôi sẽ tạo một cái chỉ để thực hiện nhiệm vụ. Trên thực tế thuật ngữ kỹ thuật là một hộp nhảy. 'Nhảy hộp' cải thiện bảo mật, nếu bạn thiết lập chúng đúng .