Pencarian Elastik

Visualisasikan Log Apache dengan Tumpukan ELK

Visualisasikan Log Apache dengan Tumpukan ELK

Memantau dan menganalisis log untuk pelbagai infrastruktur dalam masa nyata boleh menjadi pekerjaan yang sangat membosankan. Semasa berurusan dengan perkhidmatan seperti pelayan web yang selalu mencatat data, prosesnya sangat kompleks dan hampir mustahil.

Oleh itu, mengetahui cara menggunakan alat untuk memantau, memvisualisasikan, dan menganalisis log dalam masa nyata dapat membantu anda mengesan dan menyelesaikan masalah dan memantau aktiviti sistem yang mencurigakan.

Tutorial ini akan membincangkan bagaimana anda boleh menggunakan salah satu koleksi log masa nyata dan alat analisis- ELK. Dengan menggunakan ELK, yang biasanya dikenali sebagai Elasticsearch, Logstash, dan Kibana, anda dapat mengumpulkan, log, dan menganalisis data dari pelayan web apache dalam masa nyata.

Apa itu ELK Stack?

ELK adalah singkatan yang digunakan untuk merujuk kepada tiga alat sumber terbuka utama: Elasticsearch, Logstash, dan Kibana.

Pencarian elastik adalah alat sumber terbuka yang dikembangkan untuk mencari padanan dalam kumpulan data yang banyak menggunakan pilihan bahasa dan jenis pertanyaan. Ini adalah alat yang ringan dan cepat yang mampu menangani terabyte data dengan mudah.

Log masuk enjin adalah penghubung antara pelayan dan Elasticsearch, yang membolehkan anda mengumpulkan data dari pilihan sumber ke Elasticsearch. Ia menawarkan API kuat yang dapat disatukan dengan aplikasi yang dikembangkan dalam pelbagai bahasa pengaturcaraan dengan mudah.

Kibana adalah bahagian akhir timbunan ELK. Ini adalah alat visualisasi data yang membolehkan anda menganalisis data secara visual dan menghasilkan laporan yang mendalam. Ia juga menawarkan grafik dan animasi yang dapat membantu anda berinteraksi dengan data anda.

Tumpukan ELK sangat hebat dan dapat melakukan perkara analisis data yang luar biasa.

Walaupun pelbagai konsep yang akan kita bincangkan dalam tutorial ini akan memberi anda pemahaman yang baik mengenai timbunan ELK, pertimbangkan dokumentasi untuk maklumat lebih lanjut.

Pencarian elastik: https: // linkfy.ke / Elasticsearch-Reference

Log masuk: https: // linkfy.ke / LogstashReference

Kibana: https: // linkfy.ke / KibanaGuide

Cara Memasang Apache?

Sebelum kita mula memasang Apache dan semua pergantungan, ada baiknya kita perhatikan beberapa perkara.

Kami menguji tutorial ini pada Debian 10.6, tetapi ia juga akan berfungsi dengan pengedaran Linux yang lain.

Bergantung pada konfigurasi sistem anda, anda memerlukan izin sudo atau root.

Keserasian dan kegunaan stack ELK mungkin berbeza bergantung pada versi.

Langkah pertama adalah memastikan sistem anda dikemas kini sepenuhnya:

sudo apt-get kemas kini
sudo apt-get peningkatan

Perintah seterusnya adalah memasang pelayan web apache2. Sekiranya anda mahu apache minimum dipasang, alih keluar dokumentasi dan utiliti dari arahan di bawah.

sudo apt-get install apache2 apache2-utils apache2-doc -y
perkhidmatan sudo apache2 bermula

Sekarang, anda seharusnya mempunyai pelayan Apache yang berjalan di sistem anda.

Cara Memasang Elasticsearch, Logstash, dan Kibana?

Kita sekarang perlu memasang timbunan ELK. Kami akan memasang setiap alat secara berasingan.

Pencarian elastik

Mari kita mulakan dengan memasang Elasticsearch. Kami akan menggunakan apt untuk memasangnya, tetapi anda boleh mendapatkan pelepasan stabil dari halaman muat turun rasmi di sini:

https: // www.elastik.co / muat turun / elasticsearch

Elasticsearch memerlukan Java untuk dijalankan. Nasib baik, versi terbaru dibundel dengan pakej OpenJDK, menghilangkan kerumitan memasangnya secara manual. Sekiranya anda perlu melakukan pemasangan manual, rujuk sumber berikut:

https: // www.elastik.co / guide / en / elasticsearch / rujukan / semasa / persediaan.html # jvm-versi

