Apigee Edge for Private Cloud شامل apigee-monit
است، ابزاری مبتنی بر ابزار منبع باز monit . apigee-monit
به صورت دوره ای خدمات Edge را نظرسنجی می کند. اگر سرویسی در دسترس نباشد، apigee-monit
سعی می کند آن را دوباره راه اندازی کند.
برای استفاده از apigee-monit
، باید آن را به صورت دستی نصب کنید . بخشی از نصب استاندارد نیست.
به طور پیش فرض، apigee-monit
هر 60 ثانیه وضعیت سرویس های Edge را بررسی می کند.
شروع سریع
این بخش به شما نشان میدهد که چگونه با apigee-monit
سریع راه بیفتید.
اگر از لینوکس آمازون استفاده می کنید، ابتدا monit را از طریق فدورا نصب کنید . در غیر این صورت از این مرحله صرف نظر کنید.
sudo yum install -y https://kojipkgs.fedoraproject.org/packages/monit/5.25.1/1.el6/x86_64/monit-5.25.1-1.el6.x86_64.rpm
برای نصب apigee-monit
مراحل زیر را انجام دهید:
apigee-monit نصب کنید | |
/opt/apigee/apigee-service/bin/apigee-service apigee-monit install این | |
نظارت بر اجزا را متوقف کنید | |
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c component_name /opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all | |
نظارت بر اجزا را شروع کنید | |
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c component_name /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c all | |
اطلاعات وضعیت خلاصه را دریافت کنید | |
/opt/apigee/apigee-service/bin/apigee-service apigee-monit report /opt/apigee/apigee-service/bin/apigee-service apigee-monit summary | |
به فایل های لاگ apigee-monit نگاه کنید | |
cat /opt/apigee/var/log/apigee-monit/apigee-monit.log |
هر یک از این موضوعات و سایر موضوعات در بخش های بعدی به تفصیل توضیح داده شده است.
درباره apigee-monit
apigee-monit
کمک می کند تا اطمینان حاصل شود که تمام اجزای یک گره فعال و فعال می مانند. این کار را با ارائه خدمات مختلف انجام می دهد، از جمله:
- راه اندازی مجدد سرویس های ناموفق
- نمایش خلاصه اطلاعات
- ثبت وضعیت نظارت
- ارسال نوتیفیکیشن
- نظارت بر خدمات غیر لبه
Apigee توصیه میکند که apigee-monit
برای اطمینان از اجرای آن نظارت کنید. برای اطلاعات بیشتر، به Monitor apigee-monit مراجعه کنید.
معماری apigee-monit
در طول نصب و پیکربندی Apigee Edge for Private Cloud، به صورت اختیاری یک نمونه جداگانه از apigee-monit
روی هر گره در کلاستر خود نصب میکنید. این نمونههای apigee-monit
جداگانه مستقل از یکدیگر عمل میکنند: آنها وضعیت اجزای خود را به گرههای دیگر منتقل نمیکنند، و همچنین خرابیهای خود ابزار نظارت را به هیچ سرویس مرکزی منتقل نمیکنند.
تصویر زیر معماری apigee-monit
را در یک خوشه 5 گره نشان می دهد:
تنظیمات کامپوننت
apigee-monit
از پیکربندیهای مؤلفه استفاده میکند تا تعیین کند کدام مؤلفهها باید نظارت شود، چه جنبههایی از مؤلفه باید بررسی شود و در صورت خرابی چه اقداماتی باید انجام شود.
بهطور پیشفرض، apigee-monit
تمام اجزای Edge را در یک گره با استفاده از پیکربندیهای مؤلفه از پیش تعریفشده آنها نظارت میکند. برای مشاهده تنظیمات پیش فرض، می توانید به فایل های پیکربندی جزء apigee-monit
نگاه کنید. شما نمی توانید تنظیمات اجزای پیش فرض را تغییر دهید.
apigee-monit
بسته به اینکه کدام جزء را بررسی می کند، جنبه های مختلف یک جزء را بررسی می کند. جدول زیر آنچه را که apigee-monit
برای هر مؤلفه بررسی میکند فهرست میکند و به شما نشان میدهد که پیکربندی مؤلفه برای هر مؤلفه کجاست. توجه داشته باشید که برخی از مؤلفه ها در یک فایل پیکربندی واحد تعریف شده اند که برخی دیگر تنظیمات خاص خود را دارند.
جزء | محل پیکربندی | آنچه نظارت می شود |
---|---|---|
سرور مدیریت | /opt/apigee/edge-management-server/monit/default.conf | چک های apigee-monit :
علاوه بر این، برای این اجزای
|
پردازشگر پیام | /opt/apigee/edge-message-processor/monit/default.conf | |
سرور Postgres | /opt/apigee/edge-postgres-server/monit/default.conf | |
سرور Qpid | /opt/apigee/edge-qpid-server/monit/default.conf | |
روتر | /opt/apigee/edge-router/monit/default.conf | |
کاساندرا رابط کاربری لبه OpenLDAP Postgres Qpid نگهبان باغ وحش | /opt/apigee/data/apigee-monit/monit.conf | چک های apigee-monit :
|
مثال زیر پیکربندی کامپوننت پیش فرض را برای کامپوننت edge-router
نشان می دهد:
check host edge-router with address localhost restart program = "/opt/apigee/apigee-service/bin/apigee-service edge-router monitrestart" if failed host 10.1.1.0 port 8081 and protocol http and request "/v1/servers/self/uuid" with timeout 15 seconds for 2 times within 3 cycles then restart if failed port 15999 and protocol http and request "/v1/servers/self" and status < 600 with timeout 15 seconds for 2 times within 3 cycles then restart
مثال زیر پیکربندی پیش فرض مولفه کلاسیک UI ( edge-ui
) را نشان می دهد:
check process edge-ui with pidfile /opt/apigee/var/run/edge-ui/edge-ui.pid start program = "/opt/apigee/apigee-service/bin/apigee-service edge-ui start" with timeout 55 seconds stop program = "/opt/apigee/apigee-service/bin/apigee-service edge-ui stop"
این در مورد رابط کاربری کلاسیک صدق میکند، نه رابط کاربری جدید Edge که نام مؤلفه آن edge-management-ui
است.
نمیتوانید پیکربندیهای مؤلفه پیشفرض را برای هر مؤلفه Apigee Edge for Private Cloud تغییر دهید. با این حال، میتوانید پیکربندیهای مؤلفه خود را برای سرویسهای خارجی، مانند نقطه پایانی هدف یا سرویس httpd
، اضافه کنید. برای اطلاعات بیشتر، تنظیمات مؤلفه غیر Apigee را ببینید.
به طور پیشفرض، apigee-monit
تمام اجزای گرهای را که روی آن اجرا میشود، نظارت میکند. شما می توانید آن را برای همه اجزا یا برای اجزای جداگانه فعال یا غیرفعال کنید. برای اطلاعات بیشتر رجوع کنید به:
apigee-monit را نصب کنید
apigee-monit
به طور پیش فرض نصب نشده است. می توانید پس از ارتقا یا نصب نسخه 4.19.01 یا جدیدتر Apigee Edge برای Private Cloud آن را به صورت دستی نصب کنید.
این بخش نحوه نصب apigee-monit
را توضیح می دهد.
برای اطلاعات در مورد حذف نصب apigee-monit
، به Uninstall apigee-monit
مراجعه کنید.
apigee-monit را نصب کنید
این بخش نحوه نصب apigee-monit
را توضیح می دهد.
برای نصب apigee-monit
:
-
apigee-monit
را با دستور زیر نصب کنید:/opt/apigee/apigee-service/bin/apigee-service apigee-monit install
-
apigee-monit
با دستور زیر پیکربندی کنید:/opt/apigee/apigee-service/bin/apigee-service apigee-monit configure
-
apigee-monit
با دستور زیر شروع کنید:/opt/apigee/apigee-service/bin/apigee-service apigee-monit start
- این روش را در هر گره در خوشه خود تکرار کنید.
توقف و شروع به نظارت بر اجزا
هنگامی که یک سرویس به هر دلیلی متوقف می شود، apigee-monit
سعی می کند سرویس را دوباره راه اندازی کند.
اگر بخواهید به طور هدفمند یک مؤلفه را متوقف کنید، ممکن است مشکل ایجاد کند. به عنوان مثال، ممکن است بخواهید زمانی که یک مؤلفه باید از آن نسخه پشتیبان تهیه کنید یا آن را ارتقا دهید، آن را متوقف کنید. اگر apigee-monit
سرویس را در حین پشتیبان گیری یا ارتقاء مجدد راه اندازی کند، روند تعمیر و نگهداری شما ممکن است مختل شود و احتمالاً باعث از کار افتادن آن شود.
بخش های زیر گزینه های توقف نظارت بر اجزا را نشان می دهد.
یک کامپوننت را متوقف کنید و آن را حذف کنید
برای متوقف کردن یک کامپوننت و حذف آن، دستور زیر را اجرا کنید:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit stop-component -c component_namecomponent_name می تواند یکی از موارد زیر باشد:
apigee-cassandra
(کاساندرا)-
apigee-openldap
(OpenLDAP) -
apigee-postgresql
(پایگاه داده PostgreSQL) -
apigee-qpidd
(Qpidd) -
apigee-sso
(Edge SSO) -
apigee-zookeeper
(ZooKeeper) -
edge-management-server
(مدیریت سرور) -
edge-management-ui
(Edge UI جدید) -
edge-message-processor
(پردازنده پیام) -
edge-postgres-server
(سرور Postgres) -
edge-qpid-server
(سرور Qpid) -
edge-router
(Edge Router) -
edge-ui
(واسط کاربری کلاسیک)
توجه داشته باشید که "همه" گزینه معتبری برای stop-component
نیست. با stop-component
میتوانید هر بار فقط یک مؤلفه را متوقف و از حالت نظارت خارج کنید.
برای راه اندازی مجدد کامپوننت و از سرگیری نظارت، دستور زیر را اجرا کنید:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit start-component -c component_name
توجه داشته باشید که "همه" گزینه معتبری برای start-component
نیست.
برای دستورالعملهایی در مورد نحوه متوقف کردن و حذف نظارت بر همه مؤلفهها، به توقف همه مؤلفهها و حذف نظارت بر آنها مراجعه کنید.
یک مؤلفه را حذف کنید (اما آن را متوقف نکنید)
برای حذف مانیتور یک جزء (اما آن را متوقف نکنید)، دستور زیر را اجرا کنید:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c component_namecomponent_name می تواند یکی از موارد زیر باشد:
apigee-cassandra
(کاساندرا)-
apigee-openldap
(OpenLDAP) -
apigee-postgresql
(پایگاه داده PostgreSQL) -
apigee-qpidd
(Qpidd) -
apigee-sso
(Edge SSO) -
apigee-zookeeper
(ZooKeeper) -
edge-management-server
(مدیریت سرور) -
edge-management-ui
(Edge UI جدید) -
edge-message-processor
(پردازنده پیام) -
edge-postgres-server
(سرور Postgres) -
edge-qpid-server
(سرور Qpid) -
edge-router
(Edge Router) -
edge-ui
(واسط کاربری کلاسیک)
برای از سرگیری نظارت بر کامپوننت، دستور زیر را اجرا کنید:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c component_name
نظارت بر همه اجزاء (اما آنها را متوقف نکنید)
برای حذف نظارت بر همه اجزا (اما آنها را متوقف نکنید)، دستور زیر را اجرا کنید:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all
برای از سرگیری نظارت بر تمام اجزاء، دستور زیر را اجرا کنید:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c all
تمام اجزا را متوقف کنید و آنها را از مانیتور بردارید
برای متوقف کردن تمام اجزا و حذف نظارت بر آنها، دستورات زیر را اجرا کنید:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all
/opt/apigee/apigee-service/bin/apigee-all stop
برای راه اندازی مجدد همه اجزا و از سرگیری نظارت، دستورات زیر را اجرا کنید:
/opt/apigee/apigee-service/bin/apigee-all start
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor -c all
برای توقف نظارت بر همه مؤلفهها، میتوانید apigee-monit
نیز غیرفعال کنید، همانطور که در Stop، start و غیرفعال کردن apigee-monit توضیح داده شده است.
توقف، شروع و غیرفعال کردن apigee-monit
مانند هر سرویس دیگری، میتوانید apigee-monit
با استفاده از دستور apigee-service
متوقف کرده و شروع کنید. علاوه بر این، apigee-monit
از دستور unmonitor
پشتیبانی می کند که به شما امکان می دهد تا به طور موقت نظارت بر اجزا را متوقف کنید.
توقف apigee-monit
برای توقف apigee-monit
از دستور زیر استفاده کنید:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit stop
apigee-monit را شروع کنید
برای شروع apigee-monit
از دستور زیر استفاده کنید:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit start
apigee-monit را غیرفعال کنید
با استفاده از دستور زیر می توانید نظارت بر تمام اجزای گره را به حالت تعلیق درآورید:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit unmonitor -c all
از طرف دیگر، میتوانید apigee-monit
با حذف نصب از گره، همانطور که در Uninstall apigee-monit
توضیح داده شده است، برای همیشه غیرفعال کنید.
apigee-monit را حذف نصب کنید
برای حذف نصب apigee-monit
:
- فایل زیر را ویرایش کنید:
/opt/apigee/customer/application/monit.properties
اگر فایل وجود ندارد، آن را ایجاد کنید و مالک را روی کاربر "apigee" تنظیم کنید:
chown apigee:apigee /opt/apigee/customer/application/monit.properties
توجه داشته باشید که اگر فایل از قبل وجود داشته باشد، ممکن است ویژگیهای پیکربندی اضافی در آن تعریف شده باشد، فراتر از آنچه در جدول بالا ذکر شده است. شما نباید ویژگی هایی غیر از موارد ذکر شده در بالا را تغییر دهید.
مقادیر ویژگی را با مقادیر جدید خود تنظیم یا جایگزین کنید.
به عنوان مثال، برای تغییر مکان فایل log به
/tmp
، ویژگی زیر را اضافه یا ویرایش کنید:conf_monit_monit_logdir=/tmp/apigee-monit.log
- تغییرات خود را در فایل
monit.properties
ذخیره کنید. -
apigee-monit
را با دستور زیر بارگذاری مجدد کنید:/opt/apigee/apigee-service/bin/apigee-service apigee-monit reload
اگر
apigee-monit
مجددا راه اندازی نمی شود، فایل log را برای خطاهایی که در فایل های گزارش Accessapigee-monit
توضیح داده شده بررسی کنید. - این روش را برای هر گره در خوشه خود تکرار کنید.
- همانطور که مثال زیر نشان می دهد، با کپی کردن پوشه
apigee-monit.cron
در پوشه/etc/cron.d
، پشتیبانیcron
را اضافه کنید:cp /opt/apigee/apigee-monit/cron/apigee-monit.cron /etc/cron.d/
- فایل
apigee-monit.cron
را برای ویرایش آن باز کنید.فایل
apigee-monit.cron
کارcron
را برای اجرا و همچنین فرکانس اجرای آن کار را تعریف می کند. مثال زیر مقادیر پیش فرض را نشان می دهد:# Cron entry to check if monit process is running. If not start it */2 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit
این فایل از نحو زیر استفاده می کند که در آن پنج فیلد اول زمانی را که
apigee-monit
عمل خود را اجرا می کند مشخص می کند:min hour day_of_month month day_of_week task_to_execute
به عنوان مثال، زمان اجرای پیش فرض
*/2 * * * *
است که بهcron
دستور می دهد هر 2 دقیقه یکبار فرآیندapigee-monit
را بررسی کند.شما نمی توانید یک کار
cron
را بیشتر از یک بار در دقیقه اجرا کنید.برای اطلاعات بیشتر در مورد استفاده از
cron
، به مستندات سیستم عامل سرور یا صفحات man مراجعه کنید. - تنظیمات
cron
را برای مطابقت با خطمشیهای سازمان خود تغییر دهید. به عنوان مثال، برای تغییر فرکانس اجرا به هر 5 دقیقه، تعریف کار را به صورت زیر تنظیم کنید:*/5 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit
- فایل
apigee-monit.cron
را ذخیره کنید. - این روش را برای هر گره در خوشه خود تکرار کنید.
- بعد از تعریف
cron
job یک خط خالی وجود دارد. - فقط یک کار
cron
در فایل تعریف شده است. (خطوط نظر به حساب نمی آیند.) - فایل
/etc/cron.d/apigee-monit.cron
را حذف کنید:sudo rm /etc/cron.d/apigee-monit.cron
اگر بعداً می خواهید
cron
برای تماشایapigee-monit
دوباره فعال کنید، باید آن را دوباره کپی کنید.یا
- فایل
/etc/cron.d/apigee-monit.cron
را ویرایش کنید و با اضافه کردن یک "#" به ابتدای خط، تعریف کار را توضیح دهید. به عنوان مثال:# 10 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit
conf_monit_httpd_port
httpd
. apigee-monit
از httpd
برای برنامه داشبورد خود و فعال کردن گزارش ها/خلاصه ها استفاده می کند. مقدار پیش فرض 2812 است.conf_monit_httpd_allow
httpd
. apigee-monit
از httpd
برای اجرای برنامه داشبورد خود و فعال کردن گزارش ها/خلاصه ها استفاده می کند. این مقدار باید به لوکال هاست (میزبانی که httpd
روی آن اجرا می شود) اشاره کند.برای اینکه درخواست ها شامل نام کاربری و رمز عبور باشد، از دستور زیر استفاده کنید:
conf_monit_httpd_allow=allow username:"password"\nallow 127.0.0.1
هنگام افزودن یک نام کاربری و رمز عبور، یک "\n" را بین هر محدودیت وارد کنید. از درج خطوط جدید واقعی یا بازده های حمل در مقدار خودداری کنید.
conf_monit_monit_datadir
conf_monit_monit_delay_time
apigee-monit
پس از بارگذاری اولیه در حافظه قبل از اجرا منتظر می ماند. این فقط در اولین بررسی فرآیند روی apigee-monit
تأثیر می گذارد.conf_monit_monit_logdir
apigee-monit
.conf_monit_monit_retry_time
apigee-monit
سعی می کند هر فرآیند را بررسی کند. پیش فرض 60 ثانیه است.conf_monit_monit_rundir
apigee-monit
برای بررسی فرآیندها استفاده میکند. برای سفارشی کردن تنظیمات پیش فرض کنترل apigee-monit
:
توجه داشته باشید که این فقط برای اجزای غیر Edge است. نمیتوانید پیکربندیهای مؤلفه را برای مؤلفههای Edge سفارشی کنید.
دسترسی به فایل های گزارش apigee-monit
apigee-monit
تمام فعالیتها، از جمله رویدادها، راهاندازی مجدد، تغییرات پیکربندی و هشدارها را در یک فایل گزارش ثبت میکند.
محل پیش فرض فایل log به صورت زیر است:
/opt/apigee/var/log/apigee-monit/apigee-monit.log
میتوانید با سفارشی کردن تنظیمات کنترل apigee-monit
مکان پیشفرض را تغییر دهید.
ورودی های فایل لاگ به شکل زیر است:
'edge-message-processor' trying to restart [UTC Dec 14 16:20:42] info : 'edge-message-processor' trying to restart 'edge-message-processor' restart: '/opt/apigee/apigee-service/bin/apigee-service edge-message-processor monitrestart'
شما نمی توانید قالب ورودی های فایل لاگ apigee-monit
را سفارشی کنید.
مشاهده وضعیت انبوه با apigee-monit
apigee-monit
شامل دستورات زیر است که اطلاعات وضعیت انبوهی را در مورد اجزای یک گره به شما می دهد:
فرمان | استفاده |
---|---|
report | /opt/apigee/apigee-service/bin/apigee-service apigee-monit report |
summary | /opt/apigee/apigee-service/bin/apigee-service apigee-monit summary |
هر یک از این دستورات در قسمت های بعدی با جزئیات بیشتری توضیح داده شده است.
گزارش دهید
دستور report
یک خلاصه جمعآوری شده از تعداد مؤلفههای بالا، پایین، در حال حاضر اولیه یا در حال حاضر بدون نظارت بر روی یک گره به شما میدهد. مثال زیر دستور report
را فراخوانی می کند:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit report
مثال زیر خروجی report
در پیکربندی AIO (همه در یک) نشان می دهد:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit report up: 11 (100.0%) down: 0 (0.0%) initialising: 0 (0.0%) unmonitored: 1 (8.3%) total: 12 services
در این مثال، 11 مورد از 12 سرویس توسط apigee-monit
به عنوان فعال گزارش شده است. یک سرویس در حال حاضر تحت نظارت نیست.
ممکن است هنگام اجرای دستور report
برای اولین بار با خطای Connection refused
مواجه شوید. در این حالت، منتظر مدت زمان ویژگی conf_monit_monit_delay_time
باشید و سپس دوباره امتحان کنید.
خلاصه
دستور summary
هر جزء را فهرست کرده و وضعیت آن را ارائه می دهد. مثال زیر دستور summary
را فراخوانی می کند:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary
مثال زیر خروجی summary
از پیکربندی AIO (همه در یک) را نشان می دهد:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit summary Monit 5.25.1 uptime: 4h 20m Service Name Status Type host_name OK System apigee-zookeeper OK Process apigee-cassandra OK Process apigee-openldap OK Process apigee-qpidd OK Process apigee-postgresql OK Process edge-ui OK Process edge-qpid-server OK Remote Host edge-postgres-server OK Remote Host edge-management-server OK Remote Host edge-router OK Remote Host edge-message-processor OK Remote Host
اگر هنگام اجرای دستور summary
برای اولین بار با خطای Connection refused
شد، سعی کنید مدت زمان ویژگی conf_monit_monit_delay_time
را منتظر بمانید و سپس دوباره امتحان کنید.
مانیتور apigee-monit
بهترین تمرین این است که به طور منظم بررسی کنید که apigee-monit
در هر گره در حال اجرا است.
برای بررسی اینکه apigee-monit
در حال اجرا است، از دستور زیر استفاده کنید:
/opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit
Apigee توصیه می کند که این دستور را به صورت دوره ای در هر گره ای که apigee-monit
را اجرا می کند، صادر کنید. یکی از راه های انجام این کار استفاده از ابزاری مانند cron
است که وظایف برنامه ریزی شده را در فواصل زمانی از پیش تعریف شده اجرا می کند.
برای استفاده از cron
برای نظارت بر apigee-monit
:
اگر cron
شروع به تماشای apigee-monit
نکرد، بررسی کنید:
اگر می خواهید apigee-monit
متوقف یا موقتاً غیرفعال کنید، باید این کار cron
را نیز غیرفعال کنید، در غیر این صورت cron
apigee-monit
مجددا راه اندازی می کند.
برای غیرفعال کردن cron
یکی از موارد زیر را انجام دهید: