Shinken (dasturiy ta'minot) - Shinken (software)

Shinken
Shinken skrinshoti
Shinken skrinshoti
Asl muallif (lar)Jan Gabes
Dastlabki chiqarilish2009 yil 1-dekabr; 11 yil oldin (2009-12-01)[1]
Barqaror chiqish
2.4.3 / 2016 yil 10-mart (2016-03-10)[2]
Ombor Buni Vikidatada tahrirlash
YozilganPython
Operatsion tizimUnixga o'xshash, Windows
TuriTarmoq monitoringi
LitsenziyaAffero umumiy ommaviy litsenziyasi
Veb-saytwww.shinken-monitoring.org

Shinken bu ochiq manba kompyuter tizimi va tarmoq monitoringi dasturiy ta'minot bilan mos keladi Nagios. U tomosha qiladi mezbonlar va xizmatlar, ishlash ma'lumotlarini to'playdi va xato holatlari yuzaga kelganda foydalanuvchilarni ogohlantiradi va shartlar aniqlanganda yana.

Shinken arxitekturasi osonroq taklif qilishni maqsad qilgan yuklarni muvozanatlash va yuqori darajadagi mavjudlik. Administrator bitta konfiguratsiyani boshqaradi, tizim avtomatik ravishda uni qismlarga "kesib" oladi va uni ishchi tugunlariga yuboradi. Uning nomini ushbu funktsionallikdan olgan: a Shinken bu yapon qilichidir.

Shinken Jan Gabes tomonidan yozilgan kontseptsiyaning isboti yangi Nagios arxitekturasi uchun. Yangi dasturga ishonish eskisiga qaraganda tezroq va moslashuvchan edi C kodi, u uni Nagios 4-ning yangi rivojlanish filiali sifatida taklif qildi.[3] Ushbu taklif Nagios mualliflari tomonidan rad etilgan, shuning uchun Shinken mustaqil bo'ldi tarmoq monitoringi dasturiy ta'minot bilan mos keladi Nagios.[4]

Shinken hamma ostida ishlashga mo'ljallangan operatsion tizimlar qayerda Python ishlaydi. Rivojlanish muhiti ostida Linux, lekin boshqalarida ham yaxshi ishlaydi Unix variantlari va Windows. Reaksioner jarayoni (xabarnomalarni yuborish uchun javobgardir) shuningdek, ostida boshqarilishi mumkin Android OS. Bu bepul dasturiy ta'minot shartlariga muvofiq litsenziyalangan Affero umumiy ommaviy litsenziyasi tomonidan nashr etilgan Bepul dasturiy ta'minot fondi.

Umumiy nuqtai

  • Dizayn
    • Pythonda yozilgan monitoring tizimi
    • Pyro masofaviy ob'ektlaridan foydalangan holda tarqatilgan arxitektura
  • Faol va passiv monitoring usullari
    • Tarmoq xizmatlarining monitoringi (SMTP, POP3, HTTP, NNTP, ICMP, SNMP, FTP, SSH )
    • Xost resurslarini monitoring qilish (protsessor yuk, disk foydalanish, tizim jurnallari) ko'pchiligida tarmoq operatsion tizimlari, shu jumladan Microsoft Windows
    • To'plangan ma'lumotlarni tarmoq orqali maxsus yozilgan plaginlarga yuborish qobiliyatiga ega tizimlarning monitoringi (Masalan, VMWare ESX3 / 4/5, Collectd)
    • Masofaviy monitoring orqali qo'llab-quvvatlanadi SSH yoki SSL shifrlangan tunnellar.
    • Oddiy plagin dizayni, bu foydalanuvchilarga kerakli vositalardan foydalanib, ehtiyojlariga qarab o'zlarining xizmat tekshiruvlarini osonlikcha rivojlantirishga imkon beradi (qobiq skriptlari, C ++, Perl, Yoqut, Python, PHP, C #, va boshqalar.)
    • Yangi xizmatlar va ishlash ma'lumotlarini yaratish uchun shtatdan KPI va Shinken yadrosidagi ishlash ma'lumotlarini hisoblash qobiliyati
  • Tizimning tashqi interfeyslari
    • Livestatus holat, konfiguratsiya va ishlash ma'lumotlarini ochib beradigan mos keladigan API
    • Ma'lumotlarni grafikli modullarga eksport qiladi (PNP4Nagios, Grafit va boshqalar mavjud)
    • Android-ning mahalliy xabar almashish API-ni qo'llab-quvvatlash
    • Syslog va RabbitMQ yordamida ro'yxatga olish tizimlariga voqea ma'lumotlarini eksport qiling
    • Imkoniyatlarini juda samarali tarzda kengaytirish uchun har qanday Shinken jarayoniga modullarni ulash mumkin
  • Ishlash
    • Parallellashtirilgan xizmat va xost tekshiruvlari mavjud
    • So'rov jarayonlarini bir nechta serverlarda tarqatish qobiliyati
    • Osonlik bilan amalga oshirishni qo'llab-quvvatlash ortiqcha va muvozanatli monitoring xostlarini yuklash
    • Bir nechta ortiqcha tashqi interfeyslarni qo'llab-quvvatlash
    • Tekshiruvlarni maxsus so'rovchilarga yo'naltirish qobiliyati (plaginlarni bajarishga ixtisoslashgan jarayonlar)
  • Korrelyatsiya va ishbilarmonlik intellekti
    • Ota-onalar bilan bolalar munosabatlari
      • "Ota-onalar" xostlari yordamida tarmoq xostlari ierarxiyasini aniqlash qobiliyati, ular mavjud bo'lmagan va mavjud bo'lmagan xostlarni aniqlash va ajratish imkonini beradi.
      • 1 dan 1 gacha, 1 dan N gacha
    • Har qanday xizmat va xost o'rtasida erkin shaklga bog'liqlik daraxtlari
      • 1 dan 1 gacha, 1 dan N gacha
    • Integratsiyalashgan biznes qoidalarini qo'llab-quvvatlash
      • Biznes xizmatining holatini ifodalovchi xostlar yoki xizmatlar
      • Har bir xizmat, xost yoki biznes jarayoniga biznes ta'sirini tayinlashni qo'llab-quvvatlash
    • Faqatgina ildiz muammolarini ko'rsatish qobiliyati
    • Ota-ona mavjud bo'lmaganda, bolalar holatini avtomatik ravishda noma'lumga o'zgartiradi
  • Boshqa xususiyatlar
    • Xizmat yoki xost bilan bog'liq muammolar yuzaga kelganda va ularni hal qilishda (orqali elektron pochta, peyjer, SMS, yoki plagin tizimi orqali foydalanuvchi tomonidan belgilangan har qanday usul)
    • Muammoni faol ravishda hal qilish uchun xizmat paytida ishlaydigan voqea ishlovchilarini yoki tadbirlarni o'tkazishni belgilash qobiliyati
    • Doimiy ifoda qoidalariga asoslanib ogohlantirishning og'irligini qayta aniqlash qobiliyati
    • UTF-8 moslamalari nomlarini qo'llab-quvvatlash
    • Bitta ma'muriy punkt bilan bir nechta mijozlarni kuzatishni qo'llab-quvvatlash
    • Service_period xususiyati orqali takrorlanadigan ish vaqtini qo'llab-quvvatlash
    • Merosxo'rlik va ortiqcha yuk bilan rivojlangan shablon tizimi

Arxitektura

Shinken o'rnatilishi bir nechta jarayonlardan iborat bo'lib, ularning har biri ma'lum bir vazifa uchun optimallashtirilgan.

  • Hakam
    • Konfiguratsiya fayllarini yuklaydi va xost va xizmat ob'ektlarini rejalashtiruvchiga yuboradi.
    • Boshqa barcha jarayonlar uchun qo'riqchi va xato aniqlangan taqdirda xatolarni boshlash uchun javobgardir
    • Natija hodisalarini Qabul qiluvchidan uning bilan bog'liq Rejalashtiruvchiga yo'naltirish mumkin
    • Hakamlik modullari
      • Konfiguratsiya ma'lumotlarini boshqarish uchun turli xil modullar mavjud
  • Rejalashtiruvchi
    • Xost va xizmat tekshiruvlarining navbatdagi ishini rejalashtiradi
    • Ovoz beruvchiga tekshiruvlar yuboradi
    • Holat va bog'liqlikni hisoblab chiqadi
    • KPI triggerlarini qo'llaydi
    • Bildirishnomalarni ko'taradi va ularni reaktsionerlarga yuboradi
    • Saqlash faylini yangilaydi (yoki boshqa saqlash backends)
    • Broker (lar) ga brokerlarni (har qanday turdagi ichki hodisalarni) yuboradi
  • So'rovnoma
    • Rejalashtiruvchidan tekshiruvlar olib boradi, plaginlarni yoki o'rnatilgan so'rovchilar modullarini bajaradi va natijalarni rejalashtiruvchiga yuboradi
    • Poller modullari
      • NRPE - Nagios Remote Plugin Execution agentlari uchun faol ma'lumotlarni to'plashni amalga oshiradi
      • SNMP - SNMP yoqilgan agentlari uchun faol ma'lumotlarni to'plashni amalga oshiradi (PySNMP yordamida beta-bosqichda)
      • CommandPipe - check_mk skriptidan passiv holat va ishlash ma'lumotlarini oladi, buyruqlarni qayta ishlamaydi
  • Reaksioner
    • Rejalashtiruvchidan xabarnomalar va tekislovchilarni oladi, plaginlarni / skriptlarni bajaradi va natijalarni rejalashtiruvchiga yuboradi
  • Broker
    • Bir nechta modulga ega (odatda o'z jarayonlarida ishlaydi)
    • Brokerlarni rejalashtiruvchidan oladi va ularni broker modullariga yo'naltiradi
    • Modullar brokerning turiga qarab (log, boshlang'ich xizmat / xost holati, tekshiruv natijasi, ishlamay qolishi / tugashi, ...) qarab broker bilan ishlash-qilmasligini hal qiladi.
    • Modullar brokkalarni har xil usulda qayta ishlaydi. Ba'zi modullar:
      • webui - xotiradagi moslamalarni yangilaydi va mahalliy Shinken GUI uchun veb-serverni taqdim etadi
      • liveatus - Thruk yoki kabi GUIlar tomonidan API yordamida so'raladigan xotiradagi moslamalarni yangilaydi Check_MK Multisite
      • grafit - ma'lumotlarni Grafit ma'lumotlar bazasiga eksport qiladi
      • ndodb - ndo ma'lumotlar bazasini yangilaydi (MySQL yoki Oracle)
      • simple_log - barcha Shinken jarayonlari jurnallarini markazlashtirish
      • status_dat - status.dat fayliga yozadi, uni klassik cgi-ga asoslangan GUI o'qishi mumkin
  • Qabul qiluvchi (ixtiyoriy)
    • Mahalliy yoki masofaviy protokollardan passiv ma'lumot oladi
    • Tegishli rejalashtiruvchiga (yoki global buyruqlar uchun Arbiter) yo'naltirishdan oldin buferlangan ma'lumotlarni passiv qabul qilish
    • Kiruvchi hodisalarning yuqori tezligini boshqarish uchun Qabul qiluvchilarni "fermasi" ni tashkil etishga imkon beradi
    • Qabul qiluvchilar uchun modullar
      • NSCA - NSCA protokoli qabul qiluvchisi
      • Collectd - Collectd-dan tarmoq orqali ishlash ma'lumotlarini olish
      • CommandPipe - Buyruqlar, holatni yangilash va ishlash ma'lumotlarini olish
      • TSCA - to'g'ridan-to'g'ri dasturlardan yuqori tezlikda buferlangan TCP ulanish yordamida tekshiruv natijalarini yuborish uchun Apache Thrift interfeysi
      • Veb-xizmat - tekshiruv natijalarining http-postlarini qabul qiluvchi veb-xizmat (beta)

Jarayonlarning har bir turi uchun bitta xostda yoki ko'plab xostlarda tarqalish uchun bir nechta misollar bo'lishi mumkin. Ko'proq jarayonlarni qo'shish yukni avtomatik ravishda taqsimlaydi.

Shinken WebUI - bu real vaqt holati to'g'risida ma'lumot, konfiguratsiya, o'zaro ta'sir, Grafit ma'lumotlar bazalaridagi trend ma'lumotlarini va qaramlik daraxtlari grafikalarini vizualizatsiya qilish uchun asboblar panelini ta'minlaydigan ichki veb-interfeys.

Shinken skonfUI - bu kashfiyot jarayoni va konfiguratsiya vazifalarini boshqarish uchun ishlatiladigan mustaqil veb-oldingi qism.

Shinken-admin CLI skripti tizimning ish vaqti jarayonida, masalan, jurnal darajalarini o'zgartirish va sog'liqni saqlash bo'yicha hisobotlarni olish kabi jihatlarni boshqarish uchun ishlatiladi.

Install.sh CLI skripti Shinken va unga tegishli dasturlarni o'rnatish, olib tashlash yoki yangilash uchun asosiy boshqaruv skriptidir.

Rivojlanish

Shinken ochiq va sinovga asoslangan rivojlanish yondashuv, loyihada ishtirokchilar yangi xususiyatlar, kodni qayta ishlash, kod sifati va xatolarni tuzatishni ta'minlaydi.[5]

Manba kodi joylashtirilgan GitHub.[6] An integratsiya serveri har bir topshiriq bo'yicha sinovlarni va chuqurlikdagi sinovlarni ma'lum vaqt oralig'ida o'tkazadi.

The Shinken hujjatlari wiki-da joylashtirilgan.

Shuningdek qarang

Adabiyotlar

  1. ^ Nagios pochta ro'yxatidagi rasmiy nashr http://sourceforge.net/p/nagios/mailman/message/24087464/
  2. ^ http://shinkenlab.io/release-2-4-2/
  3. ^ Gabes, Jan (2009-12-01). "Shinken: yangi dastur taklifi". GitHub. Olingan 2014-03-04. Python-da yozgan Nagios-ning "Shinken" nomli (tugallanmagan) qayta tiklanishi haqida sizning ma'lumotlaringizni qaytarishni istayman, bu hozirgi Nagios dasturidagi C ga nisbatan tezroq va modulli.
  4. ^ Gabes, Jan (2010-06-01). "Shinken: Nagios bilan aralashish mumkin emas". Shinken jamoasi. Arxivlandi asl nusxasi 2014-01-23. Olingan 2010-06-01. Shinkenning dastlabki taklifi uchun biz hech qachon javob olmadik, chunki biz raddig loyihasi sifatida qaralamiz. Aslida, endi biz vilkalarmiz deb ayta olamiz.
  5. ^ Shinken hissasi kuni Ohloh
  6. ^ manba kodi kuni GitHub

Tashqi havolalar