درحال ایجاد سازمان، محیط، و میزبان مجازی

می‌توانید سازمان، محیط، و میزبان مجازی را در خط فرمان در یک فرمان واحد ایجاد کنید، یا می‌توانید هریک را به‌طور جداگانه ایجاد کنید. علاوه‌براین، می‌توانید از Edge API برای انجام بسیاری از این کنش‌ها استفاده کنید.

ویدیو: برای نمای کلی تنظیم و پیکربندی «سازمان Apigee»، ویدیو کوتاهی را تماشا کنید.

ایجاد سازمان، محیط، و میزبان مجازی به‌طور هم‌زمان

قبل‌از اینکه یک پراکسی API در Apigee Edge ایجاد کنید، باید حداقل یک سازمان و در هر سازمان، یک یا چند محیط و میزبان مجازی ایجاد کنید.

معمولاً سازمان‌ها و محیط‌ها با هم ایجاد می‌شوند. برای ساده کردن این فرایند، از ابزار apigee-provision استفاده کنید. آن را از خط فرمان در «سرور مدیریت Edge» فراخوانی کنید:

/opt/apigee/apigee-service/bin/apigee-service apigee-provision setup-org -f configFile

که در آن configFile مسیر فایل پیکربندی است که شبیه به مورد زیر است:

# Set Edge sys admin credentials.
ADMIN_EMAIL=your@email.com
APIGEE_ADMINPW=admin_password  # If omitted, you are prompted for it.
NEW_USER="y"
USER_NAME=orgAdmin@myCo.com
FIRST_NAME=foo
LAST_NAME=bar
USER_PWD="userPword"
ORG_NAME=example  # lowercase only, no spaces, underscores, or periods.
ENV_NAME=prod  # lowercase only
VHOST_PORT=9001
VHOST_NAME=default
VHOST_ALIAS="$IP1:9001"
# Optionally configure TLS/SSL for virtual host.
# VHOST_SSL=y     # Set to "y" to enable TLS/SSL on the virtual host.
# KEYSTORE_JAR=   # JAR file containing the cert and private key.
# KEYSTORE_NAME=  # Name of the keystore.
# KEYSTORE_ALIAS= # The key alias.
# KEY_PASSWORD=   # The key password, if it has one.
# Optionally set the base URL displayed by the Edge UI for an
# API proxy deployed to the virtual host.
# VHOST_BASEURL="http://myCo.com"
# AXGROUP=axgroup-001 # Default value is axgroup-001

هنگام راه‌اندازی سازمان، نوشتار setup-org کارهای زیر را انجام می‌دهد:

  • سازمان را ایجاد می‌کند.
  • سازمان را با واحد «درگاه» مرتبط می‌کند. نمی‌توانید این را تغییر دهید.
  • کاربر مشخص‌شده را به‌عنوان سرپرست سازمان اضافه می‌کند. اگر کاربر وجود ندارد، می‌توانید کاربری ایجاد کنید.
  • یک یا چند محیط ایجاد می‌کند.
  • برای هر محیط، یک یا چند میزبان مجازی ایجاد می‌کند.
  • محیط را با همه «پردازشگر(های) پیام» مرتبط می‌کند.
  • تجزیه‌وتحلیل را فعال می‌کند.

به‌طور پیش‌فرض، حداکثر طول نام سازمان و نام محیط هنگام استفاده از ابزار apigee-provision‏ ۲۰ نویسه است. اگر از Edge API مستقیماً برای ایجاد سازمان یا محیط استفاده کنید، این محدودیت اعمال نمی‌شود. هم نام سازمان و هم نام محیط باید حروف کوچک باشد.

ایجاد سازمان

از فرمان create-org برای ایجاد سازمان استفاده کنید، همان‌طور که مثال زیر نشان می‌دهد:

/opt/apigee/apigee-service/bin/apigee-service apigee-provision create-org -f configFile

این دستورگان سازمان را ایجاد می‌کند، اما محیط‌ها و میزبان‌های مجازی موردنیاز سازمان را برای مدیریت تماس‌های میانای برنامه‌سازی کاربردی اضافه یا پیکربندی نمی‌کند.

فایل پیکربندی حاوی نام سازمان و نشانی ایمیل سرپرست سازمان است. نویسه‌هایی که می‌توانید در مشخصه name استفاده کنید به a-z0-9\-$% محدود می‌شود. در نام از فاصله، نقطه، یا حروف بزرگ استفاده نکنید:

