إنشاء مؤسسة وبيئة ومضيف افتراضي

Edge for Private Cloud ‏v4.18.05

يمكنك إنشاء مؤسسة وبيئة ومضيف افتراضي على سطر الأوامر في سطر واحد من الأوامر، أو يمكنك إنشاء كل عنصر على حدة. بالإضافة إلى ذلك، يمكنك استخدام Management API لتنفيذ العديد من هذه الإجراءات.

فيديو: شاهِد فيديو قصيرًا للحصول على نظرة عامة حول إعداد وضبط مؤسسة Apigee.

إنشاء مؤسسة وبيئة ومضيف افتراضي في الوقت نفسه

قبل إنشاء وكيل واجهة برمجة التطبيقات على Apigee Edge، يجب إنشاء مؤسسة واحدة على الأقل، وبيئة واحدة أو أكثر وخوادم افتراضية واحدة أو أكثر في كل مؤسسة.

عادةً ما يتم إنشاء المؤسسات والبيئات معًا. لتبسيط العملية، استخدِم الأداة apigee-provision. يمكنك تشغيله من سطر الأوامر على "خادم إدارة Edge":

/opt/apigee/apigee-service/bin/apigee-service apigee-provision setup-org -f configFile

حيث يكون configFile هو مسار ملف الإعداد الذي يبدو مشابهًا للملف التالي:

# Set Edge sys admin credentials.
ADMIN_EMAIL=your@email.com
APIGEE_ADMINPW=admin_password  # If omitted, you are prompted for it.
NEW_USER="y"
USER_NAME=orgAdmin@myCo.com
FIRST_NAME=foo
LAST_NAME=bar
USER_PWD="userPword"
ORG_NAME=example  # lowercase only, no spaces, underscores, or periods.
ENV_NAME=prod  # lowercase only
VHOST_PORT=9001
VHOST_NAME=default
VHOST_ALIAS="$IP1:9001"
# Optionally configure TLS/SSL for virtual host.
# VHOST_SSL=y     # Set to "y" to enable TLS/SSL on the virtual host.
# KEYSTORE_JAR=   # JAR file containing the cert and private key.
# KEYSTORE_NAME=  # Name of the keystore.
# KEYSTORE_ALIAS= # The key alias.
# KEY_PASSWORD=   # The key password, if it has one.
# Optionally set the base URL displayed by the Edge UI for an
# API proxy deployed to the virtual host.
# VHOST_BASEURL="http://myCo.com"
# AXGROUP=axgroup-001 # Default value is axgroup-001

عند إعداد مؤسسة، ينفِّذ نص setup-org البرمجي ما يلي:

  • لإنشاء المؤسسة
  • ربط المؤسسة بمجموعة "البوابة" ولا يمكنك تغيير ذلك.
  • تُضيف المستخدم المحدّد كمشرف المؤسسة. إذا لم يكن المستخدم متوفّرًا، يمكنك إنشاء حساب له.
  • تُنشئ بيئة واحدة أو أكثر.
  • تُنشئ مضيفًا افتراضيًا واحدًا أو أكثر لكل بيئة.
  • ربط البيئة بجميع معالجات الرسائل
  • تفعيل الإحصاءات

يبلغ الحد الأقصى لطول اسم المؤسسة واسم البيئة 20 حرفًا بشكل تلقائي عند استخدام الأداة apigee-provision. لا ينطبق هذا الحدّ في حال استخدام Edge API مباشرةً لإنشاء المؤسسة أو البيئة.

إنشاء مؤسسة

استخدِم الأمر create-org لإنشاء مؤسسة، كما هو موضّح في المثال التالي:

/opt/apigee/apigee-service/bin/apigee-service apigee-provision create-org -f configFile

ينشئ هذا النص البرمجي المؤسسة، ولكنه لا يضيف أو يضبط البيئات والخوادم الافتراضية المطلوبة من المؤسسة لمعالجة طلبات البيانات من واجهة برمجة التطبيقات.

يحتوي ملف الإعدادات على اسم المؤسسة وعنوان البريد الإلكتروني لمشرفها. تقتصر الأحرف التي يمكنك استخدامها في سمة name على a-z0-9\-$%. لا تستخدِم مسافات أو نقاط أو أحرفًا لاتينية كبيرة في الاسم:

APIGEE_ADMINPW=admin_password  # If omitted, you are prompted for it.
ORG_NAME=example  # lowercase only, no spaces, underscores, or periods.
ORG_ADMIN=orgAdmin@myCo.com

النص البرمجي create-org:

  • لإنشاء المؤسسة
  • ربط المؤسسة بمجموعة "البوابة"
  • تُضيف المستخدم المحدّد كمشرف المؤسسة. يجب أن يكون المستخدم متوفّرًا من قبل، وإلا سيُصدر النص البرمجي خطأ.

إنشاء مؤسسة باستخدام طلبات البيانات من واجهة برمجة التطبيقات

يمكنك استخدام طلبات البيانات التالية من واجهة برمجة التطبيقات لإنشاء مؤسسة. تنشئ المكالمة الأولى المؤسسة:

curl -H "Content-Type:application/xml" -u sysAdminEmail:adminPasswd \
  -X POST http://management_server_IP:8080/v1/organizations \
  -d '<Organization name="org_name" type="paid"/>'

تربط المكالمة التالية المؤسسة بمجموعة:

curl -H "Content-Type:application/x-www-form-urlencoded" \
  -u sysAdminEmail:adminPasswd -X POST \
  http://management_server_IP:8080/v1/organizations/org_name/pods \
  -d "region=default&pod=gateway"

تضيف المكالمة النهائية مستخدمًا حاليًا كمشرف المؤسسة:

curl -H "Content-Type:application/xml" -u sysAdminEmail:adminPasswd \
  -X POST http://<ms-ip>:8080/v1/organizations/org_name/users/user_email/userroles/ \
  -d '<Roles><Role name="orgadmin"/></Roles>'

إذا لم يكن المستخدم متوفّرًا، يمكنك استخدام الطلب التالي لإنشاء المستخدم كما هو موضّح في إضافة مستخدم.

إنشاء بيئة

استخدِم النص البرمجي add-env لإنشاء بيئة في مؤسسة حالية:

/opt/apigee/apigee-service/bin/apigee-service apigee-provision add-env -f configFile

يحتوي ملف الإعداد هذا على المعلومات اللازمة لإنشاء البيئة والملف الشخصي للمضيف الافتراضي:

APIGEE_ADMINPW=admin_password  # If omitted, you are prompted for it.
ORG_NAME=example  # lowercase only, no spaces, underscores, or periods.
ENV_NAME=prod  # lowercase only
VHOST_PORT=9001
VHOST_NAME=default
VHOST_ALIAS="$IP1:9001"
# Optionally configure TLS/SSL for virtual host.
# VHOST_SSL=y     # Set to "y" to enable TLS/SSL on the virtual host.
# KEYSTORE_JAR=   # JAR file containing the cert and private key.
# KEYSTORE_NAME=  # Name of the keystore. 
# KEYSTORE_ALIAS= # The key alias.
# KEY_PASSWORD=   # The key password, if it has one. 
# Optionally set the base URL displayed by the Edge UI for an
# API proxy deployed to the virtual host.
# VHOST_BASEURL="http://myCo.com"
# AXGROUP=axgroup-001 # Default value is axgroup-001

الأمر add-env:

  • لإنشاء البيئة
  • تُنشئ مضيفًا افتراضيًا واحدًا للبيئة.
  • ربط البيئة بجميع معالجات الرسائل في المجموعة المرتبطة بالمؤسسة التي تحتوي على البيئة
  • تفعيل الإحصاءات

إنشاء بيئة باستخدام طلبات بيانات واجهة برمجة التطبيقات

بدلاً من ذلك، يمكنك استخدام طلبات بيانات واجهة برمجة التطبيقات التالية لإنشاء بيئة. تنشئ المكالمة الأولى البيئة:

curl -H "Content-Type:application/xml" -u sysAdminEmail:adminPasswd \
  -X POST http://management_server_IP:8080/v1/organizations/org_name/environments \
  -d  '<Environment name="env_name"/>'

تربط المكالمة التالية البيئة بمعالج الرسائل. يمكنك إجراء هذا الطلب لكل معالج رسائل تريد ربطه بالبيئة:

curl -H "Content-Type:application/x-www-form-urlencoded" \
  -u sysAdminEmail:adminPasswd -X POST \
  http://management_server_IP:8080/v1/organizations/org_name/environments/env_name/servers \
  -d "action=add&uuid=uuid"

