استخدام الأداة apigee-adminapi.sh

تستدعي apigee-adminapi.sh واجهة برمجة التطبيقات Edge Management API لتنفيذ العديد من مهام الصيانة.

لمحة عن apigee-adminapi.sh

استدعاء apigee-adminapi.sh

يمكنك استدعاء apigee-adminapi.sh من عقدة خادم الإدارة. عند استدعاء الأداة المساعدة، يجب تحديد ما يلي كمتغيرات بيئة أو خيارات سطر أوامر:

  • ADMIN_EMAIL (يتوافق مع خيار سطر الأوامر admin)
  • ADMIN_PASSWORD ‏(pwd)
  • EDGE_SERVER ‏(host)

يستدعي المثال التالي apigee-adminapi.sh ويمرّر القيم المطلوبة كخيارات سطر الأوامر:

/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh buildinfo list --admin user@example.com --pwd abcd1234 --host localhost

يحدّد المثال التالي الخيارات المطلوبة كمتغيّرات بيئة مؤقتة، ثم يستدعي الأداة المساعدة apigee-adminapi.sh:

export ADMIN_EMAIL=user@example.com
export ADMIN_PASSWORD=abcd1234
export EDGE_SERVER=192.168.56.101
/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh servers list

إذا لم تمرّر كلمة المرور كخيار أو تحدّدها كمتغيّر بيئة، سيطلب منك apigee-adminapi.sh إدخالها.

ضبط مَعلمات apigee-adminapi.sh

يجب إدخال جميع معلَمات الأمر باستخدام مفاتيح سطر الأوامر أو باستخدام متغيرات البيئة. أضِف شرطة واحدة (-) أو شرطتَين (--) قبل مفاتيح تبديل سطر الأوامر حسب الحاجة.

على سبيل المثال، يمكنك تحديد اسم المؤسسة من خلال:

  • باستخدام مفتاح سطر الأوامر -o:
    /opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh orgs -o testOrg
  • ضبط متغيّر بيئة باسم ORG:
    export ORG=testOrg
    /opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh orgs

إذا حذفت أي مَعلمات مطلوبة للأمر، ستعرض الأداة رسالة خطأ تصف المَعلمات المفقودة. على سبيل المثال، إذا حذفت الخيار --host (الذي يتوافق مع متغيّر البيئة EDGE_SERVER)، يستجيب apigee-adminapi.sh بالخطأ التالي:

Error with required variable or parameter
ADMIN_PASSWORD....OK
ADMIN_EMAIL....OK
EDGE_SERVER....null

إذا ظهر لك الخطأ HTTP STATUS CODE: 401، يعني ذلك أنّك أدخلت كلمة مرور غير صحيحة.

الحصول على مساعدة بشأن apigee-adminapi.sh

في أي وقت، استخدِم مفتاح Tab لعرض طلب يسرد خيارات الأوامر المتاحة.

للاطّلاع على جميع الأوامر الممكنة، يمكنك استدعاء الأداة المساعدة بدون خيارات:

/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh

إذا ضغطت على مفتاح التبويب بعد كتابة apigee-adminapi.sh، ستظهر لك قائمة بالخيارات المحتملة:

analytics  classification  logsessions  regions  securityprofile  userroles
buildinfo  GET             orgs         runtime  servers          users

يعرض مفتاح Tab الخيارات استنادًا إلى سياق الأمر. إذا ضغطت على مفتاح التبويب بعد كتابة:

/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh orgs

ستظهر لك الخيارات المتاحة لإكمال الأمر orgs:

add  apis  apps  delete  envs  list  pods  userroles

استخدِم الخيار -h لعرض المساعدة لأي أمر. على سبيل المثال، إذا كنت تستخدم الخيار -h كما هو موضّح أدناه:

/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh orgs -h

تعرض الأداة المساعدة معلومات مساعدة كاملة لجميع الخيارات الممكنة للأمر orgs. يعرض العنصر الأول في الناتج المساعدة الخاصة بالأمر orgs add:

