بررسی مزایای پنهان شده در استفاده از پروکسی زبیکس

پوستر مزایای پنهان استفاده از پروکسی زبیکس

مزایای استفاده از پروکسی زبیکس

پروکسی زبیکس چیزی بیش از ابزاری برای Monitoring توزیع شده است. اجرای نصب گسترده‌ی زبیکس بدون پروکسی‌ها کار سختی می‌باشد. پس اجازه بدهید که آن‌ها این کار کثیف را انجام بدهند.

شما بدون شک باید از پروکسی زبیکس استفاده کنید و در این مطلب مزایای آن‌ها را برای شما توضیح می‌دهیم. پروکسی زبیکس یک ابزار بدون هزینه با تعداد نامحدودی از نصب است.

به جای یک سرور زبیکس standalone ساده، می‌توانید با صدها پروکسی که هر کدام مثل یک دستگاه جدا در محیط شما کار می‌کنند، کار کنید.

مزایای پروکسی

عملکرد

اصلی‌ترین مزیت پروکسی‌ها در حیطه‌ی عملکرد این است که عملیات‌ها از سرور زبیکس روی پروکسی‌ها توزیع می‌شوند.
معمولا نصب سرور زبیکس شما پروسه‌های زیادی را ساپورت می‌کند و با رشد محیط شما این تعداد افزایش پیدا می‌کند.
در تولید، ممکن است بیشتر از ۵۰۰ فرآیند درونی وجود داشته باشد: پیکربندی، همگام سازی، poller ها، trapper ها و غیره.

هر کدام از این فرآیندها مسئول بررسی برخی از check ها برای بازیابی داده‌هاست.check ها زمان بر هستند، از کسری از ثانیه گرفته تا یک ثانیه‌ی کامل. بسته به نوع آیتم، بعضی فرآیندها سریع‌تر و بعضی کندتر هستند.
با دستور زیر می‌توانید زمانی که انجام یک عملیات طول می‌کشد را چک کنید:

time zabbix_get -s [localhost_IP] -k [name_of_the_parameter]

با یک نگاه سریع به نظر می‌رسد که اکثر check ها نسبتا سریع انجام می‌شوند، اما در راه‌اندازی‌های بزرگ زبیکس، زمان می‌تواند تفاوت بزرگی داشته باشد.

اگر هزار host داشته باشید و بخواهید در هر کدام از آن‌ها پارامتر یکسانی رو monitor کنید و برای هر کدام از host ها عملیات ۰٫۳ ثانیه طول بکشد، باید نزدیک ۵ دقیقه وقت بگذارید تا فقط داده‌ی آن پارامتر را از هر ماشین بگیرید و این فقط برای یک پارامتر می‌باشد.

یکی از بهترین مزایای پنهان پروکسی‌ها برداشتن بار از سرور زبیکس است. پروکسی زبیکس همان فرآیندهای درونی را دارا می‌باشد که سرور زبیکس دارد، مثل poller ها،preprocessor ها و trapper ها.

پروکسی زبیکس راه‌حل ایده‌آلی است برای تعداد زیادی host با چندین آیتم کند که عملکرد سرور را تحت تاثیر قرار می‌دهند فقط بخاطر این که فرآیند‌ها زمان بیشتری را در انتظار یک پاسخ می‌گذارند.

پروکسی می‌تواند تمام اطلاعات را از تمام host ها با فرآیندهای درونی خود جمع‌آوری کند و بعد اطلاعات خام تاریخی را به سرور بفرستد.

زمان مورد نیاز برای برقراری ارتباط و دریافت پاسخ host در محل پروکسی خواهد بود و روی عملکرد سرور هیچ تاثیری نمی‌گذارد. پروکسی فقط مقادیر خام او به سرور می‌فرستد و سرور نیازی ندارد خود برای گرفتن داده‌ها به host ها متصل شود.

پایگاه‌ داده

