<Sebelum | Contents [show] | Seterusnya>
10.2.3. Keadaan Garam dan Ciri Lain
Walaupun pelaksanaan jauh adalah blok binaan yang penting, ia hanya sebahagian kecil daripada apa yang boleh dilakukan oleh SaltStack.
Apabila menyediakan mesin baharu, anda sering menjalankan banyak arahan dan ujian untuk menentukan butiran sistem sebelum pemasangan. Operasi ini boleh diformalkan dalam templat konfigurasi boleh guna semula yang dipanggil fail negeri. Operasi yang diterangkan dalam fail keadaan kemudiannya boleh dilakukan dengan satu negeri.memohon perintah garam.
Untuk menjimatkan masa, anda boleh bergantung pada banyak fail keadaan sedia untuk digunakan yang telah dibuat oleh komuniti dan yang diedarkan dalam "Formula garam":
➨ https://docs.saltstack.com/en/latest/topics/development/conventions/formulas. html
Terdapat banyak ciri lain yang boleh digabungkan:
• Pelaksanaan tindakan berjadual
• Mentakrifkan tindakan sebagai tindak balas kepada peristiwa yang dicetuskan oleh minion
• Mengumpul data daripada minions
• Orkestrasi urutan operasi merentas berbilang minion
• Menggunakan keadaan melalui SSH tanpa memasang perkhidmatan salt-minion
• Memperuntukkan sistem pada infrastruktur awan dan membawanya ke bawah pengurusan
• Dan banyak lagi
SaltStack agak luas dan kami tidak mungkin merangkumi semua ciri di sini. Malah, terdapat buku yang didedikasikan sepenuhnya untuk SaltStack dan dokumentasi dalam talian juga sangat luas. Semak ia jika anda ingin mengetahui lebih lanjut tentang cirinya:
➨ https://docs.saltstack.com/en/latest/
Jika anda menguruskan sejumlah besar mesin, anda dinasihatkan untuk mengetahui lebih lanjut tentang SaltStack kerana anda boleh menjimatkan banyak masa apabila menggunakan mesin baharu dan anda akan dapat mengekalkan konfigurasi yang koheren di seluruh rangkaian anda.
Untuk memberi anda rasa bagaimana ia kelihatan seperti berfungsi dengan fail negeri, kami akan merangkumi contoh mudah: cara mendayakan repositori APT dan memasang pakej yang anda buat dalam bahagian 10.3.3, "Mencipta Repositori Pakej untuk APT" [halaman 269] dan bahagian 10.3.2, “Mencipta Pakej Konfigurasi” [halaman 263]. Anda juga akan mendaftarkan kunci SSH dalam akaun root supaya anda boleh log masuk dari jauh sekiranya berlaku masalah.
Secara lalai, fail negeri disimpan dalam /srv/garam pada tuan; ia adalah fail berstruktur YAML dengan a .sls sambungan. Sama seperti untuk menjalankan arahan, menggunakan keadaan bergantung pada banyak modul keadaan:
➨ https://docs.saltstack.com/en/latest/topics/tutorials/starting_states.html
➨ https://docs.saltstack.com/en/latest/ref/states/all/
/srv/salt/offsec.sls fail akan memanggil tiga daripada modul tersebut:
offsec_repository: pkgrepo.managed:
- nama: deb http://pkgrepo.offsec.com offsec-internal main
- fail: /etc/apt/sources.list.d/offsec.list
- url_kunci: salt://offsec-apt-key.asc
- memerlukan_dalam:
- pkg: lalai offsec
offsec-defaults: pkg.installed
ssh_key_for_root: ssh_auth.present:
- pengguna: root
- nama: ssh-rsa AAAAB3NzaC1yc2...89C4N rhertzog@kali
offsec_repository: pkgrepo.managed:
- nama: deb http://pkgrepo.offsec.com offsec-internal main
- fail: /etc/apt/sources.list.d/offsec.list
- url_kunci: salt://offsec-apt-key.asc
- memerlukan_dalam:
- pkg: lalai offsec
offsec-defaults: pkg.installed
ssh_key_for_root: ssh_auth.present:
- pengguna: root
- nama: ssh-rsa AAAAB3NzaC1yc2...89C4N rhertzog@kali
. offsec_repository negeri bergantung kepada pkgrepo modul negeri. Contoh menggunakan berjaya
berfungsi dalam modul keadaan itu untuk mendaftarkan repositori pakej. Dengan url_kunci atribut, awak
maklumkan kepada garam bahawa kunci GPG (perisai ASCII) yang diperlukan untuk mengesahkan tandatangan repositori boleh diambil daripada /srv/salt/offsec-apt-key.asc pada tuan garam. The memerlukan_dalam atribut memastikan bahawa keadaan ini diproses sebelum lalai offsec, kerana yang kedua memerlukan repositori dikonfigurasikan dengan betul untuk dapat memasang pakej.
. lalai offsec state memasang pakej dengan nama yang sama. Ini menunjukkan bahawa nama kunci selalunya merupakan nilai penting untuk negeri, walaupun ia sentiasa boleh diganti dengan a nama at- tribute (seperti yang dilakukan untuk bekas negeri). Untuk kes mudah seperti ini, ini boleh dibaca dan ringkas.
Keadaan terakhir (ssh_key_for_root) menambah kunci SSH yang diberikan dalam nama atribut kepada /root/.ssh/ authorized_keys (pengguna sasaran ditetapkan dalam pengguna atribut). Ambil perhatian bahawa kami telah memendekkan kunci untuk kebolehbacaan di sini, tetapi anda harus meletakkan kunci penuh dalam atribut nama.
Fail keadaan ini seterusnya boleh digunakan pada minion yang diberikan:
pelayan# garam kali-calar keadaan.apply offsec
kali-scratch:
----------
ID: offsec_repository Fungsi: pkgrepo.managed
Nama: deb http://pkgrepo.offsec.com offsec-internal utama Keputusan: Benar
Komen: Deb repo pakej yang dikonfigurasikan http://pkgrepo.offsec.com offsec-internal
➥ utama'
Bermula: 06:00:15.767794
Tempoh: 4707.35 ms Perubahan:
----------
repos:
deb http://pkgrepo.offsec.com offsec-internal utama
----------
ID: offsec-defaults Fungsi: pkg.installed
Keputusan: Benar
Ulasan: Pakej berikut telah dipasang/dikemas kini: offsec-defaults Bermula: 06:00:21.325184
Tempoh: 19246.041 ms Perubahan:
----------
lalai offsec:
----------
baru:
1.0
tua:
----------
ID: ssh_key_for_root Fungsi: ssh_auth.present
pelayan# garam kali-calar keadaan.apply offsec
kali-scratch:
----------
ID: offsec_repository Fungsi: pkgrepo.managed
Nama: deb http://pkgrepo.offsec.com offsec-internal utama Keputusan: Benar
Komen: Deb repo pakej yang dikonfigurasikan http://pkgrepo.offsec.com offsec-internal
➥ utama'
Bermula: 06:00:15.767794
Tempoh: 4707.35 ms Perubahan:
----------
repos:
deb http://pkgrepo.offsec.com offsec-internal utama
----------
ID: offsec-defaults Fungsi: pkg.installed
Keputusan: Benar
Ulasan: Pakej berikut telah dipasang/dikemas kini: offsec-defaults Bermula: 06:00:21.325184
Tempoh: 19246.041 ms Perubahan:
----------
lalai offsec:
----------
baru:
1.0
tua:
----------
ID: ssh_key_for_root Fungsi: ssh_auth.present
Nama: ssh-rsa AAAAB3NzaC1yc2...89C4N rhertzog@kali Keputusan: Benar
Komen: Kunci hos yang dibenarkan AAAAB3NzaC1yc2...89C4N untuk akar pengguna telah ditambahkan Bermula: 06:00:40.582539
Tempoh: 62.103 ms Perubahan:
---------- AAAAB3NzaC1yc2...89C4N:
Baru
Ringkasan untuk kali-scratch
------------
Berjaya: 3 (berubah=3)
Gagal: 0
------------
Jumlah negeri dijalankan: 3
Jumlah masa larian: 24.015 s
Nama: ssh-rsa AAAAB3NzaC1yc2...89C4N rhertzog@kali Keputusan: Benar
Komen: Kunci hos yang dibenarkan AAAAB3NzaC1yc2...89C4N untuk akar pengguna telah ditambahkan Bermula: 06:00:40.582539
Tempoh: 62.103 ms Perubahan:
---------- AAAAB3NzaC1yc2...89C4N:
Baru
Ringkasan untuk kali-scratch
------------
Berjaya: 3 (berubah=3)
Gagal: 0
------------
Jumlah negeri dijalankan: 3
Jumlah masa larian: 24.015 s
Ia juga boleh dikaitkan secara kekal kepada minion dengan merakamnya dalam /srv/salt/top.sls
fail, yang digunakan oleh negeri.highstate perintah untuk menggunakan semua keadaan yang berkaitan dalam satu pas:
pelayan# kucing /srv/salt/top.sls
asas:
kali-scratch:
- offsec
pelayan# keadaan garam kali-calar.keadaan tinggi
kali-scratch:
----------
ID: offsec_repository Fungsi: pkgrepo.managed
Nama: deb http://pkgrepo.offsec.com offsec-internal utama Keputusan: Benar
Komen: Pakej repo 'deb http://pkgrepo.offsec.com offsec-internal main' sudah
➥ dikonfigurasikan Bermula: 06:06:20.650053
Tempoh: 62.805 ms Perubahan:
----------
ID: offsec-defaults Fungsi: pkg.installed
Keputusan: Benar
Ulasan: Pakej offsec-defaults sudah dipasang Bermula: 06:06:21.436193
Tempoh: 385.092 ms Perubahan:
----------
ID: ssh_key_for_root
pelayan# kucing /srv/salt/top.sls
asas:
kali-scratch:
- offsec
pelayan# keadaan garam kali-calar.keadaan tinggi
kali-scratch:
----------
ID: offsec_repository Fungsi: pkgrepo.managed
Nama: deb http://pkgrepo.offsec.com offsec-internal utama Keputusan: Benar
Komen: Pakej repo 'deb http://pkgrepo.offsec.com offsec-internal main' sudah
➥ dikonfigurasikan Bermula: 06:06:20.650053
Tempoh: 62.805 ms Perubahan:
----------
ID: offsec-defaults Fungsi: pkg.installed
Keputusan: Benar
Ulasan: Pakej offsec-defaults sudah dipasang Bermula: 06:06:21.436193
Tempoh: 385.092 ms Perubahan:
----------
ID: ssh_key_for_root
Fungsi: ssh_auth.present
Nama: ssh-rsa AAAAB3NzaC1yc2...89C4N rhertzog@kali Keputusan: Benar
Ulasan: Kunci hos yang dibenarkan AAAAB3NzaC1yc2...89C4N sudah ada untuk
➥ akar pengguna
Bermula: 06:06:21.821811
Tempoh: 1.936 ms Perubahan:
Ringkasan untuk kali-scratch
------------
Berjaya: 3
Gagal: 0
------------
Jumlah negeri dijalankan: 3
Jumlah masa larian: 449.833 ms
Fungsi: ssh_auth.present
Nama: ssh-rsa AAAAB3NzaC1yc2...89C4N rhertzog@kali Keputusan: Benar
Ulasan: Kunci hos yang dibenarkan AAAAB3NzaC1yc2...89C4N sudah ada untuk
➥ akar pengguna
Bermula: 06:06:21.821811
Tempoh: 1.936 ms Perubahan:
Ringkasan untuk kali-scratch
------------
Berjaya: 3
Gagal: 0
------------
Jumlah negeri dijalankan: 3
Jumlah masa larian: 449.833 ms