APIGEE_ADMINPW=admin_password    # If omitted, you are prompted for it.
ORG_NAME=example  # lowercase only, no spaces, underscores, or periods.
ORG_ADMIN=orgAdmin@myCo.com

دستورگان create-org:

  • سازمان را ایجاد می‌کند.
  • سازمان را با واحد «درگاه» مرتبط می‌کند.
  • کاربر مشخص‌شده را به‌عنوان سرپرست سازمان اضافه می‌کند. کاربر باید ازقبل وجود داشته باشد؛ درغیراین‌صورت، نوشتار خطا صادر می‌کند.

ایجاد سازمان بااستفاده از تماس‌های API

برای ایجاد سازمان می‌توانید از فراخوان‌های API زیر استفاده کنید. اولین تماس سازمان را ایجاد می‌کند: سازمان:

curl -H "Content-Type:application/xml" -u sysAdminEmail:adminPasswd \
  -X POST http://management_server_IP:8080/v1/organizations \
  -d '<Organization name="org_name" type="paid"/>'

تماس بعدی سازمان را با یک واحد مرتبط می‌کند:

curl -H "Content-Type:application/x-www-form-urlencoded" \
  -u sysAdminEmail:adminPasswd -X POST \
  http://management_server_IP:8080/v1/organizations/org_name/pods \
  -d "region=default&pod=gateway"

تماس نهایی کاربر موجود را به‌عنوان سرپرست سازمان برای سازمان اضافه می‌کند:

curl -H "Content-Type:application/xml" -u sysAdminEmail:adminPasswd \
  -X POST http://<ms-ip>:8080/v1/organizations/org_name/users/user_email/userroles/ \
  -d '<Roles><Role name="orgadmin"/></Roles>'

اگر کاربر وجود ندارد، می‌توانید از تماس زیر برای ایجاد کاربر همان‌طور که در افزودن کاربر توضیح داده شده است استفاده کنید.

ایجاد محیط

از دستورگان add-env برای ایجاد محیط در سازمان موجود استفاده کنید:

/opt/apigee/apigee-service/bin/apigee-service apigee-provision add-env -f configFile

این فایل پیکربندی حاوی اطلاعات لازم برای ایجاد محیط و میزبان مجازی است:

APIGEE_ADMINPW=admin_password  # If omitted, you are prompted for it.
ORG_NAME=example  # lowercase only, no spaces, underscores, or periods.
ENV_NAME=prod  # lowercase only
VHOST_PORT=9001
VHOST_NAME=default
VHOST_ALIAS="$IP1:9001"
# Optionally configure TLS/SSL for virtual host.
# VHOST_SSL=y     # Set to "y" to enable TLS/SSL on the virtual host.
# KEYSTORE_JAR=   # JAR file containing the cert and private key.
# KEYSTORE_NAME=  # Name of the keystore. 
# KEYSTORE_ALIAS= # The key alias.
# KEY_PASSWORD=   # The key password, if it has one. 
# Optionally set the base URL displayed by the Edge UI for an
# API proxy deployed to the virtual host.
# VHOST_BASEURL="http://myCo.com"
# AXGROUP=axgroup-001 # Default value is axgroup-001

فرمان add-env:

  • محیط را ایجاد می‌کند.
  • یک میزبان مجازی واحد برای محیط ایجاد می‌کند.
  • محیط را با همه «پردازشگر(های) پیام» در غلاف منسوب به سازمان حاوی محیط منسوب می‌کند.
  • تحلیل‌ها را فعال می‌کند

بااستفاده از تماس‌های API محیطی ایجاد کنید

یا می‌توانید از فراخوان‌های API زیر برای ایجاد محیط استفاده کنید. تماس اول محیط را ایجاد می‌کند:

curl -H "Content-Type:application/xml" -u sysAdminEmail:adminPasswd \
  -X POST http://management_server_IP:8080/v1/organizations/org_name/environments \
  -d '<Environment name="env_name"/>'

تماس بعدی محیط را با «پردازشگر پیام» مرتبط می‌کند. این تماس را برای هر «پردازشگر پیام» که می‌خواهید با محیط مرتبط کنید برقرار کنید:

curl -H "Content-Type:application/x-www-form-urlencoded" \
  -u sysAdminEmail:adminPasswd -X POST \
  http://management_server_IP:8080/v1/organizations/org_name/environments/env_name/servers \
  -d "action=add&uuid=uuid"

که در آن uuid شناسه جهانی یکتای «پردازشگر پیام» است. می‌توانید بااستفاده از فرمان زیر، UUID را دریافت کنید:

curl http://Message_Processor_IP:8082/v1/servers/self

که در آن Message_Processor_IP نشانی IP «پردازشگر پیام» است.

فراخوانی API بعدی Analytics را برای محیطی معین فعال می‌کند. وجود سرورهای Qpid و Postgres را در «واحد پردازش داده» همه مراکز داده اعتبارسنجی می‌کند. سپس فرایند آماده‌سازی Analytics را برای سازمان و محیط داده‌شده شروع می‌کند.

این فایل پیکربندی شامل موارد زیر است:

  # Set Edge sys admin credentials.
  ADMIN_EMAIL=your@email.com
  APIGEE_ADMINPW=admin_password

  ORG_NAME=orgName  # lowercase only, no spaces, underscores, or periods.
  ENV_NAME=envName  # lowercase only

که در آن sample.json حاوی موارد زیر است:

{
  "properties" : {
    "samplingAlgo" : "reservoir_sampler",
    "samplingTables" : "10=ten;1=one;",
    "aggregationinterval" : "300000",
    "samplingInterval" : "300000",
    "useSampling" : "100",
    "samplingThreshold" : "100000"
  },
  "servers" : {
    "postgres-server" : [ "1acff3a5-8a6a-4097-8d26-d0886853239c", "f93367f7-edc8-4d55-92c1-2fba61ccc4ab" ],  
    "qpid-server" : [ "d3c5acf0-f88a-478e-948d-6f3094f12e3b", "74f67bf2-86b2-44b7-a3d9-41ff117475dd"] 
  }
}

دارایی postgres-servers شامل فهرستی از UUIDهای Postgres است که با کاما از هم جدا شده‌اند و دارایی qpid-server شامل UUIDهای Qpid است. اگر نیاز دارید این UUIDها را به‌دست آورید، از فرمان‌های زیر استفاده کنید.

برای Qpid، فرمان زیر را اجرا کنید:

curl -u sysAdminEmail:password http://management_server_IP/v1/servers?pod=central

برونداد این فرمان یک شیء JSON است. برای هر سرور Qpid، برونداد را در قالب زیر خواهید دید: فرم:

"type" : [ "qpid-server" ],
"uUID" : "d3c5acf0-f88a-478e-948d-6f3094f12e3b"

برای Postgres، فرمان زیر را اجرا کنید:

curl -u sysAdminEmail:admin_password http://management_server_IP/v1/servers?pod=analytics

برای هر سرور Postgres، برونداد را به‌صورت زیر خواهید دید:

"type" : [ "postgres-server" ],
"uUID" : "d3c5acf0-f88a-478e-948d-6f3094f12e3b"

ایجاد میزبان مجازی

می‌توانید در محیط موجود در سازمان میزبان مجازی ایجاد کنید. اغلب یک محیط از چندین میزبان مجازی پشتیبانی می‌کند. برای مثال، یک میزبان مجازی ممکن است از پروتکل HTTP پشتیبانی کند، درحالی‌که میزبان مجازی دیگری در همان محیط از پروتکل رمزگذاری‌شده HTTPS پشتیبانی می‌کند.

از فراخوانی API زیر برای ایجاد میزبان‌های مجازی اضافی یا ایجاد میزبان مجازی برای محیطی بدون میزبان مجازی استفاده کنید:

curl -H "Content-Type:application/xml" -u sysAdminEmail:adminPasswd \
  -X POST http://management_server_IP:8080/v1/organizations/org_name/environments/env_name/virtualhosts \
  -d '<VirtualHost name="default"> \
    <HostAliases> \
      <HostAlias>myorg-test.apigee.net</HostAlias> \
    </HostAliases> \
    <Interfaces/> \
    <Port>443</Port> \
  </VirtualHost>'

برای شرح کامل ایجاد میزبان مجازی، ازجمله ایجاد میزبان مجازی ایمن که از TLS/SSL روی HTTPS استفاده می‌کند، به پیکربندی دسترسی TLS به میانای برنامه‌سازی کاربردی برای «ابر خصوصی» مراجعه کنید.