الإصدار 4.18.05 من Edge الخاص بخدمة Private Cloud
استخدِم الأداة apigee-adminapi.sh
لتنفيذ مهام إعداد Edge نفسها التي تنفّذها من خلال إجراء اتصالات بواجهة برمجة تطبيقات إدارة Edge. وتتميز الأداة 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-adminapi.sh
تلقائيًا عند تثبيت apigee-provision
أو الأداة apigee-validate
.
يتم تثبيت الأداة في المكان التالي:
/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh
/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh بناء جملة
تستخدم الأداة 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
ضبط المعلَمات باستخدام مفاتيح تبديل سطر الأوامر ومتغيرات البيئة
يجب إدخال جميع المعلَمات في أمر باستخدام مفاتيح تبديل سطر الأوامر أو باستخدام متغيرات البيئة. ضع بادئة لمفاتيح تبديل سطر الأوامر باستخدام شرطة واحدة (-) أو شرطة مزدوجة (--) حسب الحاجة.
على سبيل المثال، من التعليمات المعروضة أعلاه للأمر "orgs add"، يمكنك تحديد اسم المؤسسة عن طريق إحدى الطريقتَين التاليتَين:
- باستخدام مفتاح تبديل سطر الأوامر
-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
الذي يحدّد خادم إدارة Edge عند إنشاء مؤسسة، ستظهر لك رسالة الخطأ التالية:
Error with required variable or parameter ADMIN_PASSWORD....OK ADMIN_EMAIL....OK EDGE_SERVER....null
هناك معلمتان شائعتان يمكنك ضبطهما في أغلب الأحيان كمتغيّرات للبيئة، وهما عنوان البريد الإلكتروني لمشرف النظام وعنوان IP لخادم الإدارة:
export ADMIN_EMAIL=foo@bar.com
export EDGE_SERVER=192.168.56.101
تمرير ملف إلى الأداة المساعدة apigee-adminapi.sh
تتوافق بعض أوامر أداة apigee-adminapi.sh
مع طلبات البيانات من واجهة برمجة التطبيقات PUT وPOST التي تتلقى نص الطلب. على سبيل المثال، يتجاوب إنشاء مضيف افتراضي مع طلب POST API الذي يتطلب معلومات عن المضيف الافتراضي في نص الطلب.
عند استخدام الأداة المساعدة 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
:
/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh orgs add -o testOrg2 --admin foo@bar.com --host localhost --debug
ويتم عرض النتائج التالية، بما في ذلك الأمر curl الذي تم إنشاؤه:
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