GNU/Linux >> Belajar Linux >  >> Linux

3 langkah untuk mengidentifikasi kandidat otomatisasi sistem Linux

Mengotomatiskan tugas yang kita lakukan adalah salah satu bagian terpenting dari pekerjaan kita sebagai sysadmin. Ini bukan hanya tentang melakukan banyak tugas yang diperlukan untuk menjaga dan menjalankan sistem yang kami dukung. Ini tentang memudahkan diri kita sendiri dan sysadmin lain yang mungkin mendukung kita saat kita sedang berlibur atau sakit; ini tentang memastikan bahwa kita dapat melakukan pekerjaan kita dengan cepat dan mudah dengan sedikit kerja dan intervensi dari pihak kita; ini tentang—hmm, haruskah aku benar-benar mengatakan ini—tentang menjadi sysadmin yang malas.

Saya telah banyak menulis tentang otomatisasi di buku dan artikel saya, dan mantra saya selalu, "otomatiskan semuanya." Tapi bagaimana Anda tahu harus mulai dari mana?

[ Anda mungkin juga menyukai: 8 tips untuk otomatisasi sistem Linux yang andal ]

Titik sakitnya

Saya memulai perjalanan menuju otomatisasi dengan mengurangi masalah utama untuk salah satu tugas terpenting yang dilakukan sysadmin—pencadangan. Saya mulai dengan jaringan yang sangat kecil: satu komputer dan koneksi internet. Pencadangan itu mudah, meskipun teknologinya adalah serangkaian tape drive yang akhirnya gagal.

Awalnya, saya mengetikkan perintah pada Jumat malam untuk mencadangkan semua direktori penting saya dan terkadang memeriksa untuk memverifikasi bahwa cadangan telah berhasil dibuat. Mereka—terutama—karena rekaman.

Saat jaringan saya berkembang dan saya bertanggung jawab atas jaringan selain jaringan saya sendiri, saya menemukan bahwa menggunakan baris perintah untuk membuat banyak cadangan menjadi sangat membosankan. Namun, teknologi semakin maju dan saya juga menemukan bahwa hard drive USB eksternal merupakan media pencadangan yang sangat baik, dan skrip membuat pencadangan beberapa komputer menjadi lebih mudah. Menggunakan tugas cron atau pengatur waktu systemd juga memungkinkan saya menjadwalkan pencadangan.

Sistem pencadangan saya saat ini menggunakan skrip Bash yang menggunakan rsync untuk membuat cadangan hingga selusin komputer di jaringan rumah saya yang ada. Cadangan pertama kali dibuat pada hard drive internal 4TB dan kemudian ditulis ke salah satu dari serangkaian hard drive USB eksternal 4TB. Saya dapat dengan mudah memindahkan drive eksternal ke brankas saya untuk pencadangan di luar lokasi. Anda dapat membaca tentang detail sistem pencadangan ini di artikel saya, Menggunakan rsync untuk mencadangkan sistem Linux Anda. Kuncinya adalah menemukan titik rasa sakit Anda yang paling intens dan mulai dengan itu.

Strategi saya

Saya benar-benar hanya memiliki satu strategi untuk menentukan apa yang harus diotomatisasi terlebih dahulu—atau selanjutnya. Ini hanya untuk menentukan tugas yang paling menyakitkan bagi saya saat ini. Rasa sakit itu mungkin karena harus menghabiskan banyak waktu berulang kali mengetik perintah yang sama, menunggu sesuatu terjadi sebelum memasukkan perintah berikutnya, mengingat sintaks yang tepat untuk perintah yang sering saya gunakan, atau apa pun.

Anda mungkin sudah tahu sumber paling menyakitkan dalam kehidupan sysadmin Anda. Itulah hal pertama yang harus Anda pertimbangkan untuk mengotomatisasi, terutama jika itu relatif kecil dan tidak sepenting atau sepenting sistem pencadangan yang lengkap dan canggih. Saya mulai dengan sistem pencadangan langsung yang menggunakan tar dan beberapa fitur menyenangkan SSH, yang saya tulis di Best Couple of 2015:tar dan ssh.