پروکسی‌ها پایگاه داده‌ی جداگانه‌ای دارند و می‌توانند وقتی که مشکلی در ارتباط بین سرور زبیکس و پروکسی ایجاد شود، داده‌ها را ذخیره کنند.

Monitoring از راه‌دور

اگر نمایندگی و یا دفاتری در شهر‌های دیگر دارید، پروکسی باید اولین انتخاب شما باشد.

شبکه‌های مجازی

اگر شبکه‌های مجازی دارید که توسط سرور زبیکس قابل دسترسی نمی‌باشد، باید پروکسی را نصب کنید و روش ارتباط ترجیح داده شده را انتخاب کنید.

تازه‌های ۴٫۲

قبل از زبیکس ۴٫۲، پروکسی‌ها صرفا داده‌ها را از host ها جمع آوری می‌کردند و به سرور انتقال می‌دادند و در آنجا همه‌ی مراحل پیش‌پردازش، trigger ها، محاسبات، فعالیت‌ها و اعلان‌ها اجرا می‌شدند.

از زبیکس ۴٫۲ به بعد اگر host تحت نظارت پروکسی باشد پیش-پردازش در قسمت پروکسی انجام می‌شود. آیتم‌های پیش فرض زیادی هستند که در مراحل پیش‌پردازش پیکربندی می‌شوند.

مراحل پیش پردازش مانند عبارات معمول ,JavaScript ,XML XPath, JSON Path, تغییر ساده، تغییر بر ثانیه نیز نیازمند میزان زیادی زمان و منابع عملکردی سرور هستند.

پس چرا این عملیات‌ها را به پروکسی منتقل نکنیم و زمان و منابع سرور را حفظ نکنیم؟ اگر host توسط پروکسی monitor می‌شود و بعضی از آیتم‌ها مراحل پیش پردازش مشخصی داشته باشند، پروکسی در درجه اول، داده‌ها را از host جمع آوری می‌کند و بعد مراحل پیش پردازش را انجام می‌دهد و داده‌هایی که جمع‌آوری و پردازش کرده را به سرور منتقل می‌کند.

از آنجایی که پیش پردازش در پروکسی انجام می‌شود، سرور فقط داده‌ها را جمع‌آوری، trigger ها را پردازش و عملیات‌ها را اجرا می‌کند.

نتیجه گیری

منظور از این مطلب الزامی بودن استفاده از پروکسی‌ها نیست. سرور زبیکس به اندازه‌ی کافی قدرتمند هست که بتواند به تنهایی کار کند. این امکان وجود دارد که فقط یک سرور زبیکس نصب شده می‌توان با هزاران آیتم و host داشت و تمام داده‌ها را بدون پروکسی جمع‌آوری کرد و بسیار عالی هم کار خواهد کرد.

اگرچه می‌خواهید بهترین عملکرد را از محیط خود بدون خرج کردن پول اضافه برای جزئیات سرور زبیکس (برای مثال CPU یا مموری) بگیرید باید علاوه بر تنظیم پیکربندی سرور و پایگاه‌داده، بهینه‌سازی فواصل بروزرسانی با دنبال کردن پیشنهادات عملکرد و بهترین روش‌ها، نصب پروکسی‌ها را هم در نظر بگیرید.

پروکسی‌ها نیاز به ماشین قدرتمند برای اجرا ندارند، دو هسته و ۴GB برای پردازش مقدار قابل توجهی داده و برداشتن بار از سرور، کافی می‌باشد.

برای بیشترین بهره‌برداری از زبیکس قبل از خرج کردن برای سخت‌افزار، به شدت پیشنهاد می‌شود که از پروکسی‌ها استفاده نمایید و تمام check ها را به جای سرور به آن‌ها منتقل کنید. قطعا تفاوت را احساس خواهید کرد.

منبع:
https://blog.zabbix.com/hidden-benefits-of-zabbix-proxy/9359