
Baru-baru ini, seorang pelanggan meminta kami untuk menerapkan sistem akuntansi kapasitas disk. Tugasnya adalah untuk menggabungkan informasi dari lebih dari tujuh puluh array disk dari vendor yang berbeda, dari switch SAN dan host VMware ESX. Kemudian data perlu disistematisasi, dianalisis, dan dapat ditampilkan pada dasbor dan berbagai laporan, misalnya, tentang volume ruang disk yang bebas dan ditempati di semua atau secara terpisah array yang diambil.
Kami memutuskan untuk mengimplementasikan proyek menggunakan sistem analisis operasional - Splunk.
Mengapa splunk
Splunk sangat kuat dalam memvisualisasikan data yang dikumpulkannya. Ini memungkinkan Anda membuat laporan interaktif - dasbor - diperbarui secara real time. Kami menampilkan informasi tentang total ruang disk pada mereka, segera menampilkan semua array dengan kemampuan untuk mengurutkan berdasarkan filter yang berbeda, misalnya, berdasarkan kapasitas. Dengan mengklik pada array, kami segera mendapatkan informasi tentang semua koneksi. Di panel terpisah, Anda dapat memasukkan nama mesin virtual dan melihat host ESX yang digunakannya, dari array mana ia menerima data dan parameter lainnya.
Menurut pendapat saya, sejauh ini Splunk tidak memiliki analog yang akan bekerja dengan sistem penyimpanan apa pun di luar kotak. Beberapa tahun yang lalu, CommandCentral berbayar muncul, tetapi tidak memiliki fleksibilitas yang diperlukan, tidak tahu bagaimana menghasilkan laporan yang sewenang-wenang (dalam versi pertama laporan tidak ada sama sekali) dan dengan visualisasi lumpuh. Secara umum, ini bukan alat untuk inventaris, tetapi untuk memantau dan mengendalikan status sistem. Untuk memenuhi tugas yang ditetapkan oleh pelanggan, itu harus disempurnakan untuk waktu yang lama dan mahal.
Pada saat yang sama, Splunk memiliki kemampuan tampilan informasi yang mengesankan: grafik dapat diatur secara bebas di antara mereka sendiri, memantau status semua sistem dalam mode jendela tunggal dan, dengan demikian, menyederhanakan pemeliharaannya. Untuk yang lainnya - untuk tugas kami, kami menggunakan versi gratis.

Apa yang kamu lakukan
Hingga saat ini, tim kami tidak memiliki pengalaman dengan Splunk. Untungnya, sistem ini ternyata ramah dan intuitif, dan solusi untuk masalah yang muncul dengan mudah ditemukan menggunakan bantuan reguler atau di mesin pencari.
Splunk telah membangun sejumlah alat yang kami butuhkan. Sebagai contoh, sistem memungkinkan Anda untuk menggabungkan data dari berbagai sumber untuk bidang apa pun melalui apa yang disebut Pencarian (direktori). Jadi, dalam satu tabel, host ESX ditampilkan sebagai IP, di yang lain - sebagai nama DNS. Pada awalnya, kami ingin membuat Pencarian buatan sendiri dan menggunakan utilitas nslookup untuk memilih catatan DNS dan mengumpulkan tabel, tetapi ternyata Splunk memiliki direktori yang membandingkan DNS lebih dari IP dan sebaliknya. Pencarian bawaan ini tidak harus dikonfigurasi, itu sendiri mengekstrak data tentang server DNS dari pengaturan sistem, dan tidak masalah apakah itu Windows atau Linux, dan data pada catatan DNS selalu up to date.

Salah satu skenario menarik yang diimplementasikan dengan Splunk adalah perubahan kontrol (RFC) dalam sistem. Misalnya, seorang manajer RFC menerima permintaan dari seorang insinyur untuk melayani salah satu sakelar SAN. Dia memasukkan nama sakelar ke Splunk dan melihat penyimpanan mana yang terhubung dengannya dan server mana yang menerima data dari penyimpanan ini. Pada saat yang sama, manajer melihat rencana kerja yang ditulis oleh insinyur dan dapat mengevaluasi bagaimana menonaktifkan sakelar ini selama pemeliharaan akan memengaruhi kinerja array dan server.
Kami mengatur pemuatan harian informasi tentang menghubungkan semua sakelar dan array ke Splunk. Pelanggan puas dengan tingkat pembaruan ini. Dia sudah memiliki alat pemantauan Stor2RRD, tetapi dia tidak tahu bagaimana menggabungkan data dari berbagai sumber dan memvisualisasikannya. Oleh karena itu, kami mengonfigurasi sistem akuisisi data di Splunk sebagai berikut:
- Kami menerima informasi tentang penyimpanan dari Stor2RRD;
- Dari sakelar kami menerima informasi tentang SAN;
- Melalui vCenter menggunakan skrip PowerCLI kami mengumpulkan data dari host ESX.
Data yang diterima secara otomatis dibawa ke dalam satu bentuk, diproses dan ditampilkan dalam bentuk laporan yang diperlukan.
Kamu harus bertarung dengan apa?
Splunk adalah sistem yang kuat, tetapi ada tugas yang tidak dapat diselesaikan di luar kotak, dan untuk mengatasi beberapa masalah, kita membutuhkan pengetahuan mendalam tentang VMware.

Misalnya, pelanggan menggunakan disk RDM yang dialokasikan langsung dan datastore virtual virtual untuk mesin virtual. Kedua jenis drive ini perlu ditangani secara berbeda. Pada awalnya kami memecahkan masalah sendiri, tetapi kemudian dihadapkan pada situasi di mana mesin virtual menerima kedua disk RAW dan yang virtual. Ternyata kami mendapatkan bidang Path yang salah dalam laporan dari vCenter dan tautan yang salah ke array disk RAW. Skema ini berfungsi dengan datastore biasa, tetapi tidak berfungsi dengan disk RAW. Bagi mereka, gunakan properti disk ID RAW, yang berisi atribut disk. Saya harus beralih ke pakar VMware yang membuat ulang skrip sehingga akan menghitung array yang benar melalui RAW Disk ID.
Selain itu, kami tidak segera belajar cara bekerja secara optimal dengan skrip PowerCLI, kemudian algoritme harus dikembangkan lebih lanjut. Awalnya, skrip memproses data dari beberapa ribu mesin virtual selama tiga jam! Setelah disempurnakan, durasi skrip dikurangi menjadi empat puluh menit.
Apa hasilnya?
Karena tidak memiliki pengalaman dengan Splunk, kami dengan cepat mengimplementasikan sistem untuk kapasitas disk akuntansi, yang menerima informasi dari berbagai sumber, mengkonsolidasikannya, dan menyediakan berbagai grafik yang nyaman dan intuitif. Jika Anda belum pernah memilih atau membuat sistem seperti itu sebelumnya, maka Splunk adalah kandidat yang baik untuk peran ini. Ini bekerja dengan cepat, mudah dikonfigurasi dan fleksibel dan tidak memerlukan pengetahuan khusus untuk menyelesaikan sebagian besar tugas.
Vladislav Semenov, Kepala Kelompok Arsitektur Sistem, Pusat Perancangan Kompleks Komputasi, Jet Infosystems