Cara Menggunakan Modul Ansible Untuk Tugas Pentadbiran Sistem - Bahagian 6

Cara Menggunakan Modul Ansible Untuk Tugas Pentadbiran Sistem - Bahagian 6

Di dalam ini Bahagian 6 Daripada siri Ansible, kami telah merangkumi beberapa modul ansible dalam topik yang lalu, kami kini akan lebih mendalam dan menemui modul tambahan yang membantu dalam melaksanakan beberapa tugas pentadbiran sistem.

Anda akan mendapat idea asas setiap modul dan melihat pilihan yang tersedia untuk menyelesaikan tugas tertentu.

Di halaman ini:
  1. Menguruskan pakej perisian dan repositori di Ansible
  2. Menguruskan Perkhidmatan Menggunakan Ansible
  3. Menguruskan Firewall dengan Ansible
  4. Mengarkibkan fail atau folder dengan Ansible
  5. Jadual tugas dengan Ansible
  6. Urus pengguna dan kumpulan dengan Ansible
  7. Buat fail dan direktori dengan Ansible
  8. Menguruskan penyimpanan dengan Ansible
  9. Menguruskan sistem fail dengan Ansible

1. Menguruskan pakej perisian dan repositori di Ansible

Semasa memasang pakej pada sistem linux, pengedaran yang berbeza datang dengan pengurus pakej yang berbeza. Untuk Topi merah pengagihan, kami mempunyai yum & dnf sementara untuk Debian perisa, ada yang tepat.

Ansible dilengkapi dengan modul yang dipanggil pakej, yang menghilangkan keperluan untuk menggunakan pengurus pakej yang berbeza untuk sistem yang berbeza. Ia secara automatik menggunakan pengurus pakej yang sepadan dengan sistem tuan rumah, dengan itu membuat kerja lebih mudah.

Pasang pakej perisian

Contohnya, untuk memasang HTOP dalam kumpulan tuan rumah terdiri daripada kedua -duanya Debian & Topi merah distros menggunakan pakej modul seperti yang ditunjukkan dalam install_htop.yml Playbook di bawah.

--- - Nama: Pasang HTOP di Ubuntu dan Centos Hosts: Semua Tugas: - Pakej: Nama: HTOP Negeri: Dipasang 
Pasang perisian menggunakan modul pakej Ansible

CATATAN: Nama pakej mungkin berbeza dari satu sistem operasi ke yang lain. Contohnya, kita ada httpd dalam Topi merah pengagihan dan Apache2 untuk Debian/Ubuntu Sistem yang semuanya menunjukkan webserver Apache. Oleh itu, berhati -hati perlu diambil semasa lulus pakej ini. Biasanya, sebaiknya menggunakan pembolehubah atau pernyataan bersyarat.

2. Menguruskan Perkhidmatan Menggunakan Ansible

Seterusnya, kami mempunyai perkhidmatan modul, yang digunakan untuk menguruskan perkhidmatan pada sistem linux. Ia digunakan untuk memulakan, menghentikan atau memulakan semula perkhidmatan. Anda juga boleh menggunakannya untuk membolehkan perkhidmatan supaya apabila sistem but, ia secara automatik memulakan perkhidmatan.

Mulakan dan aktifkan perkhidmatan

Contohnya, untuk memulakan & membolehkan webserver Apache di RHEL 8, Gunakan perkhidmatan seperti yang ditunjukkan.

--- - Nama: Mula dan Dayakan Hos Perkhidmatan Httpd: Tugas Webservers: - Perkhidmatan: Nama: Httpd Negeri: Dimulakan Diaktifkan: Ya 
Urus perkhidmatan dengan Ansible

Hentikan perkhidmatan

Untuk berhenti httpd perkhidmatan, lulus berhenti atribut.

--- - Nama: Stop Httpd Host Service: Webservers Tasks: - Service: Nama: HTTPD Negeri: Berhenti 
Berhenti perkhidmatan dengan Ansible

Mulakan semula perkhidmatan

Untuk memulakan semula httpd perkhidmatan, lulus dimulakan semula atribut.

--- - Nama: Mulakan semula hos perkhidmatan httpd: Tugas Webservers: - Perkhidmatan: Nama: HTTPD Negeri: Dimulakan semula 
Mulakan semula perkhidmatan dengan Ansible

3. Menguruskan Firewall dengan Ansible

Satu lagi pentadbir sistem tugas penting adalah pengurusan firewall. Dalam buku playbooks, ini telah dibuat lebih mudah dengan Firewalld dan ufw modul. Anda boleh mengkonfigurasi firewall untuk membenarkan atau menyekat pelabuhan atau perkhidmatan atau alamat sumber.

Mari melompat masuk dan lihat beberapa contoh:

Buka/blok port 80 di firewalld

--- - Nama: Benarkan Port 80 Hos: Tugas Webservers: -Firewalld: Port: 80/TCP Tetap: Ya Negeri: didayakan 

Dalam buku main di atas, Port 80 dibenarkan melintasi firewall.

