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

يستدعي apigee-adminapi.sh واجهة برمجة تطبيقات إدارة Edge لإجراء العديد من أعمال الصيانة المهام.

لمحة عن apigee-adminapi.sh

تكمن ميزة أداة apigee-adminapi.sh في أنّها:

  • تستخدم واجهة سطر أوامر بسيطة
  • تنفيذ إكمال الأوامر استنادًا إلى علامة التبويب
  • تقديم المساعدة ومعلومات الاستخدام
  • إمكانية عرض طلب البيانات المقابل من واجهة برمجة التطبيقات إذا قررت تجربة واجهة برمجة التطبيقات

لا تعد الأداة apigee-adminapi.sh بديلاً أداة apigee-provision. تستخدم الأداة apigee-provision الأداة المساعدة apigee-adminapi.sh لتنفيذ مهامها.

الاختلافات الرئيسية بين الاثنين هي:

  • تؤدي الدالة apigee-adminapi.sh وظائف بسيطة تحل محل طلبات البيانات الفردية من واجهة برمجة تطبيقات Edge. على سبيل المثال، لإنشاء مؤسسة وبيئة يتطلب المضيف ثلاثة أوامر apigee-adminapi.sh منفصلة تتوافق مع ثلاثة طلبات بيانات من واجهة برمجة التطبيقات
  • تحقق apigee-provision نتيجة كاملة رفيعة المستوى عملية في أمر واحد. على سبيل المثال، يمكنك إنشاء مؤسسة وبيئة مضيف افتراضي باستخدام أمر apigee-provision واحد من خلال تمرير ملف إعداد مع جميع المعلومات اللازمة.

تستخدم وثائق Edge كلتا الأداتين عندما يكون ذلك مناسبًا.

يتم تثبيت أداة apigee-adminapi.sh تلقائيًا عند تثبيت apigee-provision أو الأداة المساعدة apigee-validate.

يتم تثبيت الأداة في الموقع التالي:

/opt/apigee/apigee-adminapi/bin/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

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

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

يعرض مفتاح التبويب (Tab) الخيارات بناءً على سياق الأمر. إذا أدخلت مفتاح التبويب (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