Thứ Sáu, 11 tháng 4, 2014

[Saltstack] Remote execution tutorial


Chúng ta điều khiển các salt-minion từ salt với lệnh 'salt'. Lệnh này bao gồm ba thành phần chính:

$ salt 'target' <function> arguments

target ở đây chính là tên của minion mà bạn muỗn điều khiển

Một số options tham khảo tại
http://docs.saltstack.com/en/latest/ref/cli/salt.html

1.1 Target:
'Target' giúp bạn lọc ra những salt minion sẽ chaỵ những dòng lệnh tiếp theo. Theo mặc định, target là những minion id
Ví dụ:
# chạy lệnh test.ping tới tất cả các salt-minion do master này quản lý
salt '*' test.ping
#  chạy lệnh test.ping tới tất cả các salt-minion có tên bao gồm '.example.com' 
# do master này quản lý
salt '*.example.org' test.ping

 Targets có thể dựa trên thông tin hệ thống của minion bằng cách sử dụng Grains:

# Chạy lệnh test.ping với tất cả những minion sử dụng os ubuntu 
salt -G 'os:Ubuntu' test.ping

 Đọc thêm vè grains:
http://docs.saltstack.com/en/latest/topics/targeting/grains.html

Targets có thể được filter với những regular expression:
salt -E 'virtmach[0-9]' test.ping

Được xác định như là một list:

salt -L 'foo,bar,baz,quo' test.ping

Bao gồm nhiều kiểu targets trên cùng một lệnh:
salt -C 'G@os:Ubuntu and webser* or E@database.*' test.ping

1.2 Function
Một function là một số chức năng được cung cấp bởi một module. Salt có một bộ sưu tập rất nhiều các module

List tất cả các functions:
salt '*' sys.doc 
ví dụ:
show tất cả các minion do master hiện đang quản lý:
salt '*' test.ping
Chạy một lệnh trên minion:
salt '*' cmd.run 'uname -a'

1.3 Argument:
ví dụ:
salt '*' cmd.exec_code python 'import sys; print sys.version'
salt '*' pip.install salt timeout=5 upgrade=True
  
Thông thường , các keywords argument đều được hỗ trợ





Không có nhận xét nào:

Đăng nhận xét