Pilihan Tetap: Ya Menguatkuasakan peraturan firewall dan menjadikannya berterusan di reboot. Walau bagaimanapun, peraturan ini tidak terpakai dengan segera. Ia hanya berkuat kuasa selepas reboot. Untuk menguatkuasakan peraturan dengan segera, gunakan pilihan Segera: Ya.

Untuk menentukan alamat yang dibenarkan, gunakan Sumber: 0.0.0.0/0 penyata.

- Firewalld: Sumber: 192.168.0.0/24 Zon: Negeri Awam: Diaktifkan 

Untuk menentukan pelbagai port yang dibenarkan menggunakan pilihan port seperti berikut:

- Firewalld: Pelabuhan: 213-567/UDP Tetap: Ya Negeri: Diaktifkan 

Untuk menyekat pelabuhan menukar pilihan keadaan ke kurang upaya seperti yang ditunjukkan:

-Firewalld: Port: 80/TCP Tetap: Ya Negeri: Dilumpuhkan 

Tambahkan/menyekat perkhidmatan di firewalld

Selain menambah/menyekat port, anda juga boleh menggunakan peraturan yang sama untuk perkhidmatan. Dan ia agak mudah. Hanya gunakan perkhidmatan modul dan tambahkan perkhidmatan untuk ditambah dan pastikan pilihan negeri ditetapkan ke didayakan.

- Firewalld: Perkhidmatan: HTTPS Tetap: Benar Negeri: didayakan 

Untuk menyekat perkhidmatan menetapkan Negeri pilihan untuk kurang upaya.

- Firewalld: Perkhidmatan: HTTPS Tetap: Benar Negeri: Dilumpuhkan 

4. Mengarkibkan fail atau folder dengan Ansible

Pengarsipan merujuk kepada pemampatan fail atau folder ke format yang mudah mudah alih dan lebih kecil. Kapal ansible dengan modul yang dipanggil arkib. Memampatkan fail hampir semudah itu. Yang diperlukan ialah menentukan laluan sumber fail dan destinasi fail termampat.

Memampatkan direktori

Pertimbangkan buku main memampatkan.yml di bawah.

--- - Hos: Tugas Webservers: • Nama: Memampatkan Arkib Folder: Laluan:/Opt/Data/Web Dest:/TMP/Web.Gz 

Buku play di atas memampatkan /memilih/data/web direktori dan menjimatkannya ke /TMP/Web.Gz.

Buat arkib dengan ansible

Memampatkan direktori dengan format

Format mampatan lalai adalah .Gz, Walau bagaimanapun, ini boleh ditentukan menggunakan atribut format. Contoh buku main seterusnya.

--- - Hos: Tugas Webservers: - Nama: Buat Arkib Arkib Zip: Laluan:/Opt/Data/Web Dest:/TMP/Format Web: ZIP 

Buku main di atas memampatkan /memilih/data/web direktori ke /TMP/Web.zip.

Tidak membuat fail

Anda juga boleh mengadakan fail termampat menggunakan tidak menentu atribut. Pertimbangkan buku main di bawah.

--- - Hos: Tugas Webservers: - Nama: Uncompress /TMP /Web.Direktori Gz ke/Opt pada Pengawal Ansible Unarchive: Src:/TMP/Web.BZ2 DEST: /OPT / 

Buku Play di atas tidak memadam fail /memilih/data/web.Gz ke /Memilih pada pengawal ansible.

Tidak memaparkan fail pada nod jauh

Untuk menentukan sistem sumber jauh gunakan remote_src = ya pilihan.

--- - Hos: Tugas Webservers: - Nama: Uncompress /TMP /Web.BZ2 TO/OPT ON REMOTE HOST UNARCHIVE: SRC:/TMP/WEB.BZ2 DEST: /OPT / remote_src = ya 

Buku Play di atas tidak memadam fail /TMP/Web.BZ2 di nod jauh ke /Memilih/ direktori.

5. Jadual tugas dengan Ansible

Cron modul Membantu dalam penjadualan pekerjaan dalam buku main ansible.

Buat tugas yang dijadualkan

Pertimbangkan buku main di bawah.

--- - Hos: Tugas Webservers: - Nama: Buat Tugas Tugas Berjadual: Nama: Jalankan Pekerja Kehadiran Pekerja.SH Bulan: 4 Hari: 5 Jam: 17 minit: 00 

Buku main menjalankan skrip kehadiran pada 5 April jam 5:00 petang.

Jadualkan skrip pada tarikh tertentu

Sekiranya anda ingin menjadualkan skrip ini untuk dijalankan hanya jika hari ke -5 April adalah hari Isnin, maka gunakan hari kerja: 1 atribut. 0 menandakan hari Ahad dan 6 menandakan Sabtu mengikut notasi Cron.

Bulan: 4 Hari: 5 Jam: 17 minit: 00 Hari minggu: 1 

An asterisk (*) dalam mana -mana bidang ini menunjukkan sebarang nilai.

Jalankan pekerjaan pada tarikh

Untuk menjalankan tugas pada 5 April jam 5:00 petang tidak kira apa hari kerja, gunakan parameter masa seperti yang ditunjukkan.

