راه اندازی و پیکربندی Edge Microgateway

شما در حال مشاهده مستندات Apigee Edge هستید.
به مستندات Apigee X مراجعه کنید .
اطلاعات

میکروگیت‌وی اج نسخه ۳.۳.x

نمای کلی

پس از تکمیل مراحل این راهنمای راه‌اندازی، یک نصب کاملاً پیکربندی‌شده و کارآمد Edge Microgateway خواهید داشت که قادر به پردازش درخواست‌های API است. شما با برقراری تماس‌های API امن از طریق Edge Microgateway به یک هدف backend، تنظیمات را آزمایش خواهید کرد. همچنین یاد خواهید گرفت که چگونه یک افزونه spike arrest به Microgateway اضافه کنید.

این راهنما به این بخش‌ها تقسیم شده است:

پیش‌نیاز: نصب Edge Microgateway

دستورالعمل‌های موجود در بخش نصب Edge Microgateway را دنبال کنید. پس از اتمام نصب، آماده خواهید بود تا مراحل این آموزش را دنبال کنید.

بخش ۱: پیکربندی Edge Microgateway

در این بخش، شما از یک رابط خط فرمان (CLI) برای پیکربندی Edge Microgateway جهت ارتباط با Apigee Edge استفاده خواهید کرد.

مراحل پیکربندی Apigee Edge Cloud

برای استفاده از Edge Microgateway با Apigee Edge Cloud، این مراحل را دنبال کنید:

  1. مقداردهی اولیه Edge Microgateway (شما فقط باید این مرحله را یک بار انجام دهید):
    edgemicro init
  2. یک فایل پیکربندی به نام default.yaml در دایرکتوری خانگی شما و در زیرشاخه‌ای به نام .edgemicro قرار داده شده است. اکنون بررسی کنید که آیا این فایل وجود دارد یا خیر:
    ls ~/.edgemicro
    default.yaml

    توجه: در مستندات Edge Microgateway، ما با استفاده از علامت tilde ( ~ ) به دایرکتوری خانگی اشاره می‌کنیم که یک میانبر یونیکس است. اگر از ویندوز استفاده می‌کنید، اگر پوسته‌ای را اجرا می‌کنید که از tilde پشتیبانی نمی‌کند، باید متغیر محیطی مناسب را در دستوراتی که به دایرکتوری خانگی اشاره می‌کنند، جایگزین tilde کنید. برای مثال: %USERPROFILE%/.edgemicro .

  3. تمام دستورات CLI دارای یک تابع راهنما هستند. برای دستور پیکربندی edgemicro، راهنمای آن را چاپ کنید:
    edgemicro configure -h
  4. برای پیکربندی Edge Microgateway دستور زیر را اجرا کنید:
    edgemicro configure -o [org] -e [env] -u [username] 

    کجا:

    • org: نام سازمان Edge شما (شما باید مدیر سازمان باشید).
    • env: محیطی در سازمان شما (مانند test یا prod).
    • username: آدرس ایمیل مرتبط با حساب Apigee شما.

      نکته: دستور configure پارامترهای اضافی را مجاز می‌داند. برای مشاهده لیست کامل، به بخش پیکربندی Edge Microgateway برای Apigee Edge Cloud مراجعه کنید.

مثال

edgemicro configure -o docs -e test -u jdoe@example.com

خروجی

./edgemicro configure -o docs -e test -u jdoe@apigee.com
password:
current nodejs version is v12.5.0
current edgemicro version is 3.1.0
password:
file doesn't exist, setting up
Give me a minute or two... this can take a while...
App edgemicro-auth deployed.
checking org for existing KVM
error checking for cert. Installing new cert.
creating KVM
adding private_key
adding public_key
configuring host edgemicroservices-us-east-1.apigee.net for region us-east-1

saving configuration information to: $HOME/.edgemicro/docs-test-config.yaml

vault info:
 -----BEGIN CERTIFICATE-----
MIICpDCCAYwCCQCQ2mJZJGbPPTANBgkqhkiG9w0BAQsFADAUMRIwEAYDVQQDEwls
b2NhbGhvc3QwHhcNMTcwOTA3MjA0ODA4WhcNMTcwOTA4MjA0ODA4WjAUMRIwEAYD
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDw
yzmqi5CelqqtTr6IaFe1ssrMXEDnNtkBh95U6F5zHLsNQhJcyNUAO9um6FLMSqSd
fTztXfWUZzDgmbb6sfbx/9cqpvQ8TIjxyIz8xGM9H4legRQmsCQoYGkLjpPE5ZOa
wZrI5IaVm8LY6vbopPFwxgKOQ9bphx6k9Na055DmNyZAOTMD+4I0m/RdsrnZnYih
3DaFj1tXHKZI1jfAt/QOif5Nmk4+JckYwF+9HBysWUbbvj/gnBjVYF2Isb7q7oFD
lPGhwFoIebMqHMWD8lG7+9RJDO9dDV6f1g1/9waIrq1D+MoVXos9VMstNrPp0cKF
Ue+lAkct8tylH+2MosF7AgMBAAEwDQYJKoZIhvcNAQELBQADggEBAJMRdcQh3ayy
csVVT4TYwxV7MKWRfhDRz6X+MM9frB+Z7sI4+ZoZbXKOoZI2hSjmbdLpkNR/m9eJ
+1Uk0JKmpSY7Q+1rRrvcHsWNysGf4z+zDJXYECTrtSnXKBXtb9SJ8JAfoZOQD0lA
zmKuJjQMLTdiYMHOBR6ZWnaKaRvrQwGHcQrheJm4a90XgZF6jcRR8CPrBzkmsbCp
IU/Ux3E17wDGYPxjJs5otyQG8rN/88RGyaSeXK8rjKr9D4KFGJeasXBKmTG2afAr
yfBvS4h6s42FCOR/eLpmMllVoO9up71Fa3EtV+aK+FNNY9uMbgUHeLQE7z9nn06q
PTmvExZLkLQ=
-----END CERTIFICATE-----

