<Sebelum | Contents [show] | Seterusnya>
10.2.2. Melaksanakan Perintah pada Minion
Sebaik sahaja minion disambungkan, anda boleh melaksanakan arahan pada mereka daripada master:
tuan# ujian '*' garam.ping
kali-scratch:
Guru kali benar:
Benar
tuan# ujian '*' garam.ping
kali-scratch:
Guru kali benar:
Benar
Perintah ini meminta semua minion (the '*' ialah kad bebas yang menyasarkan semua minions) untuk melaksanakan ping berfungsi dari ujian modul pelaksanaan. Fungsi ini mengembalikan a Benar nilai pada kejayaan dan merupakan cara mudah untuk memastikan bahawa sambungan berfungsi antara tuan dan pelbagai minion.
Anda juga boleh menyasarkan minion tertentu dengan memberikan pengecamnya dalam parameter pertama, atau mungkin subset minion dengan menggunakan kad bebas yang kurang generik (seperti '*-scratch' atau 'kali-*'). Berikut ialah contoh bagaimana untuk melaksanakan arahan shell sewenang-wenangnya pada minion kali-scratch:
tuan# garam kali-scratch cmd.shell 'uptime; uname -a'
kali-scratch:
05:25:48 ke atas 44 min, 2 pengguna, purata muat: 0.00, 0.01, 0.05
Linux kali-scratch 4.5.0-kali1-amd64 #1 SMP Debian 4.5.3-2kali1 (2016-05-09) x86_64
➥ GNU / Linux
tuan# garam kali-scratch cmd.shell 'uptime; uname -a'
kali-scratch:
05:25:48 ke atas 44 min, 2 pengguna, purata muat: 0.00, 0.01, 0.05
Linux kali-scratch 4.5.0-kali1-amd64 #1 SMP Debian 4.5.3-2kali1 (2016-05-09) x86_64
➥ GNU / Linux
Rujukan Modul Garam Terdapat banyak modul pelaksanaan yang tersedia untuk semua jenis kes penggunaan. Kami tidak akan merangkumi kesemuanya di sini, tetapi senarai penuh tersedia di https://docs.saltstack.com/ my/latest/ref/modules/all/index.html. Anda juga boleh mendapatkan penerangan tentang semua modul pelaksanaan dan fungsinya yang tersedia pada minion tertentu dengan garam PRU sys.doc perintah. Menjalankan arahan ini mengembalikan senarai fungsi yang sangat panjang, tetapi anda boleh menapis senarai dengan menghantar nama fungsi atau modul yang diawali oleh modul induknya sebagai parameter: | |
tuan# garam kali-scratch sys.doc disk.usage penggunaan cakera: Kembalikan maklumat penggunaan untuk volum yang dipasang pada ini ➥ PRU | |
Salah satu modul yang paling berguna ialah pkg, yang merupakan abstraksi pengurus pakej bergantung pada pengurus pakej yang sesuai untuk sistem (apt-get untuk Debian dan derivatifnya seperti Kali).
. pkg.refresh_db perintah mengemas kini senarai pakej (iaitu, ia berfungsi apt-cepat update) sementara pkg.upgrade memasang semua kemas kini yang tersedia (ia berfungsi naik taraf apt-get or apt-get dist-upgrade, bergantung pada pilihan yang diterima). The pkg.list_upgrades arahan menyenaraikan operasi naik taraf yang belum selesai (yang akan dilakukan oleh pkg.upgrade dist_upgrade=Benar perintah).
. perkhidmatan modul ialah abstraksi pengurus perkhidmatan (sistem dalam kes Kali), yang membolehkan anda melakukan semua perkara biasa systemctl operasi: perkhidmatan.membolehkan, perkhidmatan.lumpuhkan, perkhidmatan. mulakan, perkhidmatan.berhenti, perkhidmatan.mulakan semula, dan perkhidmatan.muat semula:
tuan# perkhidmatan '*' garam.dayakan ssh
kali-scratch:
Guru kali benar:
Benar
tuan# perkhidmatan '*' garam.mulakan ssh
kali-master:
Benar
kali-scratch:
Benar
tuan# garam '*' pkg.refresh_db
kali-scratch:
----------
kali-master:
----------
tuan# garam '*' pkg.upgrade dist_upgrade=Benar
kali-scratch:
----------
perubahan:
----------
fail asas:
----------
baru:
1:2016.2.1
tua:
1:2016.2.0
[...]
zaproxy:
----------
baru:
2.5.0-0kali1 lama:
2.4.3-0kali3
ulasan: keputusan:
Benar
tuan# perkhidmatan '*' garam.dayakan ssh
kali-scratch:
Guru kali benar:
Benar
tuan# perkhidmatan '*' garam.mulakan ssh
kali-master:
Benar
kali-scratch:
Benar
tuan# garam '*' pkg.refresh_db
kali-scratch:
----------
kali-master:
----------
tuan# garam '*' pkg.upgrade dist_upgrade=Benar
kali-scratch:
----------
perubahan:
----------
fail asas:
----------
baru:
1:2016.2.1
tua:
1:2016.2.0
[...]
zaproxy:
----------
baru:
2.5.0-0kali1 lama:
2.4.3-0kali3
ulasan: keputusan:
Benar
Sebagai sampel yang lebih konkrit, anda boleh dengan mudah menyediakan diedarkan Nmap imbas dengan dnmap. Selepas memasang pakej pada semua minions, anda memulakan pelayan di terminal pertama:
pelayan# garam '*' pkg.pasang dnmap
[...]
pelayan# vim dnmap.txt
pelayan# dnmap_server -f dnmap.txt
pelayan# garam '*' pkg.pasang dnmap
[...]
pelayan# vim dnmap.txt
pelayan# dnmap_server -f dnmap.txt
Dengan mengandaikan bahawa IP pelayan ialah 1.2.3.4, anda seterusnya boleh memberitahu semua minions untuk memulakan proses klien yang menyambung ke pelayan:
pelayan# garam '*' cmd.run_bg template=jinja 'dnmap_client -s 1.2.3.4 -a {{ grains.id }}'
kali-scratch:
----------
pid:
17137
[...]
pelayan# garam '*' cmd.run_bg template=jinja 'dnmap_client -s 1.2.3.4 -a {{ grains.id }}'
kali-scratch:
----------
pid:
17137
[...]
Perhatikan bahawa contoh menggunakan cmd.run_bg untuk menjalankan dnmap_client arahan di latar belakang. Jangan tunggu sehingga ia selesai, kerana ia adalah proses yang panjang. Malangnya, ia tidak mati dengan betul apabila anda mengganggu pelayan jadi anda mungkin perlu membersihkannya:
pelayan# garam '*' cmd.shell 'pkill -f dnmap_client'
pelayan# garam '*' cmd.shell 'pkill -f dnmap_client'