خوداصلاحی با apigee-monit

‫Apigee Edge for Private Cloud شامل apigee-monit، ابزاری مبتنی بر monit utility متن‌باز است. apigee-monit به‌طور دوره‌ای سرویس‌های Edge را نظرسنجی می‌کند؛ اگر سرویسی دردسترس نباشد، apigee-monit تلاش می‌کند آن را بازراه‌اندازی کند.

برای استفاده از apigee-monit، باید آن را به‌صورت دستی نصب کنید. این ویژگی بخشی از نصب استاندارد نیست.

به‌طور پیش‌فرض، apigee-monit وضعیت سرویس‌های Edge را هر ۶۰ ثانیه بررسی می‌کند.

راه‌اندازی سریع

این بخش به شما نشان می‌دهد که چگونه به‌سرعت با apigee-monit شروع‌به‌کار کنید.

اگر از Amazon Linux یا Oracle-Linux-7.X استفاده می‌کنید، ابتدا monit را ازطریق Fedora نصب کنید. درغیراین‌صورت، از این مرحله رد شوید.

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 configure
/opt/apigee/apigee-service/bin/apigee-service apigee-monit start

این کار apigee-monit را نصب می‌کند و به‌طور پیش‌فرض نظارت بر همه عناصر در گره را شروع می‌کند.

  توقف پایش مؤلفه‌ها
/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 کمک می‌کند مطمئن شوید همه عناصر در یک گره فعال و درحال اجرا باقی می‌مانند. این کار را با ارائه انواع خدمات انجام می‌دهد، ازجمله:

  • درحال بازراه‌اندازی سرویس‌های ناموفق
  • نمایش اطلاعات خلاصه
  • وضعیت نظارت بر گزارش‌گیری
  • ارسال اعلان‌ها
  • پایش سرویس‌های غیر Edge

Apigee توصیه می‌کند apigee-monit را پایش کنید تا مطمئن شوید درحال اجرا است. برای اطلاعات بیشتر، پایش apigee-monit را ببینید.

معماری apigee-monit

درطول نصب و پیکربندی Apigee Edge برای Private Cloud، به‌صورت اختیاری نمونه جداگانه‌ای از apigee-monit را در هر گره در خوشه‌تان نصب می‌کنید. این نمونه‌های جداگانه apigee-monit مستقل از یکدیگر عمل می‌کنند: آن‌ها وضعیت مؤلفه‌های خود را به گره‌های دیگر اطلاع نمی‌دهند و خرابی‌های ابزار نظارت را به هیچ سرویس مرکزی اطلاع نمی‌دهند.

تصویر زیر معماری apigee-monit را در خوشه ۵ گرهی نشان می‌دهد:

معماری
  Apigee monit در خوشه ۵ گره‌ای
شکل ۱: نمونه جداگانه‌ای از apigee-monit به‌صورت مجزا در هر گره در یک خوشه اجرا می‌شود

پیکربندی‌های مؤلفه

apigee-monit از پیکربندی‌های مؤلفه برای تعیین اینکه کدام مؤلفه‌ها باید نظارت شوند، کدام جنبه‌های مؤلفه باید بررسی شوند، و درصورت بروز خرابی چه اقدامی باید انجام شود استفاده می‌کند.

به‌طور پیش‌فرض، apigee-monit همه مؤلفه‌های Edge را در گره بااستفاده از پیکربندی‌های مؤلفه ازپیش تعریف‌شده آن‌ها نظارت می‌کند. برای مشاهده تنظیمات پیش‌فرض، می‌توانید به فایل‌های پیکربندی مؤلفه apigee-monit نگاه کنید. نمی‌توانید پیکربندی‌های مؤلفه پیش‌فرض را تغییر دهید.

apigee-monit جنبه‌های مختلف مؤلفه را بررسی می‌کند، که به مؤلفه‌ای که بررسی می‌کند بستگی دارد. جدول زیر مواردی را که apigee-monit برای هر مؤلفه بررسی می‌کند فهرست می‌کند و نشان می‌دهد پیکربندی مؤلفه برای هر مؤلفه کجاست. توجه داشته باشید که برخی‌از مؤلفه‌ها در یک فایل پیکربندی واحد تعریف می‌شوند، درحالی‌که برخی دیگر پیکربندی‌های خاص خود را دارند.

