Làm cách nào để cài đặt Puppet Bolt để tự động hóa các tác vụ Sysadmin?

Cài đặt Puppet Bolt trên Ubuntu


Con rối Bolt là một công cụ nguồn mở được sử dụng rộng rãi để tự động hóa công việc thủ công.

Bolt dựa trên Ruby và công cụ dòng lệnh của nó để nhận các tập lệnh thực thi, lệnh trên máy chủ cục bộ và từ xa qua SSH và WinRM. Nó giúp Sysadmin quản lý nhiều máy chủ theo nhiều cách.

  • Quản lý cập nhật
  • Cài đặt phần mềm
  • Nhật ký đọc
  • Dừng hoặc bắt đầu dịch vụ
  • Thực hiện lệnh

Tin vui là bạn không cần cài đặt bất kỳ tác nhân nào trên máy chủ. Nó không có tác dụng.

Điều kiện tiên quyết

Ví dụ sau đây là trên Ubuntu, vì vậy bạn cần một máy ảo Ubuntu có quyền truy cập sudo vào root.

Cập nhật hệ thống

Chúng tôi khuyên bạn nên nâng cấp tất cả các kho lưu trữ và gói có sẵn trước khi cài đặt bất kỳ gói mới nào trên hệ thống. Thực hiện lệnh sau và nó sẽ thực hiện công việc cho bạn.

sudo apt-get cập nhật

Cài đặt Puppet Bolt

Vì nó không có tác dụng, bạn không cần cài đặt trên mọi máy chủ. Thay vào đó, chỉ trên một máy chủ sẽ hoạt động như một máy chủ có thể được sử dụng để kết nối với các máy chủ từ xa. Bolt là một công cụ đa nền tảng để bạn có thể cài đặt trên hệ điều hành yêu thích của mình.

  • các cửa sổ
  • hệ điều hành Mac
  • BẠC
  • CentOS
  • Fedora
  • Debian
  • Ubuntu

Tham khảo đến trang điện tử chính thức cho phiên bản mới nhất có sẵn. Hãy để cài đặt này trên Ubuntu.

Chạy lệnh sau để lấy gói.

sudo wget https://apt.puppet.com/puppet6-release-bionic.deb

Tiếp theo, cài đặt gói được tải xuống ở trên bằng lệnh trình quản lý gói Debian.

sudo dpkg -i con rối6-phát hành-bionic.deb

Một lần nữa, cập nhật hệ thống bằng lệnh sau.

sudo apt-get cập nhật

Cuối cùng, thực hiện lệnh sau để cài đặt bu lông.

sudo apt-get cài đặt con rối

Bạn có cài đặt thành công con rối trên máy chủ của bạn.

Điều này cần được thực hiện trên tất cả các máy chủ mà bạn muốn quản lý thông qua Bolt.

Như đã đề cập trước đó, Bolt kết nối với một máy chủ khác qua khóa SSH, vì vậy tôi cho rằng bạn đã trao đổi khóa giữa các máy chủ. Nếu không, bạn có thể tham khảo hướng dẫn này để thiết lập trao đổi khóa SSH.

Hãy để kết nối với các máy chủ từ xa và chạy các lệnh bolt.

Để chạy một lệnh trên một nút, sử dụng lệnh sau.

lệnh Bolt chạy –nodes

Vui lòng thay thế LỆNH bằng lệnh bạn muốn thực thi và NODE bằng tên máy chủ hoặc IP máy chủ từ xa. Tương tự, bạn cũng có thể chạy một lệnh trên nhiều nút.

lệnh chốt chạy -n

Nếu trong trường hợp bạn cần thêm xác thực mật khẩu vào một lệnh thì bạn có thể thêm nó bằng cờ.

lệnh chốt chạy -n -u -p

Giả sử bạn muốn xem hệ thống đã chạy được bao lâu thì bạn sẽ cần sử dụng lệnh `uptime` như thế này:

lệnh bu lông chạy thời gian hoạt động – mã 35.185,68,71,35.231.9.135

Bạn sẽ thấy đầu ra sau.

[email được bảo vệ]: ~ $ bolt lệnh chạy thời gian hoạt động – mã 35.185,68,71,35.231.9.135
Bắt đầu vào ngày 35.185.68.71…
Bắt đầu vào ngày 35.231.9.135…
Hoàn thành vào ngày 35.231.9.135:
TUYỆT VỜI:
04:57:48 lên 7 phút, 0 người dùng, tải trung bình: 0,00, 0,03, 0,02
Hoàn thành vào ngày 35.185.68.71:
TUYỆT VỜI:
04:57:48 lên 9 phút, 0 người dùng, tải trung bình: 0,00, 0,00, 0,00
Thành công trên 2 nút: 35.185,68,71,35.231.9.135
Chạy trên 2 nút trong 5,96 giây

Có thể bạn muốn chạy một số lệnh có chứa khoảng trắng, do đó, bạn sẽ cần phải bọc lệnh trong dấu ngoặc kép đơn:

[email được bảo vệ]: ~ $ bolt lệnh chạy ‘echo $ HOME’ – các mã 35.185,68,71,35.231.9.135
Bắt đầu vào ngày 35.185.68.71…
Bắt đầu vào ngày 35.231.9.135…
Hoàn thành vào ngày 35.231.9.135:
TUYỆT VỜI:
/ nhà / sajid
Hoàn thành vào ngày 35.185.68.71:
TUYỆT VỜI:
/ nhà / sajid
Thành công trên 2 nút: 35.185,68,71,35.231.9.135
Chạy trên 2 nút trong 6,11 giây

Chạy tập lệnh

