SaltStack - Sử dụng MinionFS làm Máy chủ Tệp

Các MinionFSlà một máy chủ tập tin đặc biệt do Salt cung cấp cho các tay sai để trao đổi các tập tin giữa chúng. Các tệp được cung cấp bởi MinionFS là các tệp được chia sẻ bởi các tay sai. Để chia sẻ các tệp, Minion phải làm theo các bước dưới đây.

  • Nguồn minion phải đẩy tệp lên cấp chính muối bằng cách sử dụng cp.push chức năng.

  • Khi các tệp được đẩy bởi minion nguồn, các tệp đã triển khai có thể được truy cập bởi bất kỳ minion nào khác bằng máy chủ tệp MinionFS.

Bật đẩy

Theo mặc định, việc đẩy các tệp của tay sai lên tệp chính bị tắt. Để chấp nhận các tệp từ tay sai, cái chủ cần có tùy chọn “file_recv” trong tệp cấu hình và giá trị của nó phải được đặt thànhTrue. Theo mặc định, giá trị nếu “file_recv” làfalse.

file_recv: True

Khi tùy chọn được bật, hãy khởi động lại dịch vụ chính.

Đẩy tệp

Minions có thể đẩy các tập tin lên master. Nó được thực hiện bởicp.pushchức năng. Hàm cp.push này cung cấp một cơ chế dễ dàng để đẩy các tệp bằng minion bằng cách sử dụng minion id.

salt 'minion-id' cp.push /path/to/the/file

Ở đây, minion-id được sử dụng để xác định minion nào đang đẩy tệp. Lệnh này sẽ lưu trữ tệp trong một thư mục con có tênminions phía dưới cái master's cachedir. Thông thường, đường dẫn là - / var / cache / salt / master / minions.

Đối với tay sai, m1 và tệp - /var/log/mylog.txt, tệp sẽ được lưu trữ trong - /var/cache/salt/master/minion/m1/var/log/mylog.txt.

Bật MinionFS

Để bật MinionFS, chỉ cần thêm minion trong cài đặt phụ trợ của máy chủ tệp như được hiển thị trong khối mã sau.

fileserver_backend:
   - roots
   - minion

Khi MinionFS được kích hoạt, các tệp được đẩy minion sẽ có sẵn dưới dạng:

salt://<minion-id>/path/to/pushed/file

Đối với tay sai, m1 và tệp được đẩy - /var/log/mylog.txt, tệp được đẩy sẽ được phân phát từ muối: //m1/var/log/mylog.txt.

MinionFS này có thể được gắn trong một thư mục đặc biệt bằng cách sử dụng cấu hình sau. Nó sẽ tách các tệp minionFS khỏi các tệp khác và sẽ giúp tổ chức các tệp minion.

minionfs_mountpoint: salt://minionfs

Đối với cấu hình trên, tệp sẽ có sẵn trong minionfs thư mục as - salt: //minionfs/m1/var/log/mylog.txt

Tùy chọn nâng cao MinionFS

MinionFS cũng cung cấp một tùy chọn để bật / tắt tính khả dụng của các tệp được đẩy từ một minion nhất định. Các tùy chọn làminionfs_whitelist, để kích hoạt tay sai và minionfs_blacklist, để vô hiệu hóa tay sai.

minionfs_whitelist:
   - webserver
   - develop*
   - ‘mail\d+.mysite.com'

minionfs_blacklist:
   - testing

Trong cấu hình trên, tất cả các tay sai ngoại trừ testing được phép chia sẻ tệp bằng minionFS.

  • Webserver1

  • Minion có id khớp với biểu thức chính quy sẽ phát triển *

  • Minion có id khớp với biểu thức chính quy mail\d+.mysite.com.

  • Testing

Trong chương tiếp theo, chúng ta sẽ học cách sử dụng Cron với Salt.