The following credentials are required to start edge micro
  key: 27ee39567c75e4567a66236cbd4e86d1cc93df6481454301bd5fac4d3497fcbb
  secret: 4618b0008a6185d7327ebf53bee3c50282ccf45a3cceb1ed9828bfbcf1148b47
    

مراحل پیکربندی ابر خصوصی Apigee

برای استفاده از Edge Microgateway با Apigee Private Cloud، این مراحل را دنبال کنید:

  1. مقداردهی اولیه Edge Microgateway (شما فقط باید این مرحله را یک بار انجام دهید):
    edgemicro init
  2. اطلاعات راهنما را برای دستور edgemicro private configure چاپ کنید. می‌توانید از این طریق برای هر دستور یا گزینه دستوری Edge Microgateway CLI راهنما چاپ کنید.
    edgemicro private configure -h
  3. دستور زیر را اجرا کنید. این دستور به اطلاعات استانداردی در مورد حساب کاربری Apigee Edge Private Cloud شما نیاز دارد: نام سازمان، نام محیط، نام کاربری (آدرس ایمیل)، رمز عبور، IP سرور مدیریت و IP روتر. برای استفاده از این دستور باید مدیر سازمان Edge باشید:
    edgemicro private configure -o [org] -e [env] -u [username] -r [runtime_url] -m [mgmt_url] -v [virtual_host]

    کجا:

    • org نام سازمان Edge شما است (شما باید مدیر org باشید).
    • env یک محیط در سازمان شما (مانند test یا prod) است.
    • runtime_url آدرس اینترنتی زمان اجرا برای نمونه ابر خصوصی شما است.
    • mgmt_url آدرس اینترنتی سرور مدیریت برای نمونه ابر خصوصی شما است.
    • username آدرس ایمیل مرتبط با حساب Apigee شماست.
    • virtual_host لیستی از نام‌های میزبان مجازی است که با کاما از هم جدا شده‌اند. مقادیر پیش‌فرض default,secure هستند.

مثال

edgemicro private configure -o docs -e test -u jdoe@example.com -r http://192.162.52.106:9001 -m http://192.162.52.106:8080 -v default

یا اگر نام مستعار میزبان مجازی شما myorg-test.mycompany.com است، می‌توانید از دستوری مانند این استفاده کنید:

edgemicro private configure -o docs -e test -u jdoe@example.com -r myorg-test.mycompany.com -m http://192.162.52.106:8080 -v default

خروجی

delete cache config
checking for previously deployed proxies
configuring edgemicro internal proxy
deploying edgemicro internal proxy
deploying  edgemicro-auth  app
copy auth app into tmp dir
copy config into tmp deer
Give me a minute or two... this can take a while...
App edgemicro-auth added to your org. Now adding resources.

checking org for existing KVM
error checking for cert. Installing new cert.
creating KVM
adding private_key
adding public_key
configuring host http://192.168.52.106:9001 for region dc-1

saving configuration information to: $HOME/.edgemicro/jdoe-test-config.yaml
vault info: 
-----BEGIN CERTIFICATE----- 
MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls 
b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD 
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3 
OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFswhB0Yvg6JKWsKWBDP9o
Xl96dtgH7xPFRqIU0zI452jkMQ1fPz2mSaGwik245yfBku7olooXKRKTRKOUoXa 
q3Hld/RPxGSsWtiyyYtKex7tuFdq0Knm1EhowdTRGIgjNvudeYMka/XPRXuykhd 
xIDxWj4rdX+4GPx9qT2eTQC5nOAC7XHVL7ys4KqsAiv28vw10u400KstFFS8Qho 
7FaE0bOKLolKKadKyA60ha1XIw/uSTD6ZQFWQ+XM3OaRbXePWXnSZioSxXcZT7L 
hMUKbsRXw/TCvRB51LgNAgMBAAEwDQYJKoZIhvcNAQELBQADgEBAOuR1OmE/W6j 
gRAarJB5EQuTEpI/9Zpg5c5RAGjzLhkazsycn7pal+IymUjCV7D0oIxTVuTM8ZZ 
57kR5hF/C1ZypDN9i+KGP2ovX8WOCCXYtIQECgZPB/L/7/k7BDuKN4vFBvWUe3X 
s2oyjnVWy+ASqsW8gHfj8ekhe22bP240Oqkbyg9SZP9ol1tvJX6+M0thYwcTwAd 
ft929Icey/MOTQC0jB2qm0gnIx/7KInFXfS5KoFRJoGrWDeckr3RdBo2LhnPaeZ 
1gPYIqphZ3HfisF5KlBXoR8oT/Ilym/nq5COlv+3L4tMIk18F7BQZB60SRazifz 
pFkIxepyr/0= 
-----END CERTIFICATE----- 

The following credentials are required to start edge micro 
   key: a3f8f3dfe39158fc3c50b274f0af2234246e0d5f6ea4ad09389b645147151ba3
   secret: 3e9904802fb3c0e8ca408128a11119cf13546d54dac10ace944c097a726a1263

edgemicro configuration complete!
    

نصب را تأیید کنید

برای تأیید نصب، این دستور را اجرا کنید. اگر هیچ خطایی گزارش نشد، همه چیز به درستی تنظیم شده است و می‌توانید Edge Microgateway را با موفقیت شروع کنید.

edgemicro verify -o [org] -e [env] -k [key] -s [secret]

کجا:

  • org نام سازمان Edge شما است (شما باید مدیر org باشید).
  • env یک محیط در سازمان شما (مانند test یا prod) است.
  • key کلیدی است که قبلاً توسط دستور configure برگردانده شده است.
  • secret کلیدی است که قبلاً توسط دستور configure برگردانده شده است.

