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.comexport ADMIN_PASSWORD=abcd1234export 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
هرزمان خواستید، از کلید جهش برای نمایش پیاموارهای استفاده کنید که گزینههای فرمان دردسترس را فهرست میکند.
برای دیدن همه فرمانهای ممکن، ابزار را بدون گزینه فراخوانی کنید:
/opt/apigee/apigee-adminapi/bin/apigee-adminapi.sh
اگر پساز تایپ کردن apigee-adminapi.sh کلید جهش را فشار دهید، فهرست گزینههای ممکن را خواهید دید:
analytics classification logsessions regions securityprofile userroles buildinfo GET orgs runtime servers users
کلید جهش گزینههایی را براساس بافت فرمان نمایش میدهد. اگر بعداز تایپ کردن، کلید جهش را وارد کنید:
/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
Pass a file to 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