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

يمكنك إنشاء مؤسسة وبيئة ومضيف افتراضي في سطر الأوامر في أمر واحد، أو يمكنك إنشاء كل منها بشكل منفصل. بالإضافة إلى ذلك، يمكنك استخدام Edge 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 ما يلي:

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

بشكل تلقائي، يبلغ الحد الأقصى لطول اسم المؤسسة واسم البيئة 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:

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

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

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

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 باستخدام الأمر:

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 UUID، وتحتوي السمة qpid-server على معرّفات Qpid UUID. إذا كنت بحاجة إلى الحصول على معرّفات 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:admin_password 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) إلى واجهة برمجة تطبيقات للسحابة الإلكترونية الخاصة.