مؤلفه مکان پیکربندی چه چیزی نظارت می‌شود
سرور مدیریت /opt/apigee/edge-management-server/monit/default.conf apigee-monit بررسی:
  • درگاه(های) مشخص‌شده باز است و درخواست‌ها را می‌پذیرد
  • پروتکل(های) مشخص‌شده پشتیبانی می‌شود
  • وضعیت پاسخ

علاوه‌براین، برای این مؤلفه‌ها 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
Cassandra
واسط کاربر Edge جدید
SymasLDAP
Postgres
Qpid
Zookeeper
/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

مثال زیر پیکربندی پیش‌فرض را برای مؤلفه New Edge UI (edge-management-ui) نشان می‌دهد:

check process edge-management-ui
 with pidfile /opt/apigee/var/run/edge-management-ui/edge-management-ui.pid
 start program = "/opt/apigee/apigee-service/bin/apigee-service edge-management-ui start" with timeout 55 seconds
 stop program = "/opt/apigee/apigee-service/bin/apigee-service edge-management-ui stop"

نمی‌توانید پیکربندی‌های عنصر پیش‌فرض را برای هیچ‌یک از عناصر Apigee Edge for Private Cloud تغییر دهید. بااین‌حال، می‌توانید پیکربندی‌های مؤلفه خودتان را برای سرویس‌های خارجی، مثل نقطه پایانی هدف یا سرویس httpd، اضافه کنید. برای اطلاعات بیشتر، به پیکربندی‌های عنصر غیر Apigee مراجعه کنید.

به‌طور پیش‌فرض، apigee-monit همه عناصر را در گرهی که در آن اجرا می‌شود پایش می‌کند. می‌توانید آن را برای همه عناصر یا برای عناصر جداگانه فعال یا غیرفعال کنید. برای اطلاعات بیشتر، به اینجا مراجعه کنید:

نصب apigee-monit

‫apigee-monit به‌طور پیش‌فرض نصب نمی‌شود؛ می‌توانید آن را پس‌از ارتقا دادن یا نصب کردن نسخه ۴.۱۹.۰۱ یا جدیدتر Apigee Edge for Private Cloud به‌صورت دستی نصب کنید.

این بخش نحوه نصب apigee-monit را توضیح می‌دهد.

برای کسب اطلاعات درباره حذف نصب apigee-monit، به حذف نصب apigee-monit مراجعه کنید.

نصب apigee-monit

این بخش نحوه نصب apigee-monit را شرح می‌دهد.

برای نصب apigee-monit:

  1. apigee-monit را با فرمان زیر نصب کنید:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit install
  2. ‫apigee-monit را با فرمان زیر پیکربندی کنید:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit configure
  3. ‫apigee-monit را با فرمان زیر شروع کنید:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit start
  4. این روال را برای هر گره در خوشه‌تان تکرار کنید.

توقف و شروع پایش مؤلفه‌ها

وقتی سرویسی به هر دلیلی متوقف می‌شود، apigee-monit تلاش می‌کند سرویس را بازراه‌اندازی کند.

اگر بخواهید عمداً مؤلفه‌ای را متوقف کنید، این موضوع می‌تواند مشکل‌ساز شود. برای مثال، ممکن است بخواهید وقتی نیاز به پشتیبان‌گیری یا ارتقا دادن یک جزء دارید، آن را متوقف کنید. اگر apigee-monit سرویس را درطول پشتیبان‌گیری یا ارتقا بازراه‌اندازی کند، ممکن است روال نگهداری شما مختل شود و احتمالاً باعث ناموفق شدن آن شود.

بخش‌های زیر گزینه‌های توقف نظارت بر مؤلفه‌ها را نشان می‌دهد.

متوقف کردن مؤلفه و لغو نظارت بر آن

برای متوقف کردن یک عنصر و لغو نظارت بر آن، فرمان زیر را اجرا کنید:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit stop-component -c component_name
component_name می‌تواند یکی از موارد زیر باشد:
  • ‫apigee-cassandra (Cassandra)
  • ‫apigee-openldap (OpenLDAP)
  • ‫apigee-postgresql (پایگاه داده PostgreSQL)
  • ‫apigee-qpidd (Qpidd)
  • ‫apigee-zookeeper (ZooKeeper)
  • ‫edge-management-server (سرور مدیریت)
  • edge-management-ui (میانای کاربری جدید Edge)
  • ‫edge-message-processor (پردازشگر پیام)
  • ‫edge-postgres-server (سرور Postgres)
  • ‫edge-qpid-server (سرور Qpid)
  • ‫edge-router (رهیاب لبه)

