GNU/Linux >> Belajar Linux >  >> Debian

Cara Install Saltstack Master dan Minion di Debian 11

SaltStack adalah perangkat lunak manajemen konfigurasi dan otomatisasi gratis, open-source, dan berbasis Python. Ini adalah alat baris perintah yang membantu Anda mengelola infrastruktur dari lokasi pusat. SoltStack terbuat dari empat komponen. Penjelasan singkat dari masing-masing komponen ditunjukkan di bawah ini:

  • Tuan Garam bertindak sebagai pengontrol baris perintah untuk antek-anteknya. Ini digunakan untuk mengontrol dan mengelola sejumlah antek.
  • Minion Garam adalah daemon budak yang menerima konfigurasi dan perintah dari master.
  • Rumus adalah file manajemen konfigurasi.
  • Eksekusi adalah sejumlah perintah dan modul yang dijalankan pada minion.

Pada artikel ini, saya akan menunjukkan cara menginstal sistem SaltStack Master dan Minion di Debian 11.

Prasyarat

  • Dua server menjalankan Debian 11.
  • Kata sandi root dikonfigurasi di server.

Instal Saltstack Master

Secara default, SaltStack tidak disertakan dalam repositori default Debian 11. Jadi, Anda perlu menambahkan repositori SaltStack ke APT. Anda dapat menambahkannya dengan menjalankan perintah berikut:

curl -fsSL -o /usr/share/keyrings/salt-archive-keyring.gpg https://repo.saltproject.io/py3/debian/11/amd64/latest/salt-archive-keyring.gpg 
echo "deb [signed-by=/usr/share/keyrings/salt-archive-keyring.gpg arch=amd64] https://repo.saltproject.io/py3/debian/11/amd64/main bullseye terbaru " | tee /etc/apt/sources.list.d/salt.list

Setelah repositori ditambahkan, perbarui cache repositori menggunakan perintah berikut:

apt-get update -y

Selanjutnya, instal dependensi yang diperlukan menggunakan perintah berikut:

apt-get install python3 salt-common -y

Selanjutnya, instal master SaltStack dengan perintah berikut:

apt-get install salt-master -y

Setelah instalasi berhasil, Anda dapat melanjutkan ke langkah berikutnya.

Konfigurasi Saltstack Master

Selanjutnya, Anda perlu mendefinisikan antarmuka bind di file konfigurasi SaltStack.

nano /etc/salt/master

Ubah baris berikut:

antarmuka:0.0.0.0

Simpan dan tutup file kemudian restart master SaltStack dengan perintah berikut:

systemctl restart salt-master

Anda sekarang dapat memverifikasi status SaltStack dengan perintah berikut:

systemctl status salt-master

Anda akan mendapatkan output berikut:

? salt-master.service - Server Salt Master Dimuat:dimuat (/lib/systemd/system/salt-master.service; diaktifkan; preset vendor:diaktifkan) Aktif:aktif (berjalan) sejak Sat 2022-02-12 07:39 :48 UTC; 9 detik yang lalu Dokumen:man:salt-master(1) file:///usr/share/doc/salt/html/contents.html https://docs.saltproject.io/en/latest/contents.html PID Utama:19403 (master garam) Tugas:32 (batas:2341) Memori:201,5 juta CPU:6.109s CGroup:/system.slice/salt-master.service ??19403 /usr/bin/python3 /usr/bin/salt- master ??19407 /usr/bin/python3 /usr/bin/salt-master ??19431 /usr/bin/python3 /usr/bin/salt-master ??19434 /usr/bin/python3 /usr/bin/salt -master ??19435 /usr/bin/python3 /usr/bin/salt-master ??19436 /usr/bin/python3 /usr/bin/salt-master ??19437 /usr/bin/python3 /usr/bin/ garam-master ??19444 /usr/bin/python3 /usr/bin/salt-master ??19445 /usr/bin/python3 /usr/bin/salt-master ??19446 /usr/bin/python3 /usr/bin /salt-master ??19448 /usr/bin/python3 /usr/bin/salt-master ??19451 /usr/bin/python3 /usr/bin/salt-master ??19454 /usr/bin/python3 /usr/bin/salt-masterFeb 12 07:39:48 debian11 systemd[1]:Memulai Server Salt Master...12 Feb 07:39:48 debian11 systemd[1]:Memulai Server Master Garam.

Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.

