apigee-adminapi.sh ইউটিলিটি ব্যবহার করে

ব্যক্তিগত ক্লাউডের জন্য প্রান্ত v. 4.17.01

apigee-adminapi.sh ইউটিলিটি ব্যবহার করুন একই এজ কনফিগারেশন কাজগুলি সম্পাদন করতে যা আপনি এজ ম্যানেজমেন্ট API এ কল করে সঞ্চালন করেন। apigee-adminapi.sh ইউটিলিটির সুবিধা হল যে এটি:

  • একটি সাধারণ কমান্ড-লাইন ইন্টারফেস ব্যবহার করুন
  • ট্যাব-ভিত্তিক কমান্ড সমাপ্তি প্রয়োগ করে
  • সাহায্য এবং ব্যবহারের তথ্য প্রদান করে
  • আপনি API ব্যবহার করার সিদ্ধান্ত নিলে সংশ্লিষ্ট API কল প্রদর্শন করতে পারে

apigee-adminapi.sh ইউটিলিটি apigee-প্রভিশন ইউটিলিটির প্রতিস্থাপন নয়। apigee-provision ইউটিলিটি আসলে apigee-adminapi.sh ইউটিলিটি ব্যবহার করে তার কার্য সম্পাদন করে।

দুটির মধ্যে প্রধান পার্থক্য হল:

  • apigee-adminapi.sh ইউটিলিটি পারমাণবিক ফাংশন সম্পাদন করে যা পৃথক এজ এপিআই কল প্রতিস্থাপন করে। উদাহরণস্বরূপ, একটি সংস্থা, পরিবেশ এবং ভার্চুয়াল হোস্ট তৈরি করতে তিনটি API কলের সাথে সম্পর্কিত তিনটি পৃথক apigee-adminapi.sh কমান্ডের প্রয়োজন৷
  • apigee-প্রোভিশন ইউটিলিটি একটি একক কমান্ডে একটি সম্পূর্ণ উচ্চ-স্তরের অপারেশন করার জন্য ডিজাইন করা হয়েছে। উদাহরণস্বরূপ, আপনি সমস্ত প্রয়োজনীয় তথ্য সহ একটি কনফিগার ফাইল পাস করে একটি একক apigee-provision কমান্ড দিয়ে একটি সংস্থা, পরিবেশ এবং ভার্চুয়াল হোস্ট তৈরি করতে পারেন।

এজ ডকুমেন্টেশন যেখানে উপযুক্ত সেখানে উভয় ইউটিলিটি ব্যবহার করে।

apigee-adminapi.sh ইনস্টল করা হচ্ছে

apigee-adminapi.sh ইউটিলিটি স্বয়ংক্রিয়ভাবে ইনস্টল হয়ে যায় যখন আপনি apigee-প্রভিশন বা apigee-validate ইউটিলিটি ইনস্টল করেন।

ইউটিলিটি নিম্নলিখিত অবস্থানে ইনস্টল করা হয়েছে:

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

apigee-adminapi.sh সিনট্যাক্স

apigee-adminapi.sh ইউটিলিটি একটি সাধারণ কমান্ড লাইন সিনট্যাক্স ব্যবহার করে। যে কোনো সময়ে, উপলব্ধ কমান্ড বিকল্পগুলি তালিকাভুক্ত একটি প্রম্পট প্রদর্শন করতে ট্যাব কী ব্যবহার করুন।

সমস্ত সম্ভাব্য কমান্ড দেখতে, কোনও বিকল্প ছাড়াই ইউটিলিটিটি চালু করুন:

> apigee-adminapi.sh 

আপনি apigee-adminapi.sh টাইপ করার পরে ট্যাব কী টিপুন, আপনি সম্ভাব্য বিকল্পগুলির তালিকা দেখতে পাবেন:

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

ট্যাব কী কমান্ডের প্রসঙ্গের উপর ভিত্তি করে বিকল্পগুলি প্রদর্শন করে। আপনি যদি টাইপ করার পরে ট্যাব কী প্রবেশ করেন:

> apigee-adminapi.sh orgs

আপনি orgs কমান্ডটি সম্পূর্ণ করার জন্য সম্ভাব্য বিকল্পগুলি দেখতে পাবেন:

add  apis  apps  delete  envs  list  pods  userroles

যেকোনো কমান্ডের জন্য সাহায্য প্রদর্শন করতে -h বিকল্পটি ব্যবহার করুন। উদাহরণস্বরূপ, আপনি যদি নীচে দেখানো হিসাবে -h বিকল্পটি ব্যবহার করেন:

> apigee-adminapi.sh orgs -h

ইউটিলিটি org কমান্ডের সমস্ত সম্ভাব্য বিকল্পের জন্য সম্পূর্ণ সাহায্য তথ্য প্রদর্শন করে। আউটপুটে প্রথম আইটেমটি "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 কমান্ড লাইন সুইচ ব্যবহার করে:
    > apigee-adminapi.sh orgs -o testOrg
  • ORG নামে একটি পরিবেশ পরিবর্তনশীল সেট করা হচ্ছে:
    > ORG = testOrg রপ্তানি করুন
    > apigee-adminapi.sh orgs

আপনি যদি কমান্ডে কোনো প্রয়োজনীয় পরামিতি বাদ দেন, ইউটিলিটি অনুপস্থিত পরামিতি বর্ণনা করে একটি ত্রুটি বার্তা প্রদর্শন করে। উদাহরণ স্বরূপ, আপনি যদি --host বা EDGE_SERVER এনভায়রনমেন্ট ভেরিয়েবল বাদ দেন যেটি একটি org তৈরি করার সময় এজ ম্যানেজমেন্ট সার্ভার উল্লেখ করে, আপনি নিম্নলিখিত ত্রুটি বার্তা দেখতে পাবেন:

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

দুটি সাধারণ প্যারামিটার যা আপনি প্রায়শই পরিবেশের ভেরিয়েবল হিসাবে সেট করেন তা হল ম্যানেজমেন্ট সার্ভারের sys অ্যাডমিন ইমেল ঠিকানা এবং IP ঠিকানা:

> export ADMIN_EMAIL=foo@bar.com
> export EDGE_SERVER=192.168.56.101

apigee-adminapi.sh ইউটিলিটিতে একটি ফাইল পাস করা

কিছু apigee-adminapi.sh ইউটিলিটি কমান্ড PUT এবং POST API কলের সাথে মিলে যায় যা একটি অনুরোধের বডি নেয়। উদাহরণস্বরূপ, একটি ভার্চুয়াল হোস্ট তৈরি করা একটি POST API কলের সাথে মিলে যায় যার জন্য অনুরোধের অংশে ভার্চুয়াল হোস্ট সম্পর্কে তথ্য প্রয়োজন৷

একটি ভার্চুয়াল হোস্ট তৈরি করতে 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>

ডিবাগ এবং API তথ্য প্রদর্শন করা হচ্ছে

কমান্ড সম্পর্কে বিস্তারিত তথ্য প্রদর্শন করতে apigee-adminapi.sh ইউটিলিটিতে --debug বিকল্পটি ব্যবহার করুন। এই তথ্যে apigee-adminapi.sh ইউটিলিটি দ্বারা সঞ্চালন করার জন্য তৈরি করা cURL কমান্ড অন্তর্ভুক্ত রয়েছে।

উদাহরণস্বরূপ, এই কমান্ডটি --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