توجه داشته باشید که «همه» گزینه معتبری برای 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_name
component_name می‌تواند یکی از موارد زیر باشد:
  • ‫apigee-cassandra (Cassandra)
  • ‫apigee-openldap (OpenLDAP)
  • ‫apigee-postgresql (پایگاه داده PostgreSQL)
  • ‫apigee-qpidd (Qpidd)
  • ‫apigee-zookeeper (ZooKeeper)
  • ‫edge-management-server (سرور مدیریت)
  • edge-management-ui (میانای کاربری جدید Edge)
  • ‫edge-message-processor (پردازشگر پیام)
  • ‫edge-postgres-server (سرور Postgres)
  • ‫edge-qpid-server (سرور Qpid)
  • ‫edge-router (رهیاب لبه)

برای ازسر گرفتن پایش مؤلفه، فرمان زیر را اجرا کنید:

/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 را نیز غیرفعال کنید، همان‌طور که در توقف، شروع، و غیرفعال کردن apigee-monit شرح داده شده است.

توقف، شروع، و غیرفعال کردن apigee-monit

مانند هر سرویس دیگری، می‌توانید بااستفاده از فرمان apigee-service، apigee-monit را متوقف و راه‌اندازی کنید. علاوه‌براین، 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 از گره، همان‌طور که در حذف نصب apigee-monit توضیح داده شده است، آن را برای همیشه غیرفعال کنید.

حذف نصب apigee-monit

برای حذف نصب apigee-monit:

  1. اگر کار cron را برای نظارت بر apigee-monit راه‌اندازی کرده‌اید، کار cron را قبل‌از حذف نصب apigee-monit بردارید:
    sudo rm /etc/cron.d/apigee-monit.cron
  2. با فرمان زیر apigee-monit را متوقف کنید:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit stop
  3. apigee-monit را با فرمان زیر حذف نصب کنید:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit uninstall
  4. این روال را برای هر گره در خوشه‌تان تکرار کنید.

پایش عنصر تازه‌نصب‌شده

اگر مؤلفه جدیدی را در گره‌ای که apigee-monit را اجرا می‌کند نصب کنید، می‌توانید با اجرای فرمان restart مربوط به apigee-monit، پایش آن را شروع کنید. با این کار، فایل monit.conf جدیدی تولید می‌شود که مؤلفه جدید را در پیکربندی‌های مؤلفه خود لحاظ می‌کند.

مثال زیر apigee-monit را بازراه‌اندازی می‌کند:

/opt/apigee/apigee-service/bin/apigee-service apigee-monit restart

سفارشی‌سازی apigee-monit

می‌توانید تنظیمات مختلف apigee-monit را سفارشی‌سازی کنید، ازجمله:

  1. تنظیمات کنترل پیش‌فرض apigee-monit
  2. تنظیمات پیکربندی سراسری
  3. پیکربندی‌های مؤلفه غیرApigee

تنظیمات کنترل apigee-monit پیش‌فرض

می‌توانید تنظیمات کنترل پیش‌فرض apigee-monit را، مثل دفعات بررسی وضعیت و مکان‌های فایل‌های apigee-monit، سفارشی‌سازی کنید. این کار را با ویرایش فایل ویژگی‌ها بااستفاده از تکنیک کد با پیکربندی انجام می‌دهید. فایل‌های Properties حتی پس‌از ارتقا دادن Apigee Edge برای Private Cloud باقی خواهند ماند.

جدول زیر تنظیمات کنترل پیش‌فرض apigee-monit را که می‌توانید سفارشی‌سازی کنید شرح می‌دهد:

دارایی شرح
conf_monit_httpd_port درگاه دیمون httpd. ‫apigee-monit از httpd برای برنامه داشبورد و فعال کردن گزارش‌ها/خلاصه‌ها استفاده می‌کند. مقدار پیش‌فرض ۲۸۱۲ است.
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 تلاش می‌کند هر فرایند را بررسی کند؛ پیش‌فرض ۶۰ ثانیه است.
conf_monit_monit_rundir مکان فایل‌های PID و وضعیت که apigee-monit از آن‌ها برای بررسی فرایندها استفاده می‌کند.