مثال

edgemicro verify -o docs -e test -k 93b01fd21d86331459ae52f624ae9aeb13eb94767ce40a4f621d172cdfb7e8e6 -s c8c755be97cf56c21f8b0156d7132afbd03625bbd85dc34ebfefae4f23fbcb3c

درباره پیکربندی

تمام پیکربندی‌های انجام‌شده تاکنون به Edge Microgateway اجازه می‌دهد تا خود را به Apigee Edge بوت‌استرپ کند. پس از موفقیت بوت‌استرپ، Edge Microgateway مجموعه‌ای از اطلاعات پیکربندی اضافی را از Apigee Edge بازیابی می‌کند.

این اطلاعات پیکربندی برای چه چیزی استفاده می‌شود؟ همانطور که در بخش بعدی این آموزش خواهیم دید، وقتی Edge Microgateway شروع به کار می‌کند، باید لیستی از پروکسی‌های API ویژه Edge Microgateway-aware را از Apigee Edge دریافت کند. در بخش بعدی این آموزش، شما یک پروکسی Microgateway-aware ایجاد خواهید کرد. Edge Microgateway کلاینت‌ها را محدود می‌کند تا فقط APIهایی را که توسط این پروکسی‌های API Microgateway-aware ارائه می‌شوند، فراخوانی کنند و کلاینت‌ها (به طور پیش‌فرض) ملزم به ارائه یک توکن امنیتی معتبر برای هر فراخوانی هستند. برای مطالعه بیشتر در مورد این پروکسی‌ها، به بخش « آنچه باید در مورد پروکسی‌های Edge Microgateway-aware بدانید » در مرور کلی Edge Microgateway مراجعه کنید.

به عنوان یک مدیر Edge org، جالب خواهد بود بدانید که پروکسی‌های سازگار با Edge Microgateway را می‌توان مانند هر پروکسی دیگری به محصولات Edge اضافه کرد. با استفاده از محصولات و برنامه‌های توسعه‌دهنده، می‌توانید توکن‌های امنیتی مخصوص مشتری را برای کنترل دسترسی به APIهایی که از طریق Edge Microgateway فراخوانی می‌شوند، تولید کنید. باز هم، الگوهای مربوطه مشابه کار با هر پروکسی API، محصولات و برنامه‌های توسعه‌دهنده در Apigee Edge هستند. اگر می‌خواهید در مورد محصولات مطالعه کنید، با بخش «محصول API چیست؟» در مستندات Edge شروع کنید.

در ادامه نحوه ایجاد پروکسی‌های آگاه از Edge Microgateway را بررسی خواهیم کرد و پس از آن، Edge Microgateway را اجرا کرده و تنظیمات را آزمایش خواهیم کرد.

بخش ۲: ایجاد موجودیت‌ها در Apigee Edge

در این بخش، این موجودیت‌ها را در Edge ایجاد خواهید کرد:

  • یک پروکسی آگاه از microgateway - این یک پروکسی ویژه است که Edge Microgateway می‌تواند هنگام راه‌اندازی آن را کشف کند. پروکسی‌های آگاه از Microgateway یک قرارداد نامگذاری دارند که باید از آن پیروی کنید: نام باید با edgemicro_ شروع شود. به عنوان مثال edgemicro_hello یا edgemicro_userinfo . وقتی Edge Microgateway شروع می‌شود، لیستی از پروکسی‌های آگاه از microgateway را از همان سازمان و محیط Edge که هنگام شروع Edge Microgateway مشخص کرده‌اید، از Edge بازیابی می‌کند.

    برای هر پروکسیِ آگاه از microgateway، Edge Microgatway آدرس اینترنتی (URL) هدف پروکسی و مسیر پایه آن را بازیابی می‌کند. پروکسی‌های آگاه از Microgateway همچنین راهی مناسب برای مرتبط کردن داده‌های تحلیلی تولید شده توسط Edge Microgateway با یک پروکسی در پلتفرم Edge ارائه می‌دهند. همانطور که Microgateway فراخوانی‌های API را مدیریت می‌کند، داده‌های تحلیلی را به صورت غیرهمزمان به Edge ارسال می‌کند. داده‌های تحلیلی در رابط کاربری Edge Analytics تحت نام(های) پروکسیِ آگاه از microgateway نمایش داده می‌شوند، همانطور که برای هر پروکسی دیگری نیز نمایش داده می‌شود.
  • یک محصول، توسعه‌دهنده و برنامه توسعه‌دهنده - Edge Microgateway از محصولات، توسعه‌دهندگان و برنامه‌های توسعه‌دهنده برای فعال کردن توکن دسترسی OAuth2 یا امنیت کلید API استفاده می‌کند. وقتی Edge Microgateway شروع به کار می‌کند، تمام پیکربندی‌های محصول را از سازمان Apigee Edge شما دانلود می‌کند. از این اطلاعات برای تأیید فراخوانی‌های API انجام شده از طریق Edge Microgateway با کلیدهای API یا توکن‌های دسترسی OAuth2 استفاده می‌کند.

