Cài đặt và cấu hình Puppet trên Ubuntu 20.04

Tác giả sysadmin, T.Sáu 05, 2023, 02:48:24 CHIỀU

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 2 Khách đang xem chủ đề.

Cài đặt và cấu hình Puppet trên Ubuntu 20.04


Puppet là một công cụ quản lý cấu hình phổ biến giúp đơn giản hóa quá trình quản lý cơ sở hạ tầng trên quy mô lớn. Nó cho phép bạn tự động hóa việc cung cấp, cấu hình và triển khai các ứng dụng và dịch vụ trên nhiều máy chủ và môi trường.


Puppet có thể giúp bạn xác định trạng thái mong muốn của cơ sở hạ tầng dưới dạng mã được gọi là "bảng kê khai". Tệp kê khai chỉ định các tài nguyên và cấu hình mà bạn muốn Puppet quản lý, chẳng hạn như gói, tệp, người dùng và dịch vụ. Puppet đảm bảo rằng trạng thái thực tế của tài nguyên trên hệ thống đích khớp với trạng thái mong muốn được xác định trong tệp kê khai.

Puppet cung cấp các tính năng thú vị như ngôn ngữ khai báo, trừu tượng hóa tài nguyên, tính bình thường, kiến trúc dựa trên tác nhân và khả năng mở rộng. Hướng dẫn này cung cấp hướng dẫn từng bước về cách cài đặt và cấu hình Puppet trên Ubuntu 20.04.

1. Điều kiện tiên quyết để cài đặt Puppet trên Ubuntu 20.04

Trước khi cài đặt Puppet trên Ubuntu 20.04, bạn cần đảm bảo rằng hệ thống của mình đáp ứng các yêu cầu sau:

  • Đã cài đặt Ubuntu 20.04 trên hệ thống đích
  • Tài khoản người dùng có đặc quyền sudo
  • Kết nối internet ổn định để tải xuống và cài đặt các gói cần thiết
  • Đủ dung lượng đĩa để cài đặt và chạy Puppet

Ngoài ra, bạn có thể cần định cấu hình tường lửa để cho phép liên lạc giữa máy chủ Puppet và tác nhân cũng như bất kỳ cổng cần thiết nào khác. Bạn cũng có thể cần định cấu hình DNS hoặc các mục nhập tệp máy chủ để phân giải tên máy chủ của máy chủ Puppet.

2. Hướng dẫn từng bước để cài đặt Puppet trên Ubuntu 20.04

Khi bạn đáp ứng các điều kiện tiên quyết, bạn có thể tiến hành cài đặt Puppet trên Ubuntu 20.04 bằng các bước sau:

Bước 1: Cập nhật Chỉ mục gói trên Hệ thống của bạn

Cập nhật gói bằng lệnh sau:

Mã nguồn [Chọn]
sudo apt update
Đầu ra cho lệnh này trông như thế này:


Đầu ra này cho biết rằng các danh sách gói được cập nhật cho bản phát hành tiêu điểm Ubuntu (20.04) và hiện không có bản cập nhật mới nào. Đầu ra cũng hiển thị các nguồn được kiểm tra các bản cập nhật, chẳng hạn như kho lưu trữ chính và bảo mật.

Bước 2: Cài đặt Kho lưu trữ Puppet và các phụ thuộc

Cài đặt kho lưu trữ Puppet cần thiết bằng lệnh sau:

sudo apt install curl ca-certificates gnupg2

Mã nguồn [Chọn]
curl https://apt.puppet.com/DEB-GPG-KEY-puppet | sudo apt-key add -
echo "deb http://apt.puppet.com $(lsb_release -sc) puppet7" | sudo tee /etc/apt/sources.list.d/puppet7.list

Mã nguồn [Chọn]
sudo apt update
Lệnh đầu tiên cài đặt ba gói – curl, ca-certificates và gnupg2. Nếu các gói này đã được cài đặt, bạn sẽ thấy một thông báo cho biết chúng đã được cập nhật. Lệnh thứ hai thêm khóa GPG của kho lưu trữ Puppet vào danh sách các khóa đáng tin cậy của hệ thống.

Lệnh thứ ba thêm kho lưu trữ Puppet vào danh sách nguồn phần mềm của hệ thống. Trong trường hợp này, nó đang thêm một nguồn cho phiên bản 7 của Puppet và nó sử dụng đầu ra của lệnh "lsb_release –sc" để xác định tên mã của bản phát hành Ubuntu hiện đang chạy trên hệ thống.