برای سفارشی‌سازی کردن تنظیمات کنترل پیش‌فرض apigee-monit:

  1. فایل زیر را ویرایش کنید:
    /opt/apigee/customer/application/monit.properties

    اگر فایل وجود ندارد، آن را ایجاد کنید و مالک را روی کاربر «apigee» تنظیم کنید:

    chown apigee:apigee /opt/apigee/customer/application/monit.properties

    توجه داشته باشید که اگر فایل ازقبل وجود داشته باشد، ممکن است ویژگی‌های پیکربندی دیگری علاوه‌بر آنچه در جدول بالا فهرست شده است در آن تعریف شده باشد. نباید ویژگی‌هایی غیراز موارد فهرست‌شده در بالا را تغییر دهید.

  2. مقادیر دارایی را با مقادیر جدیدتان تنظیم یا جایگزین کنید.

    برای مثال، برای تغییر مکان فایل گزارش به /tmp، ویژگی زیر را اضافه یا ویرایش کنید:

    conf_monit_monit_logdir=/tmp/apigee-monit.log
  3. تغییرات را در فایل monit.properties ذخیره کنید.
  4. ‫
  5. apigee-monit را با فرمان زیر دوباره پیکربندی کنید:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit configure
  6. apigee-monit را با فرمان زیر مجدداً بار کنید:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit reload

    اگر نمی‌توانید apigee-monit را بازراه‌اندازی کنید، فایل گزارش را برای یافتن خطاها بررسی کنید، همان‌طور که در دسترسی به فایل‌های گزارش apigee-monit شرح داده شده است.

  7. این روال را برای هر گره در خوشه‌تان تکرار کنید.

تنظیمات پیکربندی سراسری

می‌توانید تنظیمات پیکربندی سراسری را برای apigee-monit تعریف کنید؛ برای مثال، می‌توانید اعلان‌های ایمیلی را برای هشدارها اضافه کنید. این کار را با ایجاد فایل پیکربندی در دایرکتوری /opt/apigee/data/apigee-monit و سپس بازراه‌اندازی apigee-monit انجام می‌دهید.

برای تعریف تنظیمات پیکربندی سراسری برای apigee-monit:

  1. فایل پیکربندی عنصر جدیدی در مکان زیر ایجاد کنید:
    /opt/apigee/data/apigee-monit/filename.conf

    که filename می‌تواند هر نام فایل معتبری باشد، به‌جز «monit».

  2. مالک فایل پیکربندی جدید را به کاربر «apigee» تغییر دهید، همان‌طور که در مثال زیر نشان داده شده است:
    chown apigee:apigee /opt/apigee/data/apigee-monit/my-mail-config.conf
  3. تنظیمات پیکربندی سراسری‌تان را به فایل جدید اضافه کنید. مثال زیر سرور ایمیل را پیکربندی می‌کند و گیرندگان هشدار را تنظیم می‌کند:
    SET MAILSERVER smtp.gmail.com PORT 465
      USERNAME "example-admin@gmail.com" PASSWORD "PASSWORD"
      USING SSL, WITH TIMEOUT 15 SECONDS
    
    SET MAIL-FORMAT {
      from: edge-alerts@example.com
      subject: Monit Alert -- Service: $SERVICE $EVENT on $HOST
    }
    SET ALERT fred@example.com
    SET ALERT nancy@example.com

    برای فهرست کامل گزینه‌های پیکربندی سراسری، مستندات monit را ببینید.

  4. تغییرات را در فایل پیکربندی مؤلفه ذخیره کنید.
  5. apigee-monit را با فرمان زیر مجدداً بار کنید:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit reload

    اگر apigee-monit بازراه‌اندازی نشد، فایل گزارش را برای یافتن خطاها بررسی کنید، همان‌طور که در دسترسی به فایل‌های گزارش apigee-monit شرح داده شده است.

  6. این رویه را برای هر گره در خوشه‌تان تکرار کنید.

پیکربندی‌های مؤلفه غیر Apigee

می‌توانید پیکربندی‌های خودتان را به apigee-monit اضافه کنید تا سرویس‌هایی را که بخشی از Apigee Edge for Private Cloud نیستند بررسی کند. برای مثال، می‌توانید از apigee-monit برای بررسی اینکه میاناهای برنامه‌سازی کاربردی شما با ارسال درخواست به نقطه پایان هدف شما اجرا می‌شوند استفاده کنید.