۱. یک پروکسی API آگاه از Edge Microgateway روی Edge ایجاد کنید.

  1. وارد سازمان خود در Apigee Edge شوید.
  2. در منوی ناوبری کناری، گزینه توسعه > پروکسی‌های API را انتخاب کنید.
  3. روی + Proxy کلیک کنید. ویزارد ساخت پروکسی فراخوانی می‌شود.
  4. در صفحه اول ویزارد، گزینه Reverse proxy (رایج‌ترین) را انتخاب کنید.
  5. روی بعدی کلیک کنید.
  6. در صفحه جزئیات ویزارد، به صورت زیر پیکربندی کنید. حتماً ویزارد را دقیقاً مطابق شکل پر کنید:
    • نام پروکسی: edgemicro_hello
    • مسیر پایه پروکسی: /hello
    • API موجود: http://mocktarget.apigee.net/
  7. روی بعدی کلیک کنید.
  8. در صفحه امنیت ویزارد، گزینه عبور (بدون رمز) را انتخاب کنید.
  9. روی بعدی کلیک کنید.
  10. در صفحه میزبان‌های مجازی ویزارد، مقادیر پیش‌فرض را بپذیرید.
  11. روی بعدی کلیک کنید.
  12. در صفحه ساخت ویزارد، تنظیمات پروکسی خود را بررسی کنید. مطمئن شوید که محیط آزمایشی انتخاب شده است.
  13. روی ساخت و استقرار کلیک کنید.

۲. یک محصول API ایجاد کنید

  1. در منوی ناوبری کناری، گزینه انتشار > محصولات API را انتخاب کنید.
  2. روی + محصول API کلیک کنید .
  3. جزئیات محصول نشان داده شده در جدول زیر را وارد کنید:
    میدان توضیحات
    نام محصول EdgeMicroTest
    نام نمایشی محصول آزمایشی Edge Microgatway
    محیط زیست آزمون
    دسترسی عمومی
    نوع تأیید کلید خودکار
  4. در بخش منابع API، پروکسی API که اخیراً ایجاد کرده‌اید و پروکسی edgemicro-auth را اضافه کنید:
    • edgemicro_hello
    • edgemicro-auth
  5. روی ذخیره کلیک کنید.

۳. یک توسعه‌دهنده ایجاد کنید

برای اهداف این آموزش، می‌توانید از هر توسعه‌دهنده‌ی موجود برای مرحله‌ی بعدی، یعنی ایجاد یک برنامه‌ی توسعه‌دهنده، استفاده کنید. اما اگر مایل هستید، همین حالا یک توسعه‌دهنده‌ی آزمایشی ایجاد کنید:

  1. در منوی ناوبری کناری، گزینه‌ی انتشار > توسعه‌دهندگان را انتخاب کنید.
  2. روی + توسعه‌دهنده کلیک کنید.
  3. برای ایجاد یک توسعه‌دهنده‌ی آزمایشی، کادر محاوره‌ای را پر کنید.

۴. یک اپلیکیشن توسعه‌دهنده ایجاد کنید

شما قصد دارید از اعتبارنامه‌های کلاینت این برنامه برای برقراری تماس‌های API امن از طریق Edge Microgateway استفاده کنید:

  1. در منوی ناوبری کناری، گزینه‌ی انتشار > برنامه‌ها را انتخاب کنید.
  2. روی + برنامه کلیک کنید. صفحه جزئیات برنامه توسعه‌دهنده ظاهر می‌شود.
  3. صفحه برنامه توسعه‌دهندگان را به صورت زیر پر کنید:
    1. نام: EdgeMicroTestApp
    2. نام نمایشی: EdgeMicroTestApp
    3. توسعه‌دهنده: اگر یک توسعه‌دهنده آزمایشی ایجاد کرده‌اید، آن را انتخاب کنید. یا می‌توانید از هر توسعه‌دهنده موجود برای اهداف این آموزش استفاده کنید.
    4. مدارک تحصیلی:
      1. انقضا را انتخاب کنید: هرگز .
      2. روی + Product کلیک کنید و EdgeMicroTestProduct (محصولی که تازه ایجاد کرده‌اید) را انتخاب کنید.
  4. روی ذخیره کلیک کنید.
  5. شما به صفحه لیست برنامه‌ها برگشته‌اید.
  6. برنامه‌ای که تازه ایجاد کرده‌اید، یعنی EdgeMicroTestApp ، را انتخاب کنید.
  7. روی «نمایش» در کنار کلید مصرف‌کننده و راز مصرف‌کننده کلیک کنید.

بخش ۳: بهره‌برداری از Edge Microgateway

اکنون که یک Edge Microgateway پیکربندی شده و حداقل یک پروکسی Edge Microgateway-aware در Edge دارید، زمان آن رسیده است که Edge Microgateway را راه‌اندازی کنید. یک سرور HTTP Edge Microgateway روی دستگاه محلی شما اجرا می‌شود و شما مستقیماً فراخوانی‌های API را به آن سرور انجام خواهید داد.

۱. شروع Edge Microgateway

برای شروع Edge Microgateway از دستور edgemicro start استفاده کنید.

  1. مطمئن شوید که کلیدهایی را که قبلاً هنگام اجرای دستور پیکربندی edgemicro برگردانده شده بودند، دارید. خروجی آن چیزی شبیه به این بود:
    You need key and secret while starting edgemicro instance
    
    key: da4778e7c240a5d4585fc559eaba5083328828bc9f3a7f583e8b73e
    secret: 3aad7439708b4aeb38ee08e82189921ad00e6fc1ba8a8ae9f929ee2
  2. (اختیاری) اطلاعات راهنما را برای دستور edgemicro start چاپ کنید.
    edgemicro start -h
  3. برای شروع Edge Microgateway، دستور زیر را اجرا کنید:
    edgemicro start -o [org] -e [env] -k [key] -s [secret]

    کجا:

    • org نام سازمان Edge شما است (شما باید مدیر org باشید).
    • env یک محیط در سازمان شما (مانند test یا prod) است.
    • key کلیدی است که قبلاً توسط دستور configure برگردانده شده است.
    • secret کلیدی است که قبلاً توسط دستور configure برگردانده شده است.

    مثال

    edgemicro start -o docs -e test -k 701e70e718ce6dc1880616b3c39177d64a88754d615c7a4e1f78b6181d000723 -s 05c14356e42d136b83dd135cf8a18531ff52d7299134677e30ef4e34ab0cc824

    خروجی

    دستور start اطلاعات پیکربندی زیادی را از Apigee Edge (که به پنجره ترمینال منتقل می‌شود) بازیابی می‌کند. در خروجی، لیستی از پروکسی‌ها و محصولات microgateway-aware که کشف شده‌اند را مشاهده خواهید کرد. در انتهای خروجی، باید چیزی شبیه به این را ببینید:

    ...
    
    current nodejs version is v12.5.0
    current edgemicro version is 3.1.0
    info: jwk_public_keys download from null returned 200 undefined
    info: jwt_public_key download from https://docs-test.apigee.net/edgemicro-auth/publicKey returned 200 OK
    info: products download from https://docs-test.apigee.net/edgemicro-auth/products returned 200 OK
    info: config download from https://edgemicroservices-us-east-1.apigee.net/edgemicro/bootstrap/organization/docs/environment/test returned 200 OK
    PROCESS PID : 17991
  4. وضعیت microgateway را بررسی کنید. در یک پنجره ترمینال دیگر، با دستور cd به همان دایرکتوری که Edge Micro را در آن اجرا کرده‌اید بروید و این دستور را وارد کنید:
    edgemicro status
    current nodejs version is v12.5.0
    current edgemicro version is 3.1.0
    edgemicro is running with 8 workers