Poin nyeri lain bagi saya adalah melakukan pembaruan Fedora, termasuk perbaikan keamanan dan fungsional serta peningkatan fitur. Ini juga termasuk melakukan peningkatan dari satu rilis Fedora ke rilis berikutnya, seperti dari Fedora 32 ke Fedora 33.

Ada juga banyak opsi untuk menerapkan otomatisasi terlepas dari tugasnya. Salah satu bagian dari strategi saya adalah memulai dengan menggunakan skrip untuk memahami sepenuhnya solusi dan masalah apa pun yang mungkin dihadapi. Saya akan menulis skrip untuk memecahkan masalah pada satu host, menyalinnya ke semua host di jaringan, lalu mengetikkan baris perintah program Bash untuk melakukan tugas itu di semua host. Ini mengambil bentuk:

for host-name in `cat ~/list-of-hosts` ; do ssh host-name "script-name"; done

Tetapi bahkan itu menjadi tugas dan masalah lain dengan host yang cukup di jaringan yang cukup. Ini juga bisa menjadi masalah ketika beberapa host perlu diperlakukan berbeda dari yang lain. Saya menemukan bahwa alat yang lebih canggih seperti Ansible dapat mengotomatiskan tugas pada banyak host di jaringan sambil memperlakukan jenis tertentu, seperti server, secara berbeda dari stasiun kerja standar. Ansible tidak memerlukan distribusi skrip ke setiap host untuk melakukan tugasnya; bahkan tidak perlu diinstal di setiap host—hanya di sistem yang digunakan sebagai "hub".

Titik sakit PHB

Kita semua memiliki Bos Berambut Runcing (PHB), dan terkadang mereka adalah titik sakitnya. Misalkan beberapa PHB meminta daftar semua RPM pada komputer Linux tertentu dan deskripsi singkat masing-masing. Ini terjadi pada saya ketika saya bekerja di Negara Bagian North Carolina. Open source tidak "disetujui" untuk digunakan oleh lembaga negara pada waktu itu, dan saya hanya menggunakan Linux di komputer desktop saya. PHB memerlukan daftar setiap perangkat lunak yang diinstal di sistem saya sehingga mereka dapat "menyetujui" pengecualian.

Saya membutuhkan waktu sekitar lima menit untuk menulis skrip cepat yang dapat dijalankan berkali-kali di masa mendatang saat mereka menanyakan pertanyaan yang sama kepada saya. Ini mencantumkan paket RPM yang diinstal di host saya dan mengekstrak deskripsi dari setiap paket. Script ini menghasilkan daftar lebih dari 1.900 paket dengan deskripsi singkat masing-masing. Saya mengirimkan daftar ini ke PHB yang telah memintanya dan tidak pernah mendengarnya lagi—selamanya.

Terkadang titik nyeri mudah—dan cepat—diselesaikan. Tapi PHBS biasanya menuntut perhatian segera.

[ Mencari lebih banyak tentang otomatisasi sistem? Mulailah dengan The Automated Enterprise, buku gratis dari Red Hat. ] 

Pemikiran terakhir

Saya mulai dengan membuat skrip otomatisasi sederhana untuk mengatasi tugas yang paling menyakitkan bagi saya. Saya kemudian pindah ke titik nyeri berikutnya, dan seterusnya. Akhirnya, titik-titik nyeri asli itu kembali dan perlu disempurnakan menggunakan alat yang lebih canggih seperti Ansible. Ini adalah proses berulang yang tidak akan pernah berakhir.


Linux
  1. 10 Modul yang memungkinkan untuk otomatisasi sistem Linux

  2. Cara Mengubah Nama Host di Linux

  3. 8 tips untuk otomatisasi sistem Linux yang andal

  1. Cara menginstal Linux dalam 3 langkah

  2. Contoh Perintah "shutdown" di Linux

  3. Resize2fs Contoh Perintah di Linux

  1. Pengantar Sistem File Linux

  2. Persyaratan Sistem Kali Linux

  3. Red Hat Enterprise Linux (RHEL) 8 Langkah Instalasi dengan Tangkapan Layar