برای افزودن پیکربندی عنصر غیر Apigee:

  1. فایل پیکربندی عنصر جدیدی در مکان زیر ایجاد کنید:
    /opt/apigee/data/apigee-monit/filename.conf

    که filename می‌تواند هر نام فایل معتبری باشد، به‌جز «monit».

    می‌توانید هر تعداد فایل پیکربندی عنصر که لازم است ایجاد کنید. برای مثال، می‌توانید برای هر مؤلفه غیرApigee که می‌خواهید در گره پایش کنید، فایل پیکربندی جداگانه‌ای ایجاد کنید.

  2. مالک فایل پیکربندی جدید را به کاربر «apigee» تغییر دهید، همان‌طور که در مثال زیر نشان داده شده است:
    chown apigee:apigee /opt/apigee/data/apigee-monit/my-config.conf
  3. پیکربندی‌های سفارشی‌تان را به فایل جدید اضافه کنید. مثال زیر نقطه پایان هدف را در سرور محلی بررسی می‌کند:
    CHECK HOST localhost_validate_test WITH ADDRESS localhost
      IF FAILED
        PORT 15999
        PROTOCOL http
        REQUEST "/validate__test"
        CONTENT = "Server Ready"
        FOR 2 times WITHIN 3 cycles
      THEN alert

    برای مشاهده فهرست کامل تنظیمات پیکربندی احتمالی، سند monit را ببینید.

  4. تغییرات را در فایل پیکربندی ذخیره کنید.
  5. apigee-monit را با فرمان زیر مجدداً بار کنید:
    /opt/apigee/apigee-service/bin/apigee-service apigee-monit reload

    اگر apigee-monit بازراه‌اندازی نشد، فایل گزارش را برای یافتن خطاها بررسی کنید، همان‌طور که در دسترسی به فایل‌های گزارش apigee-monit شرح داده شده است.

  6. این روال را برای هر گره در خوشه‌تان تکرار کنید.

توجه داشته باشید که این فقط برای مؤلفه‌های غیر Edge است. نمی‌توانید پیکربندی‌های مؤلفه را برای مؤلفه‌های Edge سفارشی‌سازی کنید.

دسترسی به فایل‌های گزارش apigee-monit

apigee-monit همه فعالیت‌ها، ازجمله رویدادها، بازراه‌اندازی‌ها، تغییرات پیکربندی، و هشدارها را در یک فایل گزارش ثبت می‌کند.

مکان پیش‌فرض فایل گزارش عبارت است از:

/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

در این مثال، 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-management-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:

  1. با کپی کردن دایرکتوری apigee-monit.cron به دایرکتوری /etc/cron.d، همان‌طور که در مثال زیر نشان داده شده است، پشتیبانی cron را اضافه کنید:
    cp /opt/apigee/apigee-monit/cron/apigee-monit.cron /etc/cron.d/
  2. برای ویرایش کردن فایل 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 دستور می‌دهد فرایند apigee-monit را هر ۲ دقیقه بررسی کند.

    نمی‌توانید کار cron را بیشتر از یک بار در دقیقه اجرا کنید.

    برای اطلاعات بیشتر درباره استفاده از cron، به اسناد راهنمایی سیستم‌عامل سرور یا صفحات راهنمای man مراجعه کنید.

  3. تنظیمات cron را تغییر دهید تا با خط‌مشی‌های سازمانتان مطابقت داشته باشد. برای مثال، برای تغییر دادن بسامد اجرا به هر ۵ دقیقه، تعریف کار را به این صورت تنظیم کنید:
    */5 * * * * root /opt/apigee/apigee-service/bin/apigee-service apigee-monit monitor_monit
  4. فایل apigee-monit.cron را ذخیره کنید.
  5. این رویه را برای هر گره در خوشه‌تان تکرار کنید.

اگر cron تماشای apigee-monit را شروع نمی‌کند، موارد زیر را بررسی کنید:

  • یک خط خالی بعداز تعریف شغل cron وجود دارد.
  • فقط یک کار cron در فایل تعریف شده است. (خطوط نظردهی‌شده محسوب نمی‌شوند.)

اگر می‌خواهید apigee-monit را متوقف یا موقتاً غیرفعال کنید، باید این کار cron را نیز غیرفعال کنید، درغیراین‌صورت cron، apigee-monit را بازراه‌اندازی خواهد کرد.

برای غیرفعال کردن 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