چه اتفاقی افتاده؟

یک payload از اطلاعات پیکربندی Edge Microgateway از Apigee Edge دانلود شده و به صورت محلی ذخیره می‌شود. این اطلاعات شامل موارد زیر است:

  • کلید عمومی که قبلاً ایجاد و در یک نقشه کلید-مقدار رمزگذاری شده (KVM) ذخیره کرده‌ایم.
  • نمایشی از تمام پروکسی‌های Edge Microgateway-aware که در سازمان/محیط وجود دارند. همه اینها پروکسی‌هایی هستند که با پیشوند edgemicro_ نامگذاری شده‌اند.
  • نمایشی از تمام محصولات API موجود در سازمان/محیط.

با این اطلاعات، Edge Microgateway می‌داند که مجاز به پردازش کدام پروکسی‌ها و مسیرهای پروکسی است. این سرویس از اطلاعات محصول برای اجرای امنیت استفاده می‌کند (دقیقاً مشابه کاری که هر پروکسی API در Apigee Edge انجام می‌دهد، جایی که کلیدهای برنامه توسعه‌دهنده با محصولات مرتبط هستند). به زودی مراحل ایمن‌سازی Edge Microgateway را بررسی خواهیم کرد.

۲. تست میکروگیت‌وی لبه

با اجرای Edge Microgateway، می‌توانید پروکسی را فراخوانی کنید. پیکربندی پروکسی edgemicro_hello هنگام شروع Edge Microgateway از Edge دانلود شده است. به یاد داشته باشید، مسیر پایه پروکسی /hello است.

برای آزمایش Edge Microgateway، با مسیر پایه شروع می‌کنیم و یک مسیر منبع /echo اضافه می‌کنیم. توجه داشته باشید که هر چیزی بعد از مسیر پایه (از جمله هر پارامتر پرس و جو) به سادگی به هدف backend منتقل می‌شود:

curl -i http://localhost:8000/hello/echo
{"error":"missing_authorization","error_description":"Missing Authorization header"}

این خطا به این دلیل رخ می‌دهد که شما یک کلید API یا توکن دسترسی معتبر را به همراه درخواست ارسال نکرده‌اید. به طور پیش‌فرض، Edge Microgateway در هر فراخوانی API به یک کلید API یا یک توکن دسترسی نیاز دارد. در مرحله بعدی آموزش، این API را به درستی ایمن خواهیم کرد و به شما نشان خواهیم داد که چگونه یک توکن دسترسی معتبر را دریافت کرده و آن را به درخواست اضافه کنید.

۴. توقف میکروگیت‌وی اج

  1. در یک پنجره ترمینال جداگانه، cd به همان دایرکتوری که Edge Microgateway را در آن اجرا کرده‌اید، بروید.
  2. دستور توقف را وارد کنید:
    edgemicro stop

بخش ۴: میکروگیت‌وی لبه امن

شما می‌توانید با استفاده از یک کلید API یا یک توکن دسترسی، تماس‌های API انجام شده از طریق Edge Microgateway را ایمن کنید.

فراخوانی‌های API را با یک توکن دسترسی OAuth2 ایمن کنید

اگر می‌خواهید فراخوانی‌های API را با توکن دسترسی OAuth2 احراز هویت کنید، این مراحل را دنبال کنید:

۱. کلیدهای مورد نیاز را دریافت کنید

  1. در رابط کاربری Edge، به برنامه توسعه‌دهنده‌ای که قبلاً ایجاد کرده‌اید بروید. نام برنامه EdgeMicroTestApp بود.
  2. در صفحه برنامه توسعه‌دهندگان، کلید مصرف‌کننده و راز مصرف‌کننده را نمایش داده و آنها را کپی کنید. این مقادیر برای دریافت توکن دسترسی در مرحله بعدی مورد نیاز هستند.

۲. یک توکن دسترسی دریافت کنید

دو راه برای دریافت توکن دسترسی وجود دارد. ما هر دو روش را به شما نشان خواهیم داد.

استفاده از رابط خط فرمان (CLI) برای دریافت توکن دسترسی

