آنچه باید نظارت شود

Edge for Private Cloud نسخه ۴.۱۷.۰۱

به‌طورکلی در راه‌اندازی تولید، نیاز است که سازوکارهای پایش در استقرار Apigee Edge for Private Cloud فعال شود. این تکنیک‌های پایش به سرپرستان (یا اپراتورهای) شبکه درباره خطا یا خرابی هشدار می‌دهند. هر خطایی که تولید می‌شود به‌عنوان هشدار در Apigee Edge گزارش می‌شود. برای اطلاعات بیشتر درباره هشدارها، روال‌های مطلوب پایش را ببینید.

برای سهولت، عناصر Apigee عمدتاً در دو دسته طبقه‌بندی می‌شوند:

  • سرویس‌های سرور جاوا مختص Apigee – این سرویس‌ها شامل «سرور مدیریت»، «پردازشگر پیام»، «سرور Qpid»، و «سرور Postgres» می‌شود.
  • سرویس‌های طرف سوم – این سرویس‌ها شامل Nginx Router،‏ Apache Cassandra،‏ Apache ZooKeeper،‏ OpenLDAP، پایگاه داده PostgreSQL، و Qpid می‌شود.

در استقرار داخلی Apigee Edge، جدول زیر نگاهی سریع به پارامترهایی که می‌توانید پایش کنید ارائه می‌دهد:

عنصر

بررسی‌های سیستم

آمار سطح پردازش

بررسی‌های سطح API

بررسی‌های جریان پیام

ویژه عنصر

سرویس‌های جاوا مختص Apigee

سرور مدیریت

؟

؟

؟

پردازشگر پیام

؟

؟

؟

؟

سرور Qpid

؟

؟

؟

سرور Postgres

؟

؟

؟

خدمات طرف سوم

Apache Cassandra

؟

؟

Apache ZooKeeper

؟

؟

OpenLDAP

؟

؟

پایگاه داده PostgreSQL

؟

؟

Qpid

؟

؟

رهیاب Nginx

؟

؟

؟

به‌طورکلی، پس‌از نصب Apigee Edge، می‌توانید کارهای پایش زیر را برای پیگیری عملکرد نصب Apigee Edge for Private Cloud انجام دهید.

بررسی‌های وضعیت سیستم

بسیار مهم است که پارامترهای سلامت سیستم مانند استفاده از CPU، استفاده از حافظه، و اتصال‌پذیری درگاه را در سطح بالاتری اندازه‌گیری کنید. می‌توانید پارامترهای زیر را برای دریافت اطلاعات اولیه درباره سلامت سیستم پایش کنید.

  • استفاده از CPU – آمار پایه (کاربر/سیستم/ورودی-خروجی انتظار/بیکار) درباره استفاده از CPU را مشخص می‌کند. برای مثال، کل واحد پردازش مرکزی استفاده‌شده توسط سیستم.
  • حافظه آزاد/استفاده‌شده – میزان استفاده از حافظه سیستم را برحسب بایت مشخص می‌کند. برای مثال، حافظه فیزیکی استفاده‌شده توسط سیستم.
  • استفاده از فضای دیسک – اطلاعات سیستم فایل را براساس استفاده فعلی از دیسک مشخص می‌کند. برای مثال، فضای دیسک سخت استفاده‌شده توسط سیستم.
  • میانگین بار – تعداد فرایندهایی را که منتظر اجرا هستند مشخص می‌کند.
  • آمار شبکه – بسته‌های شبکه و/یا بایت‌های منتقل‌شده و دریافت‌شده، همراه با خطاهای انتقال درباره یک مؤلفه مشخص.

بررسی‌های پردازش/برنامه

در سطح فرایند، می‌توانید اطلاعات مهمی درباره همه فرایندهایی که درحال اجرا هستند مشاهده کنید. برای مثال، این موارد شامل آمار استفاده از حافظه و CPU است که یک فرایند یا برنامه از آن استفاده می‌کند. برای فرایندهایی مثل qpidd،‏ postgres postmaster،‏ java، و غیره، می‌توانید موارد زیر را پایش کنید:

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

بررسی‌های سطح میانای برنامه‌سازی کاربردی

در سطح API، می‌توانید پایش کنید که آیا سرور برای فراخوانی‌های API که Apigee آن‌ها را واسطه‌گری می‌کند فعال و درحال اجرا است یا نه. برای مثال، می‌توانید با فراخوانی فرمان cURL زیر، بررسی API را در «سرور مدیریت»، «مسیریاب»، و «پردازشگر پیام» انجام دهید:

curl http://<host>:<port>/v1/servers/self/up

که در آن <host> نشانی IP جزء Apigee Edge است. عدد <port> مختص به هر عنصر Edge است. برای مثال:

سرور مدیریت: ۸۰۸۰

  • رهیاب: ۸۰۸۱
  • پردازشگر پیام: ۸۰۸۲
  • و غیره.

برای کسب اطلاعات درباره اجرای این فرمان برای هریک از عناصر، بخش‌های جداگانه زیر را ببینید

این فراخوانی «درست» و «نادرست» را برمی‌گرداند. برای دریافت بهترین نتایج، می‌توانید تماس‌های میانای برنامه‌سازی کاربردی را مستقیماً در زیرینه (که نرم‌افزار Apigee با آن تعامل دارد) صادر کنید تا به‌سرعت متوجه شوید خطا در محیط نرم‌افزار Apigee وجود دارد یا در زیرینه.

توجه: برای نظارت بر پراکسی‌های API خود، می‌توانید از «سلامت API» در Apigee نیز استفاده کنید. ‫API Health تماس‌های زمان‌بندی‌شده‌ای با پراکسی‌های API شما برقرار می‌کند و درصورت عدم موفقیت آن‌ها و نحوه عدم موفقیتشان به شما اطلاع می‌دهد. وقتی تماس‌ها موفقیت‌آمیز باشد، «سلامت میانای برنامه‌سازی کاربردی» زمان‌های پاسخ را به شما نشان می‌دهد و حتی می‌تواند وقتی تأخیر پاسخ زیاد است به شما اطلاع دهد. میانای برنامه‌سازی کاربردی «سلامت» می‌تواند از مکان‌های مختلف در سراسر جهان تماس بگیرد تا رفتار میانای برنامه‌سازی کاربردی را بین مناطق مقایسه کند.

بررسی‌های جریان پیام

می‌توانید داده‌های مربوط به الگوی/آمار جریان پیام را از «مسیریاب‌ها» و «پردازشگرهای پیام» جمع‌آوری کنید. این کار به شما امکان می‌دهد موارد زیر را پایش کنید:

  • تعداد کارخواهان فعال
  • تعداد پاسخ‌ها (۱۰X،‏ ۲۰X،‏ ۳۰X،‏ ۴۰X، و ۵۰X)
  • اتصال برقرار نشد

این کار به شما کمک می‌کند تا داشبوردهایی برای جریان پیام میانای برنامه‌سازی کاربردی ارائه دهید.

بررسی سلامت رهیاب «پردازشگر پیام»

«مسیریاب» سازوکار بررسی سلامت را پیاده‌سازی می‌کند تا مشخص کند کدام‌یک از «پردازشگرهای پیام» طبق انتظار کار می‌کنند. اگر «پردازشگر پیام» به‌عنوان پایین یا کند شناسایی شود، «مسیریاب» می‌تواند به‌طور خودکار «پردازشگر پیام» را از چرخه خارج کند. اگر این اتفاق بیفتد، «رهیاب» پیام‌های «کاهش قیمت» را در فایل گزارش «رهیاب» در /opt/apigee/var/log/edge-router/logs/system.log می‌نویسد.

می‌توانید فایل گزارش «مسیریاب» را برای این پیام‌ها پایش کنید. برای مثال، اگر «رهیاب» «پردازنده پیام» را از چرخه خارج کند، پیام را به این شکل در گزارش می‌نویسد:

2014-05-06 15:51:52,159 org: env: RPCClientClientProtocolChildGroup-RPC-0 INFO CLUSTER - ServerState.setState() : State of 2a8a0e0c-3619-416f-b037-8a42e7ad4577 is now DISCONNECTED. handle = <MP_IP> at 1399409512159

2014-04-17 12:54:48,512 org: env: nioEventLoopGroup-2-2 INFO HEARTBEAT - HBTracker.gotResponse() : No HeartBeat detected from /<MP_IP>:<PORT> Mark Down

که در آن /<MP_IP>:<PORT> نشانی IP و شماره درگاه «پردازنده پیام» است.

اگر «رهیاب» بعداً بررسی سلامت انجام دهد و تشخیص دهد که «پردازنده پیام» به‌درستی کار می‌کند، «رهیاب» به‌طور خودکار «پردازنده پیام» را دوباره در چرخه قرار می‌دهد. «مسیریاب» همچنین پیام «نشانه‌گذاری» را به گزارش با این قالب می‌نویسد:

2014-05-06 16:07:29,054 org: env: RPCClientClientProtocolChildGroup-RPC-0 INFO CLUSTER - ServerState.setState() : State of 2a8a0e0c-3619-416f-b037-8a42e7ad4577 is now CONNECTED. handle = <IP> at 1399410449054

2014-04-17 12:55:06,064 org: env: nioEventLoopGroup-4-1 INFO HEARTBEAT - HBTracker.updateHB() : HeartBeat detected from /<IP>:<PORT> Mark Up