Pada langkah seterusnya, kita perlu memuat turun dan memasang kunci tandatangan APT Elastik rasmi menggunakan arahan:

wget -qO - https: // artifak.elastik.co / GPG-KEY-elasticsearch | sudo apt-key tambah -

Sebelum meneruskan, anda mungkin memerlukan pakej apt-transport-https (diperlukan untuk pakej yang diserahkan melalui https) sebelum meneruskan pemasangan.

sudo apt-get install apt-transport-https

Sekarang, tambahkan maklumat apt repo ke sumbernya.senarai.d fail.

echo “deb https: // artifak.elastik.co / pakej / 7.x / apt stabil utama ”| sudo tee / etc / apt / sumber.senarai.d / elastik-7.x.senarai

Kemudian kemas kini senarai pakej pada sistem anda.

sudo apt-get kemas kini

Pasang Elasticsearch menggunakan arahan di bawah:

sudo apt-get install elasticsearch

Setelah memasang Elasticsearch, mulakan dan aktifkan permulaan boot dengan arahan systemctl:

sudo systemctl daemon-tambah nilai
sudo systemctl membolehkan elasticsearch.perkhidmatan
sudo systemctl mulakan elasticsearch

Perkhidmatan mungkin memerlukan sedikit masa untuk dimulakan. Tunggu beberapa minit dan sahkan bahawa perkhidmatan ini berjalan dan berjalan dengan arahan:

sudo systemctl status elasticsearch.perkhidmatan

Dengan menggunakan cURL, uji apakah Elasticsearch API tersedia, seperti yang ditunjukkan dalam output JSON di bawah:

curl -X DAPATKAN "localhost: 9200 /?cantik "

"name": "debian",
"cluster_name": "carian elastik",
"cluster_uuid": "VZHcuTUqSsKO1ryHqMDWsg",
"versi":
"nombor": "7.10.1 ",
"build_flavor": "lalai",
"build_type": "deb",
"build_hash": "1c34507e66d7db1211f66f3513706fdf548736aa",
"build_date": "2020-12-05T01: 00: 33.671820Z ",
"build_snapshot": salah,
"lucene_version": "8.7.0 ",
"minimum_wire_compatibility_version": "6.8.0 ",
"minimum_index_compatibility_version": "6.0.0-beta1 "
,
"Tagline": "Anda Tahu, untuk Pencarian"

Cara memasang Logstash?

Pasang pakej logstash menggunakan arahan:

sudo apt-get install logstash

Cara memasang Kibana?

Masukkan arahan di bawah untuk memasang kibana:

sudo apt-get install kibana

Cara Mengkonfigurasi Elasticsearch, Logstash, dan Kibana?

Inilah cara mengkonfigurasi timbunan ELK:

Cara Mengkonfigurasi Pencarian Elastik?

Di Elasticsearch, data disusun mengikut indeks. Setiap indeks ini mempunyai satu atau lebih pecahan. Shard adalah mesin pencari mandiri yang digunakan untuk menangani dan menguruskan indeks dan pertanyaan untuk subset dalam kelompok dalam Elasticsearch. Shard berfungsi sebagai contoh indeks Lucene.

Pemasangan Elasticsearch lalai menghasilkan lima pecahan dan satu replika untuk setiap indeks. Ini adalah mekanisme yang baik ketika dalam pengeluaran. Walau bagaimanapun, dalam tutorial ini, kami akan bekerjasama dengan satu keping dan tidak ada replika.

Mulakan dengan membuat templat indeks dalam format JSON. Dalam fail, kami akan menetapkan bilangan pecahan menjadi satu dan sifar replika untuk nama indeks yang sepadan (tujuan pembangunan).

Dalam Elasticsearch, templat indeks merujuk kepada bagaimana anda mengarahkan Elasticsearch dalam menyiapkan indeks semasa proses pembuatan.

Di dalam fail templat json (index_template.json), masukkan arahan berikut:


"templat": "*",
"tetapan":
"indeks":
"number_of_shards": 1,
"number_of_replicas": 0


Dengan menggunakan cURL, terapkan konfigurasi json ke templat, yang akan diterapkan ke semua indeks yang dibuat.

curl -X PUT http: // localhost: 9200 / _template / default -H 'Content-Type: application / json' -d @index_template.json
"diakui": benar

Setelah diterapkan, Elasticsearch akan bertindak balas dengan pernyataan yang diakui: benar.

Cara Konfigurasi Logstash?

Agar Logstash mengumpulkan log dari Apache, kita mesti mengkonfigurasinya untuk melihat perubahan dalam log dengan mengumpulkan, memproses, kemudian menyimpan log ke Elasticsearch. Untuk itu berlaku, anda perlu menyediakan jalur log pengumpulan di Logstash.

