الإصدار 4.18.01 من Edge for 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 أو التحقق من صحة واجهة برمجة التطبيقات.
يتم تثبيت الأداة في الموقع التالي:
/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh
بنية apigee-adminapi.sh
تستخدم الأداة apigee-adminapi.sh بنية سطر أوامر بسيطة. استخدِم مفتاح التبويب (Tab) في أي وقت لعرض طلب يسرد خيارات الأوامر المتاحة.
للاطّلاع على جميع الأوامر الممكنة، يمكنك استدعاء الأداة بدون خيارات:
> apigee-adminapi.sh
إذا ضغطت على مفتاح التبويب (Tab) بعد كتابة apigee-adminapi.sh، ستظهر لك قائمة الخيارات:
analytics classification logsessions regions securityprofile userroles buildinfo GET orgs runtime servers users
يعرض مفتاح التبويب (Tab) الخيارات بناءً على سياق الأمر. إذا أدخلت مفتاح التبويب (Tab) بعد الكتابة:
> apigee-adminapi.sh orgs
ستظهر لك الخيارات الممكنة لإكمال الأمر orgs:
add apis apps delete envs list pods userroles
استخدِم الخيار -h لعرض للمساعدة في أي أمر. على سبيل المثال، إذا كنت تستخدم الخيار -h كما هو موضّح أدناه:
> apigee-adminapi.sh orgs -h
تعرِض الأداة معلومات مساعدة كاملة لجميع الخيارات الممكنة للأمر orgs. العنصر الأول في الإخراج عرض المساعدة بشأن "إضافة المؤسسات" :
+++++++++++++++++++++++++++++++++++++++++++ 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
معلمات الإعداد استخدام مفاتيح تحويل سطر الأوامر ومتغيرات البيئة
يجب إدخال جميع المعلمات في أمر باستخدام إما مبدلات سطر الأوامر، أو باستخدام والمتغيرات البيئية. بادئة مفاتيح سطر الأوامر بشرطة واحدة (-) أو شرطة مزدوجة (--) حسب الطلب.
على سبيل المثال، من خلال المساعدة المعروضة أعلاه لأمر "إضافة مؤسسات"، يمكنك تحديد اسم المؤسسة من خلال:
- باستخدام مفتاح سطر الأوامر -o
التبديل:
> apigee-adminapi.sh orgs -o testOrg - جارٍ ضبط متغيّر بيئة باسم ORG:
> تصدير ORG=testOrg
> مؤسسات apigee-adminapi.sh
في حال حذف أي مَعلمات مطلوبة من الأمر، ستعرض الأداة رسالة خطأ تصف المَعلمات المفقودة. على سبيل المثال، إذا حذفت متغير البيئة --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 يتطلب معلومات عن المضيف الظاهري في نص الطلب.
عند استخدام الأداة apigee-adminapi.sh لإنشاء مضيف افتراضي أو أيّ أمر يأخذ محتوى طلب، يمكنك تمرير كل المعلومات اللازمة في سطر الأوامر كما هو موضّح أدناه:
> 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. على سبيل المثال، يأخذ الأمر التالي ملفًا يحدِّد المضيف الافتراضي:
> 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:
> 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