Instal dan Konfigurasikan Saltstack Minion

Pada titik ini, SaltStack Master diinstal dan dikonfigurasi. Sekarang, masuk ke komputer lain dan tambahkan repositori SaltStack Minion dengan perintah berikut:

curl -fsSL -o /usr/share/keyrings/salt-archive-keyring.gpg https://repo.saltproject.io/py3/debian/11/amd64/latest/salt-archive-keyring.gpg 
echo "deb [signed-by=/usr/share/keyrings/salt-archive-keyring.gpg arch=amd64] https://repo.saltproject.io/py3/debian/11/amd64/main bullseye terbaru " | tee /etc/apt/sources.list.d/salt.list

Setelah repositori ditambahkan, perbarui cache repositori menggunakan perintah berikut:

apt-get update -y

Selanjutnya, instal SaltStack Minion dengan perintah berikut:

apt-get install salt-minion -y

Setelah instalasi berhasil, edit file konfigurasi SaltStack Minion dan tentukan alamat IP master.

nano /etc/salt/minion

Ubah baris berikut:

master:salt-master-ip

Simpan dan tutup file setelah Anda selesai.

Selanjutnya, Anda perlu mengautentikasi minion menggunakan sidik jari publik master.

Pada mesin Salt Master, buat daftar semua sidik jari menggunakan perintah berikut:

salt-key --finger-all

Anda akan mendapatkan output berikut:

Local Keys:master.pem:b7:f0:ed:19:bf:e8:e0:9d:c3:9c:a2:09:2c:97:2f:6b:0f:cb:eb:76:3d:d7:d5:a9:7d:0c:3a:60:6e:9f:d7:78master.pub:5e:4f:2b:37:41:cc:4b:9c:b0:ed:cb:0a:fb:c7:59:54:5f:11:34:ab:d2:99:96:c1:e7:ef:4d:95:b0:7c:d3:d1

Sekarang, salin garis sidik jari master.pub dan tambahkan ke file konfigurasi Minion.

Pada mesin Minion, edit file konfigurasi:

nano /etc/salt/minion

Tambahkan sidik jari master seperti yang ditunjukkan di bawah ini:

master_finger:'5e:4f:2b:37:41:cc:4b:9c:b0:ed:cb:0a:fb:c7:59:54:5f:11:34:ab:d2:99:96:c1:e7:ef:4d:95:b0:7c:d3:d1'

Anda juga perlu menentukan nama Minion:

id:Minion1

Simpan dan tutup file kemudian restart SaltStack Minion menggunakan perintah berikut:

systemctl restart salt-minion

Anda juga dapat memverifikasi status SaltStack Minion dengan perintah berikut:

systemctl status minion garam

Anda akan mendapatkan output berikut:

? salt-minion.service - The Salt Minion Dimuat:dimuat (/lib/systemd/system/salt-minion.service; diaktifkan; preset vendor:diaktifkan) Aktif:aktif (berjalan) sejak Sat 2022-02-12 07:46:04 UTC; 7 detik yang lalu Dokumen:man:salt-minion(1) file:///usr/share/doc/salt/html/contents.html https://docs.saltproject.io/en/latest/contents.html PID Utama:2324 (salt-minion) Tugas:8 (batas:2341) Memori:59,9M CPU:1,185s CGroup:/system.slice/salt-minion.service ??2324 /usr/bin/python3 /usr/bin/salt- minion ??2326 /usr/bin/python3 /usr/bin/salt-minion ??2328 /usr/bin/python3 /usr/bin/salt-minionFeb 12 07:46:04 debian11 systemd[1]:Memulai Garam Minion...12 Feb 07:46:04 debian11 systemd[1]:Memulai Salt Minion.

