kibana چیست؟ در دنیای دیجیتال امروزی، سازمانها با حجم عظیمی از داده سروکار دارند. این دادهها که از منابع مختلفی مانند وبسایتها، سرورها، نرمافزارها و سنسورها جمعآوری میشوند، حاوی اطلاعات ارزشمندی هستند که میتوان از آنها برای بهبود عملکرد، شناسایی مشکلات، تصمیمگیری آگاهانه و موارد دیگر استفاده کرد. اما چالش اصلی اینجاست که چگونه میتوان این دادههای خام و حجیم را به شکلی قابلفهم و قابلاستفاده درآورد. اینجاست که کیبانا (Kibana) به عنوان ابزاری قدرتمند برای تجسم و تحلیل داده به کمک کاربران میآید.
کیبانا (Kibana) ابزاری قدرتمند در حوزه تجسم داده (Data Visualization) است که به کاربران امکان کاوش، تحلیل و نمایش بصری دادههای انباشته شده در الستیک سرچ (Elasticsearch) را میدهد. در این مقاله جامع، توضیح میدهیم Kibana چیست و هم چنین، تمام اصول اولیهای را که به عنوان یک کاربر برای استفاده از آن جهت تجزیهوتحلیل دادههای لاگ خود باید بدانید آموزش میدهیم. این مطلب، شامل تاریخچه مختصری از این ابزار و توضیحی در مورد کاربردها و بخشهای مختلف آن است. برای اینکه دقیقا بدانید Kibana چیست، لطفا تا انتهای این مطلب با ما همراه باشید.
Kibana چیست؟
درخصوص اینکه Kibana چیست میتوان گفت یک رابط کاربری تجسم داده است که به کاربران اجازه میدهد تصاویر، گزارشها و داشبوردها را از منابع مختلف داده تولید کنند. ابزار Kibana در سال ۲۰۱۳ توسط رشید خان ساخته شد که علاوهبر کیبانا، ابزارهای Timelion و Canvas را هم ساخته است. کیبانا بخش تصویرسازی دادههای مجموعه ELK را تشکیل میدهد (که دو جزء باقیمانده آن شامل Logstash و Elasticsearch است).
مجموعه ELK یک مجموعه نرمافزار متنباز است که برای جمعآوری، تجزیهوتحلیل و تصویرسازی دادههای مختلف استفاده میشود. کاربران با استفاده از کیبانا میتوانند دادههای ذخیرهشده در Elasticsearch را تجسم کنند. درخصوص دو جزء دیگر مجموعه ELK میتوان گفت یکی از آنها یعنی Logstash یک ابزار ETL است که دادهها را از منابع مختلف جمعآوری، تبدیل و بارگذاری میکند و Elasticsearch نیز یک موتور جستوجوی NoSQL است که به سرعت و مقیاسپذیری بالای خود معروف است.
نکته قابل توجه بعدی درمورد ابزار Kibana این است که میتواند در کنار سایر ابزارهای مدیریت داده متنباز نظیر داکر قرار بگیرد و نحوه مدیریت دادهها در سازمانها را بهبود دهد. در مطالب قبلی به این موضوع که داکر چیست و کاربردهای آن پرداختهایم.
منظور از Dashboard کیبانا چیست؟
یکی از مواردی که ممکن است هنگام آموزش کیبانا چندینبار با آن مواجه شوید، Dashboard است. در این بخش میخواهیم بدانیم داشبورد Kibana چیست؟ داشبوردهای کیبانا، روشی بصری و آسان برای انتقال داده به کاربر فراهم میکنند. این داشبوردها امکان ترکیب انواع مختلف جستوجوها و تصویرسازیهای داده را در یک نمای پویا با امکان بهروزرسانی ارائه میدهند که کاربران در هر زمانی که خواستند، میتوانند به آن مراجعه کنند.
کیبانا میتواند از دادههای تولیدشده توسط برنامههای مبتنیبر kubernetes استفاده کند. داشبوردهای کیبانا کاملا قابل تنظیم هستند و میتوانند دادهها را در قالب جدول زمانی، نقشه حرارتی، جدول داده، نقشه مختصات و نمودار دایرهای، میلهای و خطی نمایش دهند. این بدان معنا است که سازمانها میتوانند داشبوردهای کیبانا را متناسب با نیازهای خاص خود تنظیم کرده و از آنها برای نمایش دادههای خود به روشی شفاف و مفید استفاده کنند.
کاربردهای کیبانا
در این بخش برای آن دسته از افرادی که با این پلتفرم تجزیهوتحلیل و تجسم داده آشنا نیستند، توضیح میدهیم که کاربردهای Kibana چیست. آگاهی و شناخت این ویژگیها به متخصصان و مهندسان دواپس کمک میکند تا به صورت کاربردیتر از این ابزار استفاده کنند.
۱.ایجاد نمودارهای تعاملی
ابزار Kibana دارای یکسری نمودارها و گزارشهای بصری داخلی است که کاربران را قادر میکنند در حجم عظیمی از دادههای ثبتشده جستوجو کنند و آنچه در نظر دارند را به راحتی بهدست بیاورند. علاوهبراین، کاربران میتوانند بهصورت پویا روی زیر مجموعههای داده خاصی زوم کنند، پنجرههای زمانی را جابهجا کنند و روی گزارشها عمیقتر شوند تا درک کامل و دقیقی از دادهها کسب کنند.
۲.مجموعهها و فیلترهای از پیش ساختهشده
این ویژگیها به کاربران اجازه میدهند تا تنها با چند کلیک ساده تجزیهوتحلیلهای مختلف مانند کوئریها، هیستوگرامها و ترندها را اجرا کنند.
۳.تشخیص ناهنجاری
ویژگی یادگیری ماشین ابزار Kibana به شما کمک میکند تا ناهنجاریها را حتی درصورتیکه در دادهها پنهان هستند، شناسایی کنید. این قابلیت به شما اجازه میدهد که دلایل اصلی مشکلات را مطابق تصویر زیر شناسایی کنید:
۴. اشتراکگذاری و همکاری ایمن
یکی از مواردی که در آموزش کیبانا به آن اشاره میشود، وجود گزینهای است که مشاهده اطلاعات تصویرسازیها و داشبوردها را جهت جلوگیری از نشت و درز دادهها، محدود میکند.
این ویژگی، تضمین میکند که دادهها کاملا امن و مطمئن هستند و در صورت اشتراکگذاری هیچ خطری آنها را تهدید نمیکند.
بهاینترتیب، میتوانید دادهها، تصویرسازیها و حتی داشبوردهای خود را با مدیر، اعضای تیم و مشتریان به اشتراک بگذارید. علاوهبراین، با استفاده از حالت Only Mode داشبورد کیبانا میتوانید دسترسی کاربران را محدود کنید.
۵.نمودار
Elastic Kibana با ترسیم نقاط داده، به شما اجازه میدهد تا روابط بین دادهها را کشف کنید. میتوانید این کار را با استفاده از API بصری قدرتمند ابزار Kibana انجام دهید که روشی جایگزین برای کاوش و همچنین خلاصهسازی اطلاعات مربوط به دادههای موجود در شاخص Elasticsearch ارائه میدهد.
۶.جستجوی کیبانا
کاربرد بعدی Kibana چیست؟ کیبانا میتواند به روشهای مختلفی در لاگها و دادههای ثبتشده جستوجو کند. این روشها کاربران را قادر میسازند تا بهراحتی و بهسرعت اطلاعات مورد نیاز خود را استخراج کنند. جدول زیر روشهای جستوجوی رایجی که تجربه کاربران را بهینه میکنند، نشان میدهد.
انواع جستوجو در کیبانا:
روش جستجو | توضیحات |
جستوجوی Field-level | برای یافتن دادههایی که حاوی یک کلمه یا عبارت خاص در یک فیلد خاص هستند استفاده میشود. |
Logical Statement | برای ترکیب دو یا چند جستوجو برای یک جستوجوی پیچیدهتر استفاده میشود. |
جستوجوی Free text | برای یافتن دادههایی که حاوی یک عبارت آزاد هستند استفاده میشود. |
جستوجوی Proximity | برای یافتن دادههایی که حاوی دو یا چند کلمه یا عبارت در نزدیکی یکدیگر در یک رشته هستند استفاده میشود. |
۷.امکان مشاهده نتایج روی نقشه
ابزار Kibana دارای ویژگیهای قدرتمند مکانی است که به شما امکان میدهند اطلاعات جغرافیایی را بهراحتی روی دادههای خود تصویرسازی کنید و نتایج را روی نقشه مشاهده کنید. این ویژگیها به شما کمک میکنند تا بهطور واضح موقعیت دادههای خود را درک کرده و الگوها و روندهای دادههای خود را شناسایی کنید.
سرویس Elastic Maps نقش مهمی در تصویرسازی دادههای جغرافیایی در Elastic Kibana ایفا میکند. این سرویس، امکان تصویرسازی دقیق و کاربردی دادههای جغرافیایی را فراهم میکند. اسکرینشات زیر تصویرسازی دادههای جغرافیایی را نشان میدهد:
علاوهبراین، اخیرا یک بهروزرسانی برای لایه داده (Data Layer) ابزار Kibana عرضه شده که به شما امکان میدهد کشورهای بیشتری را در نقشههای منطقهای کیبانا مشاهده کنید.
۸. Canvas
بخش Canvas در کیبانا به شما روش جدیدی برای نمایش دادههای خود بهصورت برجسته ارائه میدهد. این برنامه با استفاده از یک رابط کاربری ساده و انعطافپذیر، امکان ایجاد تصویرسازیهای سفارشی و تعاملی را فراهم میکند و شما میتوانید دادههای خود را به روشهای جدید و خلاقانهای نمایش دهید.
رشید خان، خالق Kibana در رابطه با این برنامه میگوید: “Canvas یک فضای خلاقانه، قابل ترکیب و قابل گسترش برای دادههای زنده است.” دادههای زنده، به دادههایی اشاره دارد که بهصورت مداوم در حال تغییر هستند. در این برنامه با استفاده از عناصر بصری مانند لوگو، رنگها، متن و اشکال، میتوانید دادههای زنده خود را به روشی منحصربهفرد و جذاب نمایش دهید.
۹. Watcher UI
Watcher UI یک ابزار قدرتمند برای نظارت بر دادهها و شناسایی الگوها و روندهای غیرعادی است که با استفاده از آن میتوانید از وقوع مشکلات بالقوه جلوگیری کنید. این ابزار زمانی که دادهها از یک آستانه مشخصی فراتر بروند، هشدار میدهد. این رابط با پیشنمایش محدودیتها، بازخورد گرافیکی و پیشنهاد واژه ارائه میدهد. علاوهبراین، با ارسال پیامهای هشدار همراه با مقادیر قالب به ایمیل، لاگ یا اسلک، به شما کمک میکند.
۱۰.گزارشدهی
این یکی از بهترین ویژگیهای کیبانا است که به شما اجازه میدهد گزارشهای سریع و دقیقی از تصویرسازی یا داشبورد خود تهیه کنید. شما میتوانید گزارش را بهصورت آنی دریافت کنید یا آن را زمانبندی کنید یا مشخص کنید که در شرایط خاصی ارائه شود. شما همچنین میتوانید گزارشها را بهطور خودکار با ارسال درخواستهای POST HTTP دریافت کنید و آن را با دیگران به اشتراک بگذارید.
KQL چیست؟
KQL (مخفف Kibana Query Language) زبان کوئری مخصوص کیبانا است که به شما کمک میکند دادههای خود را بهسرعت و بهراحتی فیلتر کنید. هر کوئری که در ابزار Kibana وارد میکنید، بهصورت خودکار به یک کوئری Elasticsearch تبدیل میشود. درواقع، کیبانا یک مترجم داخلی دارد که کوئریهای KQL را به کوئریهای Elasticsearch ترجمه میکند.
هدف اصلی KQL ارائه یک سینتکس (Syntax) بسیار سادهتر و قابل فهمتر نسبت به زبان کوئری Elasticsearch است که معمولا پیچیده و گیجکننده بهنظر میرسد. اگرچه سینتکس KQL بسیار کوتاهتر از DSL زبان کوئری Elasticsearch است، اما درعینحال انعطافپذیری لازم را برای نوشتن اکثر کوئریهای موردنیاز جهت تجزیهوتحلیل گزارش و دادهها فراهم میکند.
بخشهای مختلف کیبانا
کیبانا، یک ابزار بصری است که به شما امکان میدهد دادههای گزارش و دادههای ذخیرهشده در کلاسترهای Elasticsearch را کاوش و تجسم کرده یا یک داشبورد ایجاد کنید. ابزار Kibana توسط شرکت Elastic به وجود آمده که دو ابزار منبعباز دیگر به اسم Elasticsearch و Logstash را هم به وجود آورده است. ابزار Elasticsearch به عنوان یک پایگاه داده برای اطلاعات مستند و نیمهساختاریافته عمل میکند و Logstash از جمعآوری، تجزیه و ذخیره گزارشها برای استفاده در آینده پشتیبانی میکند.
این سه ابزار (Kibana ،Elasticsearch و Logstash) که به عنوان مجموعه نرمافزارهای ELK Stack یا Elastic Stack شناخته میشوند، میتوانند بهخوبی با هم کار کنند. یکی از نکاتی که در آموزش کیبانا هم روی آن تاکید میشود این است که ویژگی اصلی این ابزار، کوئری و تجزیهوتحلیل دادهها است. علاوهبراین، ویژگیهای تجسم داده در کیبانا این امکان را به شما میدهد با استفاده از نقشههای حرارتی، نمودارهای خطی، هیستوگرام، نمودار دایرهای و مکانی، دادهها را به روشهای متناوب تصویرسازی کنید.
با استفاده از روشهای مختلف میتوانید دادههای خود را در Elasticsearch بررسی کنید تا علت مشکلات را پیدا کنید. با آموزش کیبانا، بهراحتی میتوانید کلان داده را درک کنید و همچنین، داشبوردهای پویا که تغییرات کوئری Elasticsearch را بهصورت بیدرنگ نمایش میدهند، بهسرعت ایجاد کرده و به اشتراک بگذارید. همانطور که در تصویر زیر نمایش داده شده است، در پنل سمت چپ این ابزار، گزینههای مختلفی وجود دارد که در بخش بعدی آموزش کیبانا تکتک آنها را بررسی میکنیم.
Discover
اولین گزینهای که در پنل کیبانا بررسی میکنیم، Discover است. صفحه Discover در ابزار Kibana با فعال کردن دسترسی به هر فیلد این امکان را به شما میدهد تا دادههای خود را بهراحتی بررسی کرده و نتایج را بهصورت بیدرنگ مشاهده کنید. کاربران کیبانا میتوانند کنترل زیادی بر نحوه کاوش دادههای خود داشته باشند. به عنوان مثال، میتوانند بازه زمانی مدنظر خود را انتخاب کنند، جستوجوی کوئری انجام دهند یا دادههای مستند را مشاهده کنند تا نتایج جستوجو محدودتر شود.
Visualize
ابزار Kibana با ارائه طیف گستردهای از روشها و حالتهای تصویرسازی، این امکان را به شما میدهد تا تصویری از دادههای خود را در شاخصهای Elasticsearch ایجاد کنید. بهاینترتیب، میتوانید دادههای خود را بهصورت بصری نمایش دهید و الگوها و روندهای مهم را شناسایی کنید.
اسکرین شات زیر، صفحه Visualize و گزینههای موجود در آن را نمایش میدهد:
میتوانید نمودارهای دایرهای، جداول داده، نمودارهای خطی، بازههای زمانی، نقشههای جغرافیایی و تصویرسازی Markdown را با هم ترکیب کنید.
Dashboards
کاربرد گزینه بعدی در پنل Kibana چیست؟ این صفحه، مجموعهای از تصویرسازیها و جستوجوها را نمایش میدهد. داشبورد کیبانا بسیار پویا و تطبیقپذیر است. به عنوان مثال، میتوانید دادهها را در لحظه فیلتر کنید و داشبورد را بهصورت تمامصفحه باز کنید. قابل تنظیم بودن داشبورد Kibana به شما اجازه میدهد سایز محتوای داشبورد را تغییر دهید یا آن را مرتب و اصلاح کنید. پس از اعمال تغییرات موردنظر خود، میتوانید داشبورد را ذخیره کرده و آن را به اشتراک بگذارید.
Timelion
کاربرد گزینه Timelion در پنل Kibana چیست؟ این گزینه، برای ترکیب منابع داده کاملا مستقل در یک رابط واحد طراحی شده است که از زبان بیان ساده برای تجزیهوتحلیل و تصویرسازی دادههای زمانی استفاده میکند و به شما امکان میدهد دادههای منابع مختلف را در یک رابط واحد ترکیب کنید. این امر به شما کمک میکند تا الگوها و روندهای مهم را در دادههای خود شناسایی کنید. گزینه Timelion روشی کارآمد را برای تعریف کوئریها، تصویرسازی و تبدیل دادهها در یک مکان واحد ارائه میدهد.
Machine Learning
پیچیدگی و گسترش مجموعه دادهها، شناسایی حملات سایبری، مسائل زیرساختی و مشکلات تجاری را دشوار میکند. بااینحال، صفحه یادگیری ماشین کیبانا برای ایجاد وظایف مربوط به تشخیص ناهنجاری و مشاهده نتایج درنظر گرفته شده است. این ویژگی، بهطور خودکار رفتار دادههای Elasticsearch از جمله دورهها و روندها را مدلسازی و تجزیهوتحلیل میکند تا الگوهای غیرعادی را شناسایی کند، مشکلات را سریعتر تشخیص دهد و تعداد تطبیقهای نادرست را کاهش دهد.
APM
سیستم نظارت بر عملکرد برنامه (APM) کاربران را قادر میکند به عملکرد برنامهها و خدمات خود نظارت کنند، مشکلات را شناسایی کنند و عملکرد آنها را بهبود ببخشند. بهاینترتیب، توسعهدهندگان میتوانند دادههای عملکرد برنامههای خود را بررسی کرده و مشکلات آنها را بهسرعت پیدا و برطرف کنند.
Dev Tools
Dev Tools کیبانا امکان تعامل با مجموعه نرمافزاری Elastic را فراهم میکنند. این بخش دارای Console است که به توسعهدهندگان اجازه میدهد دستورات Elasticsearch را در یک زبانه (Tab) بنویسند و نتایج آن دستورات را در زبانهی دیگری مشاهده کنند. Grok debugger به همراه Console و پروفایلساز جستوجو، به شما امکان میدهند تا برنامه را به گونهای پیکربندی کنید که نیازهای شما را برآورده کند.
Monitoring
صفحه Monitoring کیبانا به شما کمک میکند تا به سه روش موثر بر عملکرد برنامهها و خدمات خود نظارت کنید:
- صفحه Monitoring شامل گزینههایی برای نظارت بر عملکرد دادهها در Elasticsearch، Kibana، Logstash و همچنین Beats بهصورت زنده است. بهاینترتیب، شما میتوانید دادهها را با هر سه مجموعه نرمافزاری Elastic تصویرسازی کنید.
- همچنین، شما میتوانید عملکرد این سه ابزار را در گذشته تجزیهوتحلیل کنید.
- میتوانید بهطور دقیق و عمیق بر Kibana نظارت کرده و دادهها را به کلاستر مانیتورینگ ارسال کنید.
Management
کاربرد آخرین گزینه پنل Kibana چیست؟ در این بخش از آموزش کیبانا با این گزینه آشنا میشویم. صفحه Management برای پیکربندی رانتایم کیبانا استفاده میشود که شامل سه اقدام حیاتی است:
- Index pattern: این امکان را به شما میدهد تا نام شاخصها را در زمان اجرا پیکربندی کنید. این اقدام میتواند برای پیکربندی اولیه نام شاخصها و همچنین برای مدیریت نام شاخصهای موجود انجام شود.
- Saved objects: این امکان را به شما میدهد تا تصویرسازیها، داشبوردها و جستوجوهای خود را ذخیره کنید. این اقدام میتواند برای سازماندهی دادهها و صرفهجویی در وقت شما انجام شود.
- Advanced settings: این امکان را به شما میدهد تا رفتار کیبانا را بهطور دقیق تنظیم کنید. این اقدام میتواند برای سفارشیسازی کیبانا برای نیازهای خاص انجام شود.
کیبانا برای انجام طیف گستردهای از وظایف مختلف نظیر راهاندازی کنترلهای امنیتی، افزودن منابع و مدیریت دادهها یک رابط واحد را ارائه میکند.
جمعبندی
در این مقاله توضیح دادیم Kibana چیست و همچنین، ویژگیهای جذاب این ابزار تحلیل لاگ که نشاندهندهی قابلیتها و تواناییهای آن هستند را مرور کردیم. بدون شک، این ویژگیها در حال حاضر کیبانا را به بهترین ابزار تجسم و تجزیهوتحلیل داده تبدیل کردهاند.