روش اول راحت است و از الگویی که در طول آموزش استفاده کرده‌ایم پیروی می‌کند. روش دوم عموماً برای توسعه‌دهندگان برنامه‌های کلاینت که نیاز به درخواست توکن دارند، مفیدتر است. نقطه پایانی توکن واقعی در پروکسی edgemicro-auth پیاده‌سازی شده است که هنگام پیکربندی Edge Microgateway مستقر شده است.

  1. (اختیاری) مشاهده‌ی راهنمای دستور token get :
    edgemicro token get -h
  2. توکن را تولید کنید و مقادیر Consumer Key و Consumer Secret خود را از برنامه توسعه‌دهنده‌ای که در Apigee Edge ایجاد کرده‌اید، در پارامترهای -i و -s جایگزین کنید:
    edgemicro token get -o [org] -e [env] -i [consumer_key] -s [consumer_secret]

    کجا:

    • org نام سازمان Edge شما است (شما باید مدیر org باشید).
    • env یک محیط در سازمان شما (مانند test یا prod) است.
    • consumer_id همان شناسه مصرف‌کننده در برنامه توسعه‌دهنده‌ای است که قبلاً ایجاد کرده‌اید.
    • consumer_secret همان راز مصرف‌کننده در برنامه توسعه‌دهنده‌ای است که قبلاً ایجاد کرده‌اید.

    مثال

    edgemicro token get -o docs -e test -i G0IAeU864EtBo99NvUbn6Z4CBwVcS2 -s uzHTbwNWvoSmOy

    خروجی (نمونه)

    current nodejs version is v12.5.0
    { token: 'eyJ0eXAiOiJKV1QiLCJhbGciSUzI1NiJ9.eyJhcHBsaWNhdGl
    vbl9uYW1lIjoiNWNiMGY0tOWMzOC00YmJjLWIzNzEtZGMxZTQzOGYxZGMxI
    iwiY2xpZW50X2lkIjoiNVVdBWEdvSU9lbzYwYWV3OTRQN0c1TUFaRTNhSnA
    iLCJzY29wZXMiOltdLCJhcGlfcHJvjdF9saXN0IjpbIsVkZ2VNaWNyb1Rlc
    3RQcm9kdWN0IlmlhdCI6MTQ3ODIwODMzMiwiZXhwIjoxNDc4MjEwMTMxfQ.
    v3Q8Rs0W9FO_XpERwIAMMXhjGamRmmmWgrAy1wJv0-99oajx5ASI5qjNubM
    nCF14xxwlVXHcz1VfedA8Nx7Ih145zhWWuPKL9muzhXXnVBRFeBMeeLqJk4
    QQ7Bhst7xH_68nJSTE20Egu95DHOCUemfrepDFH0VggY4BmzvwLkBNfz_te
    E_YqwKZbpGOLMdKK1vMk0fk0x19SieIMS_aJYeOAklrzUhnFxWJFrsAWsax
    NLx_BbQcZzYfK1JSDUrhRNVBuPHMnGjNA_oHw2J4qa6Hsp62PfchG-DIW_t
    -0BFnYf3rYXmqyNORqFrOMdl4VxqQ' }

(اختیاری) استفاده از API برای دریافت توکن

اگر به فراخوانی پروکسی‌های Edge با استفاده از curl یا یک کلاینت HTTP دیگر عادت دارید، جالب خواهد بود بدانید که می‌توانید به جای استفاده از دستور edgemicro token ، مستقیماً نقطه پایانی token را فراخوانی کنید. در اینجا یک مثال curl آورده شده است. فقط نام‌های org و environment خود را در URL جایگزین کنید و مقادیر Consumer Key:Consumer Secret را که با دونقطه از هم جدا شده‌اند، در یک هدر Basic Authentication وارد کنید:

curl -i -X POST "http://[org]-[env].apigee.net/edgemicro-auth/token" -d '{ "client_id": "your consumer key", "client_secret": "your consumer secret", "grant_type": "client_credentials" }' -H "Content-Type: application/json"

کجا:

  • org نام سازمان Edge شما است (شما باید مدیر org باشید).
  • env یک محیط در سازمان شما (مانند test یا prod) است.
  • client_id شناسه مصرف‌کننده در برنامه توسعه‌دهنده‌ای است که قبلاً ایجاد کرده‌اید.
  • client_secret همان راز مصرف‌کننده در برنامه توسعه‌دهنده‌ای است که قبلاً ایجاد کرده‌اید.

خروجی (نمونه)

این دستور، چه از دستور edgemicro token CLI استفاده کرده باشید و چه با استفاده از curl نقطه پایانی را فراخوانی کرده باشید، یک توکن دسترسی امضا شده برمی‌گرداند که می‌تواند برای برقراری تماس‌های کلاینت استفاده شود. چیزی شبیه به این:

MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls 
b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD 
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3 
OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFsnhB0Yvg6JKWxKWBDP9o
Xl96dtgH7xPFRqIU0zI452jkMQ1fPz2mSaGwik241yfBku7olooXKRKTRKOUoXa
q3Hld/RPxGSsWtiyyYtKex7tuFdq0Knm1EhowdTRGIgjNvudeYMka/XPRXuykhd 
xIDxWj4rdX+4GPx9qT2eTQC5nOAC7XHVL7ys4KqsAiv28vw10u400KstFFS8Qho 
7FaE0bOKLolKKadKyA60ha1XIw/uSTD6ZQFWQ+XM3OaRbXePWXnSZioSxXcZT7L 
hMUKbsRXw/TCvRB51LgNAgMBAAEwDQYJKoZIhvcNAQELBQADgEBAOuR1OmE/W6j 
gRAarJB5EQuTEpI/9Zpg5c5RAGjzLhkazsycn7pal+IymUjCV7D0oIxTVuTM8ZZ 
57kR5hF/C1ZypDN9i+KGP2ovX8WOCCXYtIQECgZPB/L/7/k7BDuKN4vFBvWUe3X 
s2oyjnVWy+ASqsW8gHfj8ekhe22bP240Oqkbyg9SZP9ol1tvJX6+M0thYwcTwAd 
ft929Icey/MOTQC0jB2qm0gnIx/7KInFXfS5KoFRJoGrWDeckr3RdBo2LhnPaeZ 
1gPYIqphZ3HfisF5KlBXoR8oT/Ilym/nq5COlv+3L4tMIk18F7BQZB60SRazifz 
pFkIxepyr/0=
      

۳. پیکربندی Edge Microgateway را بررسی کنید

  1. فایل $HOME/.edgemicro/org-env-config.yaml باز کنید. اگر نمی‌توانید این فایل را پیدا کنید، به بخش «محل نصب Edge Microgateway» مراجعه کنید.
  2. مطمئن شوید که این ویژگی‌های افزونه‌ی oauth روی false تنظیم شده‌اند. آن‌ها به‌طور پیش‌فرض false هستند، اما بهتر است دوباره بررسی کنید:
    oauth:
       allowNoAuthorization: false
       allowInvalidAuthorization: false
  3. همچنین در فایل org-env-config.yaml ، مطمئن شوید که افزونه oauth به عنصر plugins:sequence اضافه شده است، مانند این::
    plugins:
       dir: ../plugins
       sequence:
       - oauth
  4. اگر تغییری در فایل ایجاد کردید، تغییرات را در نمونه در حال اجرای Edge Microgateway بارگذاری مجدد کنید . این دستور Edge Microgateway را با زمان خرابی صفر پیکربندی می‌کند:
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]

    کجا:

    • org نام سازمان Edge شما است (شما باید مدیر org باشید).
    • env یک محیط در سازمان شما (مانند test یا prod) است.
    • key کلیدی است که قبلاً توسط دستور configure برگردانده شده است.
    • secret کلیدی است که قبلاً توسط دستور configure برگردانده شده است.

    مثال

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d

