Cấu hình Salt Master

Trước khi cấu hình, hãy cài đặt Salt Master và Salt Minions với hướng dẫn Linode Install Salt . Hướng dẫn này được viết cho Debian 8, nhưng có thể dễ dàng điều chỉnh cho các bản phân phối Linux khác.

1.Mở /etc/salt/mastertệp. Sau đó tìm kiếm file_roots , tùy chọn đọc phần “Cài đặt máy chủ tệp” xung quanh và chỉnh sửa nội dung sau:

# Example:
  file_roots:
    base:
      - /etc/salt/base

Ghi chú: Sao chép chính xác văn bản trên để đảm bảo lồng nhau hai khoảng trắng đúng cách của định dạng YAML. Ngoài ra, hãy lưu ý các trạng thái Minion có thể khác được liệt kê trong tệp gốc cơ sở ví dụ.

2.Tạo thư mục gốc của tệp mới được liệt kê:

mkdir /etc/salt/base

Tệp cấu hình của Salt Master hiện đã được điều chỉnh cho một thư mục cơ sở mới. Thư mục cơ sở thường chứa các tệp SLS tạo ra một tổ chức giống như cây cho các Trạng thái Salt liên quan đến thư mục đó. Các thư mục bổ sung, tương tự như thư mục cơ sở, có thể được tạo bằng các tệp SLS bổ sung cho các danh mục Trạng thái Salt khác nhau.

Tạo các tệp SLS hàng đầu và bổ sung

Tệp trên cùng tạo ra tổ chức cấp cao nhất cho Salt States và Minions trong thư mục. Các tệp SLS khác thường tương ứng với danh sách tệp trên cùng.

Như đã đề cập trong lưu ý ở trên, mỗi tệp cấu hình này yêu cầu khoảng cách cụ thể. Để đảm bảo tính nhất quán, hãy sao chép các ví dụ bên dưới, bao gồm

1.Tạo /etc/salt/base/top.slstệp và thêm nội dung sau. Một lần nữa, đảm bảo định dạng chính xác cho YAML lồng hai khoảng trắng.

base:
  '*':
     - lamp
     - extras

2.Tạo /etc/salt/base/lamp.slstệp được đề cập ở Bước 1 và thêm nội dung sau:

lamp-stack:
  pkg.installed:
    - pkgs:
      - mysql-server
      - php5
      - php-pear
      - php5-mysql

Tệp này định nghĩa một Salt State đơn giản bằng cách sử dụng pkg State Module . Salt State này đảm bảo rằng một ngăn xếp LAMP được cài đặt trên Minions.

3.Dấu đầu dòng thứ hai được liệt kê trong top.slskhai báo một extrastệp sẽ liệt kê và cài đặt phần mềm bổ sung. Tạo một /etc/salt/base/extras.slstệp và thêm nội dung sau:

fail2ban:
  pkg.installed

4.Khởi động lại Salt Master:

systemctl restart salt-master

Tạo trạng thái Salt trên Minions

1.Để cài đặt các gói được liệt kê ở trên và tạo Salt State, hãy chạy:

salt '*' state.highstate

Quá trình này sẽ mất vài phút. Nếu thành công, báo cáo sẽ được hiển thị với phần tóm tắt tương tự như sau:

Summary
------------
Succeeded: 2 (changed=2)
Failed:    0
------------
Total states run:     2

2.Để xác minh thêm rằng các dịch vụ đang hoạt động trên minion, hãy chạy:

salt '*' cmd.run "service --status-all | grep 'apache2\|mysql\|fail2ban'"

Một LAMP stack và Fail2ban Salt State đã được tạo trên tất cả các Salt Minion được liệt kê. Để biết thêm thông tin về cách cấu hình LAMP Stack, hãy tham khảo hướng dẫn Salt States for Configuration of Apache, MySQL, and PHP (LAMP) .

Nguồn: https://www.linode.com/docs/guides/use-salt-states-to-create-lamp-stack-and-fail2ban-across-salt-minions/