Cuối cùng, lệnh thứ tư cập nhật danh sách gói cho hệ thống bao gồm kho lưu trữ Puppet mới được thêm vào. Đầu ra cho biết kho lưu trữ nào được cập nhật và chỉ ra rằng 24 gói có thể được nâng cấp.

Bước 3: Cài đặt các gói Puppet Server và Agent

Tiến hành cài đặt các gói Puppet server và agent bằng lệnh sau:

Mã nguồn [Chọn]
sudo apt install puppetserver puppet-agent
Bước 4: Kích hoạt các gói máy chủ Puppet và tác nhân

Kích hoạt các gói tác nhân và máy chủ Puppet bằng các lệnh sau:

Mã nguồn [Chọn]
sudo systemctl start puppetserver

sudo systemctl enable puppetserver

sudo systemctl start Puppet

sudo systemctl enable Puppet

Bước 5: Cấu hình Puppet Agent

Cấu hình Puppet agent để giao tiếp với Puppet server. Chỉnh sửa tệp /etc/puppetlabs/puppet/puppet.conf và đặt tham số máy chủ thành tên máy chủ của máy chủ Puppet của bạn.

Bước 6: Kiểm tra giao tiếp

Kiểm tra giao tiếp giữa Puppet server và agent bằng lệnh sau:

Mã nguồn [Chọn]
sudo /opt/puppetlabs/bin/puppet agent –test
Đầu ra mẫu trông như thế này:


Đầu ra này hiển thị tác nhân Puppet đang thực hiện chạy thử và áp dụng phiên bản cấu hình hiện tại. Đầu tiên, nó tạo một yêu cầu chứng chỉ SSL mới, sau đó truy xuất thông tin plugin, lưu trữ chứng chỉ vào bộ đệm, truy xuất danh mục tài nguyên để áp dụng và cuối cùng áp dụng cấu hình.

3. Tạo và quản lý các mô-đun Puppet

Mô-đun Puppet là bộ sưu tập mã có thể tái sử dụng chứa tài nguyên và cấu hình để quản lý một khía cạnh cụ thể của cơ sở hạ tầng, chẳng hạn như cài đặt gói hoặc định cấu hình dịch vụ. Để tạo và quản lý các mô-đun Puppet, bạn có thể làm theo các bước sau:

Bước 1: Tạo cấu trúc thư mục mô-đun

Bạn có thể đạt được điều này bằng mã sau:

Mã nguồn [Chọn]
sudo mkdir -p /etc/puppetlabs/code/environments/production/modules/mymodule/{manifests,files,templates}
Bước 2: Tạo tệp kê khai

Tạo tệp kê khai bằng lệnh sau:

Mã nguồn [Chọn]
sudo nano /etc/puppetlabs/code/environments/production/modules/mymodule/manifests/init.pp
Sau khi hoàn tất, hãy thêm các tài nguyên và cấu hình mong muốn, chẳng hạn như:

Mã nguồn [Chọn]
class mymodule {
  package { 'nginx':
    ensure => 'installed',
  }
  service { 'nginx':
    ensure => 'running',
    enable => true,
  }
}

Một đầu ra mẫu trông giống như những gì chúng ta có trong hình sau:


Đầu ra này chỉ ra rằng tác nhân Puppet đã áp dụng thành công cấu hình mymodule và cài đặt cũng như khởi động dịch vụ Nginx. Thông báo thông báo cho thấy rằng Puppet đã biên soạn danh mục tài nguyên và sau đó tạo tài nguyên Gói cho Nginx, tiếp theo là tài nguyên dịch vụ để đảm bảo rằng Nginx đang chạy và được bật.

Bước 3: Áp dụng mô-đun cho hệ thống đích

Tiến hành áp dụng mô-đun cho hệ thống đích như sau:

Mã nguồn [Chọn]
sudo /opt/puppetlabs/bin/puppet apply -e 'include mymodule'
Đầu ra của lệnh trông giống như mẫu sau:


Bạn cũng có thể tải xuống và sử dụng các mô-đun hiện có từ Puppet Forge, một kho lưu trữ các mô-đun do cộng đồng đóng góp.

Puppet là một công cụ quản lý cấu hình linh hoạt và mạnh mẽ cho phép bạn tự động hóa và quản lý cơ sở hạ tầng trên quy mô lớn. Với Puppet, bạn có thể xác định trạng thái mong muốn của cơ sở hạ tầng bằng ngôn ngữ Puppet và áp dụng các thay đổi một cách nhất quán trên nhiều nút và môi trường.