Mulakan dengan membuat konfigurasi Logstash dalam fail / etc / logstash / conf.d / apache.pengesahan

masukan
fail
jalan => '/ var / www / * / log / akses.log '
taip => "apache"


tapis
grok
padanan => "message" => "% COMBINEDAPACHELOG"


pengeluaran
carian elastik

Sekarang pastikan untuk mengaktifkan dan memulakan perkhidmatan logstash.

sudo systemctl mengaktifkan logstash.perkhidmatan
sudo systemctl mulakan logstash.perkhidmatan

Cara mengaktifkan dan mengkonfigurasi Kibana?

Untuk mengaktifkan Kibana, edit utama .fail konfigurasi yml terletak di / etc / kibana / kibana.yml. Cari entri berikut dan tanggalkannya. Setelah selesai, gunakan systemctl untuk memulakan perkhidmatan Kibana.

pelayan.pelabuhan: 5601
pelayan.hos: "localhost"
sudo systemctl mengaktifkan kibana.service && sudo systemctl mulakan kibana.perkhidmatan

Kibana membuat corak indeks berdasarkan data yang diproses. Oleh itu, anda perlu mengumpulkan log menggunakan Logstash dan menyimpannya di Elasticsearch, yang dapat digunakan oleh Kibana. Gunakan curl untuk menghasilkan log dari Apache.

Setelah anda mempunyai log dari Apache, lancarkan Kibana di penyemak imbas anda menggunakan alamat http: // localhost: 5601, yang akan melancarkan halaman indeks Kibana.

Pada dasarnya, anda perlu mengkonfigurasi pola indeks yang digunakan oleh Kibana untuk mencari log dan menghasilkan laporan. Secara lalai, Kibana menggunakan corak indeks logstash *, yang sesuai dengan semua indeks lalai yang dihasilkan oleh Logstash.

Sekiranya anda tidak mempunyai konfigurasi, klik buat untuk mula melihat log.

Cara Melihat Log Kibana?

Semasa anda terus melakukan permintaan Apache, Logstash akan mengumpulkan log dan menambahkannya ke Elasticsearch. Anda boleh melihat log ini di Kibana dengan mengklik pilihan Discover di menu sebelah kiri.

Tab penemuan membolehkan anda melihat log semasa pelayan menghasilkannya. Untuk melihat perincian log, cukup klik menu lungsur turun.

Baca dan fahami data dari log Apache.

Cara Mencari Log?

Di antara muka Kibana, anda akan menemui bar carian yang membolehkan anda mencari data menggunakan rentetan pertanyaan.

Contohnya: status: aktif

Ketahui lebih lanjut mengenai rentetan pertanyaan ELK di sini:

https: // www.elastik.co / guide / en / elasticsearch / rujukan / 5.5 / pertanyaan-dsl-pertanyaan-rentetan-pertanyaan.html # query-string-sintaks

Oleh kerana kita berurusan dengan log Apache, satu kemungkinan perlawanan adalah kod status. Oleh itu, cari:

tindak balas: 200

Kod ini akan mencari log dengan kod status 200 (OK) dan memaparkannya ke Kibana.

Cara Visualisasi Log?

Anda boleh membuat papan pemuka visual di Kibana dengan memilih tab Visualisasi. Pilih jenis papan pemuka yang akan dibuat dan pilih indeks carian anda. Anda boleh menggunakan lalai untuk tujuan pengujian.

Kesimpulannya

Dalam panduan ini, kami membincangkan gambaran keseluruhan bagaimana menggunakan timbunan ELK untuk menguruskan log. Walau bagaimanapun, terdapat lebih banyak teknologi yang dapat diliputi oleh artikel ini. Kami mengesyorkan anda meneroka sendiri.

Alat Berguna untuk Pemain Linux
Sekiranya anda suka bermain permainan di Linux, kemungkinan anda telah menggunakan aplikasi dan utiliti seperti Wine, Lutris dan OBS Studio untuk meni...
HD Remastered Games untuk Linux yang Tidak Pernah Melancarkan Linux Sebelumnya
Banyak pembangun dan penerbit permainan hadir dengan penghapus HD permainan lama untuk memperpanjang usia francais, harap peminat meminta keserasian d...
Cara Menggunakan AutoKey untuk Mengautomasikan Permainan Linux
AutoKey adalah utiliti automasi desktop untuk Linux dan X11, yang diprogramkan dalam Python 3, GTK dan Qt. Dengan menggunakan skrip dan fungsi MACRO, ...