حيث يكون uuid هو معرّف UUID لمعالج الرسائل. يمكنك الحصول على معرّف UUID باستخدام الأمر:

curl http://Message_Processor_IP:8082/v1/servers/self

حيث يمثّل Message_Processor_IP عنوان IP لمعالج الرسائل.

تفعِّل طلب البيانات التالي من واجهة برمجة التطبيقات "إحصاءات Google" في بيئة معيّنة. يتحقق من توفّر خوادم Qpid وPostgres في وحدات POD في جميع مراكز البيانات. بعد ذلك، تبدأ عملية إعداد "إحصاءات Google" للمؤسسة والبيئة المحدّدتين.

يحتوي ملف الإعداد هذا على ما يلي:

ORG_NAME=orgName  # lowercase only, no spaces, underscores, or periods.
ENV_NAME=envName  # lowercase only

حيث يحتوي ملف sample.json على ما يلي:

{
  "properties" : {
    "samplingAlgo" : "reservoir_sampler",
    "samplingTables" : "10=ten;1=one;",
    "aggregationinterval" : "300000",
    "samplingInterval" : "300000",
    "useSampling" : "100",
    "samplingThreshold" : "100000"
  },
  "servers" : {
    "postgres-server" : [ "1acff3a5-8a6a-4097-8d26-d0886853239c", "f93367f7-edc8-4d55-92c1-2fba61ccc4ab" ],  
    "qpid-server" : [ "d3c5acf0-f88a-478e-948d-6f3094f12e3b", "74f67bf2-86b2-44b7-a3d9-41ff117475dd"] 
  }
}

يحتوي الحقل postgres-servers على قائمة مفصولة بفواصل بالمعرّفات الفريدة العامة لـ Postgres، ويحتوي الحقل qpid-server على المعرّفات الفريدة العامة لـ Qpid. إذا كنت بحاجة إلى الحصول على معرّفات UUID هذه، استخدِم الأوامر التالية.

بالنسبة إلى Qpid، شغِّل الأمر التالي:

curl -u sysAdminEmail:password http://management_server_IP/v1/servers?pod=central

ناتج هذا الأمر هو كائن JSON. بالنسبة إلى كل خادم Qpid، ستظهر لك النتائج في ملف مخرجات بالتنسيق التالي:

"type" : [ "qpid-server" ],
"uUID" : "d3c5acf0-f88a-478e-948d-6f3094f12e3b"

بالنسبة إلى Postgres، شغِّل الأمر التالي:

curl -u sysAdminEmail:passwor http://management_server_IP/v1/servers?pod=analytics

لكل خادم Postgres، ستظهر لك النتائج على النحو التالي:

"type" : [ "postgres-server" ],
"uUID" : "d3c5acf0-f88a-478e-948d-6f3094f12e3b"

إنشاء مضيف افتراضي

يمكنك إنشاء مضيف افتراضي في بيئة حالية في مؤسسة. غالبًا ما تتيح بيئة استخدام مضيفين افتراضيين متعدّدين. على سبيل المثال، قد يتوافق مضيف افتراضي مع بروتوكول HTTP ، في حين يتوافق مضيف افتراضي آخر في البيئة نفسها مع بروتوكول HTTPS المشفَّر.

استخدِم طلب البيانات التالي من واجهة برمجة التطبيقات لإنشاء مضيفين افتراضيين إضافيين، أو لإنشاء مضيف افتراضي لبيئة لا تتضمّن مضيفًا افتراضيًا:

curl -H "Content-Type:application/xml" -u sysAdminEmail:adminPasswd \
  -X POST http://management_server_IP:8080/v1/organizations/org_name/environments/env_name/virtualhosts \
  -d '<VirtualHost name="default"> \
    <HostAliases> \
      <HostAlias>myorg-test.apigee.net</HostAlias> \
    </HostAliases> \
    <Interfaces/> \
    <Port>443</Port> \
  </VirtualHost>'

للحصول على وصف كامل لإنشاء مضيف افتراضي، بما في ذلك إنشاء مضيف افتراضي آمن يستخدم بروتوكول TLS/SSL عبر HTTPS، اطّلِع على مقالة ضبط إمكانية الوصول إلى واجهة برمجة التطبيقات باستخدام بروتوكول TLS في "سحابة خاصة".