Bulan: 4 Hari: 5 Jam: 17 minit: 00 Hari minggu: * 

Jalankan pekerjaan pada hari tertentu pada setiap bulan

Untuk melaksanakan pekerjaan Cron pada hari ke -5 setiap bulan jam 5:00 petang Gunakan tetapan di bawah.

Bulan: * Hari: 5 Jam: 17 minit: 00 hari kerja: * 

Melaksanakan pekerjaan setiap hari

Untuk melaksanakan pekerjaan Cron setiap hari pada pukul 5:00 petang tetapkan masa seperti yang ditunjukkan:

Bulan: * Hari: * Jam: 17 minit: 00 hari kerja: * 

Jalankan pekerjaan pada setiap 5 jam

Untuk melaksanakan pekerjaan Cron setiap 5 jam, gunakan nilai langkah */5 seperti yang ditunjukkan.

Bulan: * Hari: * Jam: */5 minit: * Hari minggu: * 

6. Urus pengguna dan kumpulan dengan Ansible

Anda juga boleh menguruskan pengguna dan kumpulan di dalam buku kecil Ansible dengan mudah.

Buat pengguna baru

Untuk membuat pengguna baru, gunakan pengguna modul seperti yang ditunjukkan.

--- - Hos: Tugas Webservers: - Nama: Buat Pengguna Pengguna Baru: Nama: Jack 

Anda juga boleh menambah pilihan tambahan seperti UID, kumpulan.

- Nama: Buat Pengguna Baru Pengguna: Nama: Jack Komen: Jack Peters UID: 1002 Kumpulan: Pentadbir Shell: /Bin /Bash 

Keluarkan pengguna

Untuk mengalih keluar pengguna, gunakan Keluarkan: Ya penyata.

- Nama: Keluarkan Pengguna 'Jack' Pengguna: Nama: Jack State: Absent Keluarkan: Ya 

Buat kumpulan baru

Untuk membuat kumpulan baru, gunakan kumpulan modul.

- Nama: Buat Kumpulan Kumpulan: Nama: Pemaju 

7. Buat fail dan direktori dengan Ansible

Untuk membuat fail direktori, gunakan fail modul.

Buat direktori baru

Contohnya, untuk membuat direktori baru.

--- - Hos: Tugas Webservers: - Nama: Buat Fail Direktori Baru: Path: /Opt /App State: Direktori 

Anda boleh menambah atribut lain seperti pemilik, kumpulan dan kebenaran fail.

- Hos: Tugas Webservers:-Nama: Buat Fail Direktori Baru: Path: /Opt /Web State: Direktori Pemilik: Www-Data Group: Www-Data Mode: 0644 

Di samping itu, anda boleh membuat direktori secara rekursif menggunakan RECURSE: Ya penyata.

--- - Hos: Tugas Webservers:-Nama: Buat Direktori Recursively File: Path:/Opt/Web/App State: Direktori Pemilik: Www-Data Group: Www-Data Mode: 0644 Recurse: Ya 

Buat fail

Untuk membuat fail, gunakan Negeri: Sentuh pilihan.

--- - Hos: Tugas Webservers: - Nama: Buat Fail Fail Baru: Path:/Opt/Web/Index.html Negeri: Sentuh Pemilik: Kumpulan WWW-Data: Mod www-data: 0644 

8. Menguruskan penyimpanan dengan Ansible

The lvg Modul digunakan untuk mengkonfigurasi jumlah dan kumpulan LVM.

Buat kumpulan kelantangan LVM

Pertimbangkan buku main di bawah:

--- - Hos: Tugas Webservers: • Nama: Buat LVM Volume Group LVG: VG: VG1 PVS: /Dev /SDA1 PESIZE: 32 

Ini mewujudkan kumpulan kelantangan di atas /dev/sda1 pemisahan dengan saiz tahap fizikal 32 Mb.

Setelah dibuat, gunakan lvol modul untuk mencipta jumlah logik seperti yang ditunjukkan

Buat kelantangan logik

--- - Hos: Tugas Webservers: - Nama: Buat LVM Volume LVOL: VG: VG1 LV: LVOL1 PVS: /DEV /SDA1 

9. Menguruskan sistem fail dengan Ansible

Untuk membuat sistem fail pada peranti blok, gunakan sistem fail modul.

Buat sistem fail

Buku main di bawah mewujudkan jenis sistem fail xfs pada jumlah blok.

--- - Hos: Tugas Webservers: - Nama: Buat sistem fail sistem fail: FStype: XFS Dev:/dev/vg1/lvol1 

Pasang sistem fail

Anda boleh meneruskan untuk melancarkan jumlah blok menggunakan gunung Modul seperti yang ditunjukkan dalam buku main di bawah:

--- - Hos: Tugas Webservers: - Nama: Gunung Filesystem Mount: FStype: XFS Src:/Dev/Vg1/Lvol1 Path:/Opt/Web State: Mounted 
Kesimpulan

Ini menyimpulkan topik. Kami telah meliputi pelbagai tugas pentadbiran sistem yang dapat dicapai oleh modul terbina dalam tertentu dalam buku main yang boleh.