Tất cả chúng ta đều có một tập lệnh mà chúng ta sử dụng thường xuyên.

Bolt giúp dễ dàng sử dụng lại các tập lệnh đó mà không cần sửa đổi và chạy chúng trên các nút thậm chí nhiều hơn cùng một lúc. Tất cả những gì bạn cần làm là chỉ định tên và đường dẫn của tập lệnh mà bạn muốn chạy.

kịch bản bu lông chạy –nodes
kịch bản bu lông chạy /home/sajid/Desktop/samplescript.sh –nodes 35.185.68.71,35.231.9.135

Bạn sẽ thấy đầu ra tương tự như thế này:

[email được bảo vệ]: / $ bolt script chạy /home/sajid/Desktop/samplescript.sh –nodes 35.185.68.71,35.231.9.135
Bắt đầu vào ngày 35.185.68.71…
Bắt đầu vào ngày 35.231.9.135…
Hoàn thành vào ngày 35.231.9.135:
TUYỆT VỜI:
Chào thế giới
Hoàn thành vào ngày 35.185.68.71:
TUYỆT VỜI:
Chào thế giới
Thành công trên 2 nút: 35.185,68,71,35.231.9.135
Chạy trên 2 nút trong 15,18 giây

Bạn có thể chạy tập lệnh bằng bất kỳ ngôn ngữ nào miễn là trình thông dịch phù hợp được cài đặt trên hệ thống từ xa.

Tự động hóa với nhiệm vụ

Tác vụ là một tập hợp các hành động mà bạn muốn chạy trên các máy từ xa.

Nhiệm vụ có thể được viết bằng bất kỳ ngôn ngữ nào chạy trên một nút từ xa. Nhiệm vụ giúp bạn dễ dàng sử dụng lại và chia sẻ các tập lệnh và giúp bạn đạt được tự động hóa. Bạn có thể tải xuống một số nhiệm vụ hiện có từ Puppet forge và tải lên các nhiệm vụ của bạn ở đó theo nhu cầu của bạn.

Ví dụ: nếu bạn muốn kiểm tra trạng thái của gói vim thì bạn có thể sử dụng lệnh sau.

nhiệm vụ chạy gói hành động = tên trạng thái = vim – mã 35.185,68,71,35.231.9.135

Bạn sẽ thấy đầu ra tương tự như thế này:

[email được bảo vệ]: ~ $ bolt tác vụ chạy gói hành động = tên trạng thái = vim –nodes 35.185.68.71,35.231.9.135
Bắt đầu vào ngày 35.185.68.71…
Bắt đầu vào ngày 35.231.9.135…
Hoàn thành vào ngày 35.185.68.71:
{
"trạng thái": "cài đặt ok cài đặt",
"phiên bản": "2: 7.4.1689-3ubfox1.3"
}
Hoàn thành vào ngày 35.231.9.135:
{
"trạng thái": "cài đặt ok cài đặt",
"phiên bản": "2: 7.4.1689-3ubfox1.3"
}
Thành công trên 2 nút: 35.185,68,71,35.231.9.135
Chạy trên 2 nút trong 19,15 giây

Nếu bạn không tìm thấy gói vim được cài đặt thì bạn có thể cài đặt nó bằng lệnh sau.

nhiệm vụ chạy gói hành động = cài đặt tên = vim –nodes 35.185.68.71,35.231.9.135

Bạn có thể chạy kế hoạch để thiết lập nodejs và kết nối nó với bộ cân bằng tải của mình, bạn có thể làm điều này bằng cách kết hợp Puppet Bolt với một nút mục tiêu đã cài đặt Bolt.

kế hoạch bu lông chạy nodejs :: myplan load_balancer = lb.myorg.com

Bạn có thể sử dụng con rối để sao chép các tập tin trên các nút từ xa. Bạn có thể chỉ cần tải tệp hoặc thư mục lên nút từ xa bằng cách sử dụng lệnh `bolt file upload`. Tất cả bạn phải làm là chỉ định đường dẫn của tệp trên máy cục bộ và đích trên nút từ xa.

tải tập tin bu lông – mã

Bạn có thể tải lên một tệp trên nhiều nút từ xa như thế này:

bu lông tải lên tập tin sample_file.txt /tmp/remotesample_file.txt –nodes 35.185.68.71,35.231.9.135

Rất nhiều khả năng như bạn có thể thấy.

Tạo một tập tin hàng tồn kho

Bolt cho phép bạn tạo một tệp kiểm kê sẽ lưu trữ thông tin về các nút, tác vụ và cấu hình của bạn. Bạn có thể chỉ định các nút khác nhau trong một nhóm và tệp kiểm kê theo mặc định được lưu trữ tại Invent.yaml trong thư mục dự án. Dưới đây là một ví dụ về việc tạo tệp kiểm kê.


# Ví dụ tập tin hàng tồn kho
các nhóm:
– Tên: Nhóm các nút
điểm giao:
– nút1
– nút2
– nút3
cấu hình:
ssh:
host-key-check: false
ssl: sai

Bạn có thể thay thế các nút1, nút2, nút 3 bằng tên miền nút thực tế hoặc địa chỉ IP của các nút. Bây giờ bạn có thể thêm tệp kiểm kê này vào các lệnh bolt để thực thi các tác vụ trên các nút được chỉ định.

lệnh Bolt chạy –inventoryfile ./inventory.yaml

Phần kết luận

Tôi hy vọng bây giờ bạn có một ý tưởng về Bolt là gì và nó có thể giúp bạn tự động hóa như thế nào. Bạn cũng có thể quan tâm đến việc tìm hiểu về Con rối.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map