Bagaimana cara mendaftar semua antek Salt Stack yang terhubung?

76

Kadang-kadang master garam saya salt '*' test.pingmenunggu sebentar untuk menunggu pelayan yang jatuh untuk membalas. Apakah ada cara melihat daftar antek yang terhubung, terlepas dari apakah mereka merespons test.ping?

Petrus Theron
sumber

Jawaban:

89

Jawaban resmi:

salt-run manage.up

Juga bermanfaat adalah:

salt-run manage.status

salt-run manage.down
Dan Garthwaite
sumber
2
"salt-run -d" Memberikan daftar lengkap semua modul yang dapat Anda jalankan dengan salt-run, layak dibaca
Chris Huang-Leaver
5
salt-run manage.versionsjuga cukup berguna (melaporkan versi berjalan antek dan membandingkannya dengan versi master)
sxc731
Perhatikan bahwa menjalankan garam manage.updan manage.statustampaknya melakukan di test.pingbawah tenda. Setidaknya, ketika saya berlari manage.up, itu ditampilkan pada log pelayan sebagai test.ping..... Jika Anda ingin memastikan tidak perlu mengirim apa pun, gunakan alivedatau salah satu dari fungsi kelola lainnya
sdfgeoff
12

Dari tipe master:

ls -1 /var/cache/salt/master/minions

atau:

ls -1 /etc/salt/pki/master/minions

Memasukkan permintaan garam yang salah (mis., Garam '*' -) juga akan mengembalikan daftar semua antek yang diikuti oleh pesan yang menyatakan bahwa perintah tersebut tidak tersedia. Anda dapat mengambil / memotong karakter asing. Tidak satu pun dari opsi ini yang sangat elegan dan nantinya tidak membahas batas waktu tetapi berfungsi saat saya sedang mencari jawaban untuk pertanyaan serupa; "Bagaimana cara membuat daftar semua antek terkait melalui api python saltstack?"

Akan
sumber
Saya pikir sesuatu pasti telah berubah / var / cache / salt / master / minion nampaknya bukan lokasi yang ada sekarang, / etc / salt / pki / master / minion masih bagus untuk digunakan.
Oliver Dungey
8

"salt-key -L" akan mencantumkan semua antek yang kunci publiknya Anda terima dari master Anda.

Utah_Dave
sumber
1
Terima kasih, tetapi ini mencantumkan kunci antek yang diterima, bukan antek yang terhubung.
Petrus Theron
2

Saya pikir seseorang dapat menggunakan modul biji-bijian untuk mencapai ini:

salt '*' grains.get id
Kurt Zhong
sumber
2

Ada beberapa perintah baru yang membuatnya jauh lebih mudah,

salt-run manage.alived Cetak daftar semua pelayan yang sesuai dengan deteksi kehadiran Salt (tidak ada perintah yang akan dikirim ke pelayan)

salt-run manage.allowed Cetak daftar semua pelayan yang sesuai dengan deteksi kehadiran Salt (tidak ada perintah yang akan dikirim ke pelayan)

salt-run manage.not_alived Cetak daftar semua pelayan yang TIDAK naik sesuai dengan deteksi kehadiran Salt (tidak ada perintah yang akan dikirim)

salt-run manage.not_allowed Cetak daftar semua pelayan yang TIDAK naik sesuai dengan deteksi kehadiran Salt (tidak ada perintah yang akan dikirim)

salt-run manage.not_joined Cetak daftar semua pelayan yang TIDAK naik sesuai dengan deteksi kehadiran Salt (tidak ada perintah yang akan dikirim)

Sufiyan Ghori
sumber
-6

Untuk melakukan ping ke semua antek, coba pada node master garam:

salt '*' test.ping 
Михаил Ветчинов
sumber
4
Sudahkah Anda membaca pertanyaan? Ini khusus tentang alternatif metode Anda karena ini tidak bekerja dalam beberapa kasus.
Sven