Anda juga dapat memeriksa sidik jari antek menggunakan perintah berikut:

salt-call key.finger --local

Anda akan mendapatkan output berikut:

lokal:14:12:ef:33:d2:1e:49:23:7b:a2:74:8d:19:fc:be:5e:6d:a6:57:ec:4f:a9:da :23:69:3f:62:1b:6b:4b:2f:27

Pada mesin SaltStack Master, cocokkan sidik jari menggunakan perintah berikut:

salt-key --finger-all

Anda akan mendapatkan output berikut:

Local Keys:master.pem:b7:f0:ed:19:bf:e8:e0:9d:c3:9c:a2:09:2c:97:2f:6b:0f:cb:eb:76:3d:d7:d5:a9:7d:0c:3a:60:6e:9f:d7:78master.pub:5e:4f:2b:37:41:cc:4b:9c:b0:ed:cb:0a:fb:c7:59:54:5f:11:34:ab:d2:99:96:c1:e7:ef:4d:95:b0:7c:d3:d1Kunci Tidak Diterima:Minion1:14:12:ef:33 :d2:1e:49:23:7b:a2:74:8d:19:fc:be:5e:6d:a6:57:ec:4f:a9:da:23:69:3f:62:1b:6b :4b:2f:27

Di SaltStack Master, terima Minion menggunakan perintah berikut:

salt-key -a Minion1

Anda akan mendapatkan output berikut:

Kunci berikut akan diterima:Kunci Tidak Diterima:Minion1Lanjutkan? [n/Y] YKey untuk minion Minion1 diterima.

Sekarang, verifikasi koneksi antara Master dan Minion menggunakan perintah berikut:

pengujian garam Minion1.ping

Anda akan mendapatkan output berikut:

Minion1:Benar

Setelah selesai, Anda dapat melanjutkan ke langkah berikutnya.

Kontrol Minion dari Master

Setelah koneksi berhasil antara Master dan Minion. Mari kita mulai menjalankan beberapa perintah pada Minion.

Jalankan perintah berikut untuk membuat daftar ruang disk yang tersedia di Minion:

salt '*' disk.usage

Anda akan mendapatkan output berikut:

Minion1:---------- /:---------- 1K-blok:51538400 tersedia:47658628 kapasitas:4% sistem file:/dev/sda1 digunakan:1661604 /dev :---------- 1K-blok:998936 tersedia:998936 kapasitas:0% sistem file:udev yang digunakan:0 /dev/shm:---------- 1K-blok:1015232 tersedia :1015152 kapasitas:1% sistem file:tmpfs yang digunakan:80

Untuk menginstal paket Apache di Minion, jalankan perintah berikut:

salt Minion1 pkg.install apache2

Anda akan mendapatkan output berikut:

Minion1:---------- apache2:---------- baru:2.4.52-1~deb11u2 lama:apache2-bin:-------- -- baru:2.4.52-1~deb11u2 lama:apache2-data:---------- baru:2.4.52-1~deb11u2 lama:apache2-utils:-------- -- baru:2.4.52-1~deb11u2 lama:libapr1:---------- baru:1.7.0-6+deb11u1 lama:libaprutil1:---------- baru:1.6.1-5 lama:libaprutil1-dbd-sqlite3:---------- baru:1.6.1-5 lama:libaprutil1-ldap:---------- baru:1.6. 1-5 tua:

Untuk memeriksa memori kosong pada Minion, jalankan perintah berikut:

salt '*' cmd.run 'free -m'

Anda akan mendapatkan output berikut:

Minion1:total penggunaan buff/cache bersama gratis yang tersedia Mem:1982 140 1392 2 450 1691 Tukar:0 0 0