۴. فراخوانی امن API

با در دست داشتن یک توکن دسترسی، اکنون می‌توانید فراخوانی API را به صورت ایمن انجام دهید. برای مثال:

  curl -i -H "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhcHBsaWNhdGlvbl
9uYW1lIjoiYmU2YmZjYjAtMWQ0Ni00Y2IxLWFiNGQtZTMxNzRlNTAyMDZkIiwiY2xpZW50X2lkIjoiOGxTTTVIRHdyM
VhIT1ZwbmhURExhYW9FVG5STVpwWk0iLCJzY29wZXMiOltdLCJhcGlfcHJvZHVjdF9saXN0IjpbIk1pY3JvZ2F0ZXdh
eVRlQcm9kdWN0Il0sImCI6MTQzNTM0NzY5MiwiZXhwIjoxNDM1MzQ5NDkxfQ.PL30Y6uK1W1f2ONPEsBDB_BT31c6
IsjWGfwpz-p6Vak8r767tAT4mQAjuBpQYv7_IU4DxSrnxXQ_q536QYCP4p4YKfBvyqbnW0Rb2CsPFziy_n8HIczsWO
s0p4czcK63SjONaUpxV9DbfGVJ_-WrSdqrqJB5syorD2YYJPSfrCcgKm-LpJc6HCylElFDW8dHuwApaWcGRSV3l5Wx
4A8Rr-WhTIxDTX7TxkrfI4THgXAo37p3au3_7DPB_Gla5dWTzV4j93xLbXPUbwTHzpaUCFzmPnVuYM44FW5KgvBrV0
64RgPmIFUxSqBWGQU7Z1w2qFmWuaDljrMDoLEreI2g" http://localhost:8000/hello/echo

این API، هدرها و سایر اطلاعات را از سرور شبیه‌سازی‌شده برمی‌گرداند.

ایمن‌سازی API با استفاده از کلید API

اگر می‌خواهید از کلید API برای مجوز استفاده کنید، این مراحل را دنبال کنید:

۱. دریافت کلید API

  1. در رابط کاربری Edge، به برنامه توسعه‌دهنده‌ای که قبلاً ایجاد کرده‌اید بروید. نام برنامه EdgeMicroTestApp بود.
  2. در صفحه برنامه توسعه‌دهندگان، کلید مصرف‌کننده را نمایش داده و آن را کپی کنید. این مقدار، کلید API است. شما از این کلید برای برقراری تماس‌های API احراز هویت شده استفاده خواهید کرد.

۲. پیکربندی را در Edge Microgateway بررسی کنید

  1. فایل $HOME/.edgemicro/org-env-config.yaml. اگر نمی‌توانید این فایل را پیدا کنید، به بخش «محل نصب Edge Microgateway» مراجعه کنید.
  2. مطمئن شوید که این ویژگی‌های افزونه‌ی oauth روی false تنظیم شده‌اند. آن‌ها به‌طور پیش‌فرض false هستند، اما در صورت تمایل می‌توانید دوباره بررسی کنید:
    oauth:
       allowNoAuthorization: false
       allowInvalidAuthorization: false
  3. همچنین در فایل org-env-config.yaml ، مطمئن شوید که افزونه oauth به عنصر plugins:sequence اضافه شده است، مانند این::
    plugins:
       dir: ../plugins
       sequence:
       - oauth
        
  4. اگر تغییری در فایل ایجاد کردید، تغییرات را در نمونه در حال اجرای Edge Microgateway بارگذاری مجدد کنید . این دستور Edge Microgateway را با زمان خرابی صفر پیکربندی می‌کند:
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]

    کجا:

    • org نام سازمان Edge شما است (شما باید مدیر org باشید).
    • env یک محیط در سازمان شما (مانند test یا prod) است.
    • key کلیدی است که قبلاً توسط دستور configure برگردانده شده است.
    • secret کلیدی است که قبلاً توسط دستور configure برگردانده شده است.

    مثال

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c30177d64a88754d615c74e1f78b6181d

۳. با استفاده از کلید API، API را به صورت امن فراخوانی کنید

API را با هدر x-api-key به صورت زیر فراخوانی کنید. مقدار Consumer Key که از برنامه توسعه‌دهنده کپی کرده‌اید، کلید API است. به طور پیش‌فرض، Edge Microgateway انتظار دارد که شما کلید را در هدری به نام x-api-key مانند این ارسال کنید:

curl -i http://localhost:8000/hello/echo -H "x-api-key: [apikey]"

کجا:

  • apikey مقدار کلید مصرف‌کننده است که از EdgeMicroTestApp گرفته شده است.

برای مثال:


curl -i http://localhost:8000/hello/echo -H 'x-api-key: XsU1R4zGXz2ERxd0ilYQ5szwuljr5bB'

اکنون یک Edge Microgateway کاملاً کارآمد و امن دارید. در بخش بعدی آموزش، نگاهی به افزونه‌هایی خواهیم انداخت که به Edge Microgateway قابلیت اضافه می‌کنند.

بخش ۵: افزودن افزونه‌ی Spike Arrest

در این بخش، یک ویژگی محدودکننده سرعت به نام spike arrest به نمونه Edge Microgateway شما اضافه خواهیم کرد.

افزونه‌ها چه هستند؟

افزونه، یک ماژول Node.js است که قابلیتی را به Edge Microgateway اضافه می‌کند. ماژول‌های افزونه از یک الگوی ثابت پیروی می‌کنند و در مکانی ذخیره می‌شوند که برای Edge Microgateway شناخته شده است و به microgateway این امکان را می‌دهد که آنها را به طور خودکار کشف و بارگذاری کند. می‌توانید اطلاعات بیشتر در مورد افزونه‌ها را در بخش « استفاده از افزونه‌ها» مطالعه کنید.

افزودن افزونه‌ی جلوگیری از اسپایک

یک افزونه‌ی جلوگیری از افزایش ناگهانی ترافیک، از افزایش ناگهانی ترافیک جلوگیری می‌کند. این افزونه تعداد درخواست‌های پردازش‌شده توسط یک نمونه‌ی Edge Microgateway را کاهش می‌دهد.

در Edge Microgateway، قابلیت Spike arrest به عنوان یک ماژول افزونه پیاده‌سازی شده است. برای فعال‌سازی آن، باید آن را به فایل پیکربندی Edge Microgateway اضافه کنید.

  1. فایل $HOME/.edgemicro/org-env-config.yaml. اگر نمی‌توانید این فایل را پیدا کنید، Edge Microgateway کجا نصب شده است ؟
  2. عنصر زیر را اضافه کنید. می‌توانید آن را در هر جایی از فایل اضافه کنید.
       spikearrest:
          timeUnit: minute   
          allow: 10   
          buffersize: 0   
  3. همانطور که در زیر نشان داده شده است، spikearrest به عنصر edgemicro:sequence اضافه کنید. ویژگی پیکربندی sequence به Edge Microgateway ترتیب اجرای ماژول‌های افزونه را می‌گوید.
    edgemicro:
      home: ../gateway
      port: 8000
      max_connections: -1
      max_connections_hard: -1
      logging:
        level: info
        dir: /var/tmp
        stats_log_interval: 60
      plugins:
        dir: ../plugins
      sequence:
        - oauth
        - spikearrest
  4. فایل پیکربندی را ذخیره کنید.
  5. با دستور reload، Edge Microgateway را مجدداً بارگذاری کنید. شما باید این دستور را از دایرکتوری که Edge Microgateway را در آن اجرا کرده‌اید، اجرا کنید.
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]

    کجا:

    • org نام سازمان Edge شما است (شما باید مدیر org باشید).
    • env یک محیط در سازمان شما (مانند test یا prod) است.
    • key کلیدی است که قبلاً توسط دستور configure برگردانده شده است.
    • secret کلیدی است که قبلاً توسط دستور configure برگردانده شده است.

    مثال

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
  6. چندین بار پشت سر هم و سریع API را فراخوانی کنید. پس از دومین فراخوانی، Edge Microgateway این خطا را برمی‌گرداند:
    {"message":"SpikeArrest engaged","status":503}

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

اعتبار اضافی: اضافه کردن افزونه سهمیه

با پیروی از همان الگویی که برای پیکربندی spike arrest استفاده شد، می‌توانید افزونه‌های دیگری مانند افزونه quota را اضافه کنید. مانند spike arrest، افزونه quota با هر نصب Edge Microgateway همراه است. quota تعداد پیام‌های درخواستی را که یک برنامه مجاز است در یک بازه زمانی مشخص (دقیقه یا ساعت) به یک API ارسال کند، مشخص می‌کند.

بخش ششم: مشاهده تحلیل‌ها در Apigee Edge

اکنون یک نمونه Edge Microgateway کاملاً کاربردی داریم، بیایید ببینیم چه کار می‌کند! به طور پیش‌فرض، ماژول افزونه تحلیلی به Edge Micro اضافه شده است. این ماژول بی‌سروصدا داده‌های تحلیلی را از Edge Micro به Apigee edge منتقل می‌کند، جایی که توسط سیستم Edge Analytics مصرف می‌شود. بیایید ببینیم:

  1. وارد سازمان خود در Apigee Edge شوید.
  2. تجزیه و تحلیل > عملکرد پروکسی را انتخاب کنید.
  3. در داشبورد عملکرد پروکسی، پروکسی edgemicro_hello را انتخاب کنید.
  4. این نمودار اطلاعاتی در مورد الگوهای ترافیک پروکسی، مانند کل ترافیک، میانگین زمان پاسخ، میانگین زمان پاسخ هدف و موارد دیگر را به شما نشان می‌دهد.

می‌توانید اطلاعات بیشتر در مورد داشبوردهای Edge Analytics را در صفحه اصلی Analytics Dashboards در مستندات Edge مطالعه کنید. برای کسب اطلاعات بیشتر در مورد افزونه‌ها، به بخش « استفاده از افزونه‌ها» مراجعه کنید.