Sistem Linux Anda adalah platform yang sangat baik untuk server dan desktop. Tetapi seperti sistem kompleks lainnya, memiliki pemantauan yang tepat sangat penting untuk menjaga sistem Anda tetap pada puncaknya. Untungnya, Sysdig sudah dekat!
Sysdig adalah alat pemantauan Linux komprehensif yang dapat memantau sistem Anda dari ancaman, kesalahan, pola penggunaan, dan banyak lagi. Dan dalam tutorial ini, Anda akan belajar menginstal Sysdig sambil menyoroti opsi konfigurasi tertentu di sepanjang jalan tentang cara memantau sistem Linux Anda dengan lebih baik.
Baca terus dan jangan pernah melewatkan 'peringatan' lagi!
Prasyarat
Tutorial ini akan menjadi demonstrasi langsung. Jika Anda ingin mengikuti, pastikan Anda memiliki yang berikut ini.
- Mesin Linux – Tutorial ini menggunakan Ubuntu 20.04 LTS, tetapi semua distribusi Linux akan berfungsi.
- Pengguna non-root dengan hak istimewa sudo.
Menginstal Sysdig di Linux
Alat baris perintah Sysdig biasanya tersedia di sebagian besar distribusi Linux modern, dan Anda dapat menginstal Sysdig seperti paket lain yang telah Anda instal sejauh ini di mesin Anda.
1. Buka terminal Anda, dan jalankan apt update
perintah di bawah ini untuk memastikan Anda memiliki pembaruan terbaru dari repositori distribusi Anda. Perintah ini memperbarui daftar paket sistem Anda dan mungkin perlu beberapa menit untuk diselesaikan.
sudo apt update -y
2. Selanjutnya, jalankan apt install
perintah di bawah untuk mengunduh (curl
) dan install
paket yang diperlukan untuk Sysdig. Perintah ini juga menginstal beberapa modul tambahan yang digunakan nanti dalam tutorial ini sebagai berikut:
gnupg
– Penjaga Privasi GNU adalah alat untuk komunikasi dan penyimpanan data yang aman. Paket ini memungkinkan pengunduhan kunci GPG publik Sysdig untuk memverifikasi validitas paket Sysdig.
software-properties-common
– Menyediakan cara cepat untuk mengelola sumber perangkat lunak Anda melalui lingkungan baris perintah atau GUI. Paket ini memungkinkan Anda menggunakanadd-apt-repository
perintah untuk menambahkan repositori paket Sysdig.
linux-headers-$(uname -r)
– Menyediakan file yang diperlukan untuk membangun modul kernel untuk kernel Anda yang sedang berjalan. Paket ini diperlukan karena Anda mungkin menginstal Sysdig pada mesin dengan kernel stok yang lebih lama.
sudo apt install gnupg software-properties-common curl -y && sudo apt install linux-headers-$(uname -r) -y
3. Jalankan curl
perintah di bawah ini untuk menambahkan kunci publik GPG Sysdig (GPG
) ke keyring APT Anda. Perintah ini memungkinkan Anda memverifikasi bahwa paket yang diunduh dari sysdig.com valid dan tidak dimodifikasi.
curl -s https://s3.amazonaws.com/download.draios.com/DRAIOS-GPG-KEY.public | apt-key add -
Anda akan mendapatkan pesan OK setelah Anda berhasil menambahkan kunci, seperti yang ditunjukkan di bawah ini.
4. Sekarang, jalankan curl
perintah di bawah ini untuk diam-diam (-s
) unduh repositori Sysdig sebagai draios.list
dan menambahkannya ke sistem Anda. .list
ekstensi memberi tahu APT Anda bahwa file tersebut adalah daftar URL untuk repositori, bukan hanya satu URL.
curl -s -o /etc/apt/sources.list.d/draios.list http://download.draios.com/stable/deb/draios.list
5. Jalankan kembali apt update
perintah di bawah ini untuk mengunduh repositori Sysdig baru dan memperbarui daftar paket APT Anda dengan informasi repositori baru.
sudo apt update -y
Anda akan melihat output berikut jika APT Anda dikonfigurasi dengan benar.
6. Setelah mengunduh repositori Sysdig, jalankan apt install
perintah di bawah ini untuk install sysdig
pada mesin Anda. Perintah ini mengunduh dan menginstal sysdig
paket dan paket pendukungnya.
sudo apt install sysdig -y
7. Terakhir, jalankan sysdig
perintah di bawah ini untuk memeriksa versi Sysdig yang terinstal di komputer Anda.
sudo sysdig --version
Nomor versi membantu menentukan apakah paket Sysdig Anda mutakhir. Versi ini juga memberikan wawasan tentang apakah rilis Sysdig memengaruhi kinerja sistem atau tidak.
Seperti yang ditunjukkan di bawah ini, 0.28.0 adalah versi terbaru dari sysdig saat tulisan ini dibuat. Nomor versi Anda mungkin berbeda.
Memantau Sistem Linux dengan csysdig
Sekarang Anda telah menginstal Sysdig, Anda dapat menggunakan Sysdig untuk melihat apa yang terjadi dengan sistem Anda. Alat baris perintah Sysdig memiliki banyak tanda yang memberi Anda pandangan berbeda tentang sistem Anda dan aktivitasnya. Contoh paling dasar adalah csysdig
perintah.
Jalankan perintah csysdig
tanpa tanda apa pun untuk melihat apa yang terjadi pada sistem Anda saat ini. Perintah tersebut akan menunjukkan aktivitas semua proses yang sedang berjalan.
Perhatikan bahwa Anda harus menjalankan perintah Sysdig dengan
sudo
hak istimewa untuk memiliki akses penuh ke sistem Anda. Beberapa aktivitas sistem mungkin disembunyikan secara default dari pengguna non-root, seperti output dari sistem file /proc. Sysdig juga membutuhkansudo
hak istimewa untuk memuat simbol kernel secara otomatis yang diperlukan untuk melakukan banyak triknya, seperti modul kernel sysdig-probe
sudo csysdig
Jika Anda mengalami kesalahan berikut, Anda harus menginstal ulang ncurses-term
kemasan. ncurses-term
paket cenderung rusak setelah instalasi Sysdig baru. Sysdig bergantung pada ncurses-term
paket untuk mendukung UI ncursesnya.
Jika csysdig
perintah berhasil, Anda akan mendapatkan output berikut diatur ke dalam tab.
Deskripsi | |
PID | ID Proses yang ditetapkan oleh kernel Linux. Anda menggunakan PID untuk mengidentifikasi dan mengelola proses. |
PPID | ID proses induk dari proses. Anda menggunakan PPID untuk melacak proses kembali melalui proses induknya. Bersama-sama, PID dan PPID secara unik mengidentifikasi proses di sistem Anda. |
CPU | Persentase CPU yang digunakan oleh aplikasi sejak aplikasi dimulai dapat dilihat pada skala dari 0 hingga 100%, di mana 100% sama dengan total penggunaan CPU. Anda menggunakan penggunaan CPU untuk menemukan aplikasi yang memonopoli sumber daya sistem. |
USER | Nama pengguna yang memulai proses. Anda menggunakan USER untuk mencari tahu siapa yang menjalankan proses yang Anda minati. |
TH | Nama pengguna yang memulai proses. Anda menggunakan USER untuk mencari tahu siapa yang menjalankan proses yang Anda minati. |
VIRT | Jumlah total memori virtual yang digunakan oleh aplikasi. Anda menggunakan VIRT untuk menemukan aplikasi yang memonopoli memori sistem Anda. |
RES | Jumlah halaman memori tetap yang dimiliki suatu proses, seperti yang dipetakan ke memori fisik. Anda menggunakan RES untuk menemukan aplikasi yang memonopoli memori sistem Anda. |
FILE | Descriptor file disk yang digunakan oleh aplikasi. Anda menggunakan FILE untuk melihat file mana yang sering dibaca atau ditulis, biasanya merupakan indikasi aktivitas I/O. |
NET | Descriptor soket jaringan yang digunakan oleh aplikasi. Anda menggunakan NET untuk melihat koneksi jaringan mana yang digunakan oleh proses, dan berapa banyak data yang ditransfer dalam byte per detik. |
Perintah | Descriptor soket jaringan yang digunakan oleh aplikasi. Anda menggunakan NET untuk melihat koneksi jaringan mana yang digunakan oleh proses, dan berapa banyak data yang ditransfer dalam byte per detik. |
Sekilas, antarmuka csysdig terlihat mirip dengan alat pemantauan seperti htop.
Tekan F2 dan tab atas akan berubah untuk menampilkan kumpulan informasi baru yang diatur ke dalam tab di sebelah kiri, seperti yang ditunjukkan di bawah ini.
Sysdig menyebut ini "tampilan" karena mereka adalah tampilan sistem yang berbeda, diatur oleh jenis informasi yang mereka tampilkan, menawarkan lebih banyak konteks. Dan karena tampilan ini berbasis skrip LUA, Anda dapat menyesuaikan skrip untuk mengekstrak data yang berbeda dari sistem dan mengubah tampilan sesuai keinginan.
Secara default, skrip LUA terletak di /usr/share/sysdig/chisels direktori, seperti yang ditunjukkan di bawah ini.
ls /usr/share/sysdig/chisels
Memantau Proses yang Menggunakan CPU dengan Sysdig Chisels
Sysdig menawarkan beberapa pahat siap pakai yang secara otomatis mengumpulkan informasi sistem tertentu, yang dikenal sebagai "pahat". Mungkin Anda mengalami kinerja yang lambat pada CPU Anda. Jika demikian, jalankan sysdig
perintah dengan pahat tertentu memungkinkan Anda melihat aplikasi/proses mana yang menghabiskan sebagian besar penggunaan CPU Anda.
1. Jalankan sysdig
perintah di bawah ini untuk membuat daftar pahat yang tersedia.
sudo sysdig -cl
Tangkapan layar di bawah ini hanya menunjukkan beberapa pahat. Tetapi Anda dapat menemukan dan mempelajari daftar lengkap semua pahat yang tersedia di dokumentasi resmi.
Pahat Sysdig juga merupakan skrip LUA. Anda bisa buat pahat Anda sendiri untuk memantau informasi sistem tertentu atau menerapkan pandangan Anda sendiri, tetapi topik ini berada di luar cakupan tutorial ini.
2. Selanjutnya, jalankan perintah di bawah ini untuk melihat informasi detailnya (-i
) tentang pahat tertentu, seperti topprocs_cpu
dalam demo ini.
sudo sysdig -i topprocs_cpu
Anda dapat melihat semua informasi tentang pahat topprocs_cpu di bawah ini, termasuk nama pahat, kategori, dan deskripsi singkat tentang fungsi pahat.
Dalam contoh ini, pahat topprocs_cpu dikategorikan sebagai Penggunaan CPU dan Menunjukkan proses teratas yang ditentukan oleh penggunaan CPU tertinggi.
Setelah Anda memahami fungsi pahat, Anda dapat mulai menggunakan pahat tersebut.
3. Jalankan sysdig
perintah di bawah ini, menentukan pahat kanan (-c topprocs_cpu
) untuk menemukan aplikasi yang menggunakan jumlah CPU tertinggi di sistem Anda.
sudo sysdig -c topprocs_cpu
Sysdig menangkap 10 proses paling memakan CPU dalam demo ini dan mencetaknya di terminal. Proses paling intensif CPU akan ditampilkan di atas (sshd), membuatnya lebih cepat ditemukan.
Memantau Informasi Sistem yang Difilter
Dalam beberapa kasus, outputnya sangat besar, sehingga sulit untuk menyaring informasi sistem berdasarkan pahat tertentu. Untungnya, Sysdig menawarkan opsi pemfilteran yang kuat yang menggunakan sintaks Lua sehingga Anda dapat melakukan pemfilteran yang efektif.
Misalkan Anda hanya mencari proses sshd yang berkontribusi pada penggunaan CPU yang tinggi. Anda dapat menentukan ekspresi filter dengan PID atau nama proses tertentu.
Jalankan sysdig
di bawah ini perintah untuk hanya menampilkan sshd
proses yang menggunakan banyak CPU.
sudo sysdig proc.name=sshd
Seperti yang ditunjukkan di bawah ini, Anda akan mendapatkan output yang difilter tanpa mendapatkan informasi proses lainnya.
Dari output tersebut, Anda bisa mendapatkan informasi lebih lanjut tentang proses sshd, seperti mengapa proses sshd menggunakan lebih banyak CPU atau memori, dan sebagainya.
Membuat File Log Peristiwa untuk Memantau Sistem Anda
Salah satu fitur hebat yang ditawarkan Sysdig adalah file log peristiwa, yang memungkinkan Anda mengumpulkan semua informasi tentang apa yang dilakukan aplikasi atau sistem Anda untuk analisis nanti. File log peristiwa memberikan informasi yang sama seperti output baris perintah pada contoh sebelumnya tetapi disimpan ke file di disk.
1. Jalankan perintah di bawah ini buat file (-w
) disebut ata.scap
di direktori home Anda, di mana Syslog akan menyimpan semua sysdig
keluaran.
Ekstensi file .scap memungkinkan penyimpanan aliran data dalam bentuk teks yang dapat dibaca manusia.
sudo sysdig -w ata.scap
2. Selanjutnya, jalankan ls -la
perintah di bawah ini untuk mendaftar semua file di direktori kerja.
ls -la
Anda akan melihat file baru bernama ata.scap di direktori home Anda, seperti yang ditunjukkan di bawah ini.
3. Terakhir, jalankan perintah di bawah ini agar Sysdig dapat membaca (-r
) file log peristiwa Sysdig (ata.scap
) dan cetak perilaku sistem Anda saat Anda melakukan SSH ke server Anda.
sudo sysdig -r ata.scap
Kesimpulan
Pada artikel ini, Anda mempelajari cara menginstal Sysdig di Ubuntu 20.04 dan menggunakan csysdig untuk mengumpulkan sistem, aplikasi, dan informasi keamanan Anda. Anda juga menyentuh pembuatan file log peristiwa yang memungkinkan Anda merekam perilaku sistem Anda.
Pada titik ini, Anda telah menyadari bahwa menginstal Sysdig di sistem Anda memberi Anda alat yang hebat. Dan alat ini membantu Anda mendapatkan lebih banyak wawasan tentang cara kerja sistem, aplikasi, dan infrastruktur Anda.
Sekarang, dengan pengetahuan baru ini, mengapa tidak belajar memecahkan kode lalu lintas HTTP Anda dengan Sysdig? Atau bagaimana cara melacak kemacetan aplikasi dengan pelacak Sysdig?