+++++++++++++++++++++++++++++++++++++++++++
orgs add
  Required:
    -o ORG Organization name
  Optional:
    -H HEADER add http header in request
    --admin ADMIN_EMAIL admin email address
    --pwd ADMIN_PASSWORD admin password
    --host EDGE_SERVER edge server to make request to
    --port EDGE_PORT port to use for the http request
    --ssl set EDGE_PROTO to https, defaults to http
    --debug ( set in debug mode, turns on verbose in curl )
    -h      Displays Help

تمرير ملف إلى apigee-adminapi.sh

الأداة المساعدة apigee-adminapi.sh هي برنامج تضمين حول curl. ونتيجةً لذلك، تتوافق بعض الأوامر مع طلبات بيانات من واجهة برمجة التطبيقات PUT وPOST التي تتلقّى نص طلب. على سبيل المثال، يتوافق إنشاء مضيف افتراضي مع طلب بيانات من واجهة برمجة التطبيقات POST يتطلب معلومات عن المضيف الافتراضي في نص الطلب.

عند استخدام الأداة المساعدة apigee-adminapi.sh لإنشاء مضيف افتراضي، أو أي أمر يتطلب نص طلب، يمكنك تمرير جميع المعلومات اللازمة في سطر الأوامر كما هو موضح أدناه:

/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh orgs envs virtual_hosts add -e prod -o testOrg --host localhost --admin foo@bar.com -v myVHostUtil -p 9005 -a 192.168.56.101:9005

أو يمكنك تمرير ملف يحتوي على المعلومات نفسها التي يتضمّنها نص طلب POST. على سبيل المثال، يأخذ الأمر التالي ملفًا يحدّد المضيف الافتراضي:

/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh orgs envs virtual_hosts add -e prod -o testOrg --host localhost --admin foo@bar.com -f vhostcreate

حيث يحتوي الملف vhostcreate على نص POST للطلب. في هذا المثال، هو نص طلب بتنسيق XML:

<VirtualHost name="myVHostUtil">
  <HostAliases>
    <HostAlias>192.168.56.101:9005</HostAlias>
  </HostAliases>
  <Interfaces/>
  <Port>9005</Port>
</VirtualHost>

عرض معلومات تصحيح الأخطاء وواجهة برمجة التطبيقات

استخدِم الخيار --debug مع الأداة المساعدة apigee-adminapi.sh لعرض معلومات تفصيلية عن الأمر. وتتضمّن هذه المعلومات الأمر curl الذي تم إنشاؤه بواسطة الأداة المساعدة apigee-adminapi.sh لتنفيذ العملية.

على سبيل المثال، يستخدم الأمر التالي الخيار --debug. تعرض النتائج مخرجات الأمر curl الأساسي في الوضع المطوّل:

/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh orgs add -o testOrg2 --admin foo@bar.com --host localhost --debug
curl -H Content-Type: application/xml -v -X POST -s -k -w \n==> %{http_code}
  -u ***oo@bar.com:*****     http://localhost:8080/v1/o -d <Organization name="testOrg2"
  type="paid"/>
  * About to connect() to localhost port 8080 (#0)
  *   Trying ::1... connected
  * Connected to localhost (::1) port 8080 (#0)
  * Server auth using Basic with user 'foo@bar.com'
  > POST /v1/o HTTP/1.1
  > Authorization: Basic c2dp234234NvbkBhcGlnZ2342342342342341Q5
  > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.19.1
  Basic ECC zlib/1.2.3 libidn/1.18 libssh2/1.4.2
  > Host: localhost:8080
  > Accept: */*
  > Content-Type: application/xml
  > Content-Length: 43
  >
  } [data not shown]
  < HTTP/1.1 201 Created
  < Content-Type: application/json
  < Date: Tue, 03 May 2016 02:08:32 GMT
  < Content-Length: 291
  <
  { [data not shown]
  * Connection #0 to host localhost left intact
  * Closing connection #0