Gunakan File Status Salt untuk Mengelola Minion

File status juga dikenal sebagai file manajemen konfigurasi yang digunakan untuk mengonfigurasi dan mengelola Minion.

Untuk membuat file status, Anda perlu membuat basis lingkungan untuk SaltStack.

mkdir /src/salt

Selanjutnya, buat file status dengan perintah berikut:

nano /src/salt/setup.sls

Tambahkan kode berikut untuk menginstal paket PHP, UNZIP dan Apache di Minions:

network_utilities:pkg.installed:- pkgs:- php - unzip apache2_pkg:pkg.installed:- nama:apache2 apache2_service:service.running:- nama:apache2 - aktifkan:Benar - memerlukan:- pkg:apache2_pkg

Simpan dan tutup file kemudian terapkan konfigurasi ke semua Minion menggunakan perintah berikut:

salt '*' state.apply setup

Anda akan mendapatkan output berikut:

Minion1:---------- ID:network_utilities Fungsi:pkg.installed Hasil:True Comment:Paket-paket berikut telah diinstal/diperbarui:php, unzip Dimulai:07:51:22.424504 Durasi:17349.907 ms Perubahan:---------- libapache2-mod-php7.4:---------- baru:7.4.25-1+deb11u1 lama:php:------- --- baru:2:7.4+76 lama:php-umum:---------- baru:2:76 lama:php7.4:---------- baru:7.4 .25-1+deb11u1 lama:php7.4-cli:---------- baru:7.4.25-1+deb11u1 lama:php7.4-umum:--------- - baru:7.4.25-1+deb11u1 lama:php7.4-json:---------- baru:7.4.25-1+deb11u1 lama:php7.4-opcache:-------- -- baru:7.4.25-1+deb11u1 lama:php7.4-readline:---------- baru:7.4.25-1+deb11u1 lama:psmisc:-------- -- baru:23,4-2 lama:unzip:---------- baru:6.0-26 lama:---------- ID:apache2_pkg Fungsi:pkg.installed Nama:apache2 Hasil :True Comment:Semua paket yang ditentukan sudah diinstal Mulai:07:51:39.780956 Durasi:1029.457 ms Perubahan:---------- ID:apache2_service Fungsi:serv ice.running Nama:apache2 Hasil:Benar Komentar:Layanan apache2 sudah berjalan Dimulai:07:51:40,812210 Durasi:35,61 ms Perubahan:Ringkasan untuk Minion1------------Berhasil:3 (berubah =1)Gagal:0------------Total status berjalan:3Total waktu berjalan:18.415 detik

Kesimpulan

Selamat! Anda telah berhasil menginstal dan mengkonfigurasi SaltStack Master dan Minion di server Debian 11. Kami juga menjelaskan cara mengelola Minion menggunakan file status dan baris perintah. Saya harap ini akan membantu Anda untuk mengotomatisasi dan mengelola infrastruktur Anda dari lokasi pusat. Jangan ragu untuk bertanya kepada saya jika Anda memiliki pertanyaan.


Debian
  1. /usr/bin Vs /usr/local/bin Di Linux?

  2. Linux – Menggabungkan /usr/bin Dan /usr/sbin Ke /bin (gnu/linux)?

  3. Instal binari ke /bin, /sbin, /usr/bin dan /usr/sbin, interaksi dengan --prefix dan DESTDIR

  1. Cara Menginstal dan Menggunakan Ansible di Debian 11

  2. Cara Menginstal dan Mengamankan MariaDB di Debian 11

  3. Bagaimana cara membuat perintah python3 menjalankan Python 3.6, bukan 3.5?

  1. Cara Menginstal Node.js dan npm di Debian 11

  2. Apa perbedaan antara #!/usr/bin/env bash dan #!/usr/bin/bash?

  3. Apa arti dari /usr/sbin, /usr/local/sbin dan /usr/local/bin?