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

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

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

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

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

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

/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:

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

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

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

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"/>'

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

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 زیر برای ایجاد محیط استفاده کنید. اولین تماس محیط را ایجاد می‌کند:

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 «پردازشگر پیام» است. می‌توانید UUID را بااستفاده از این فرمان دریافت کنید:

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

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

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

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

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 شامل فهرستی از Postgres UUID است که با کاما از هم جدا شده‌اند، و ویژگی qpid-server شامل Qpid UUID است. اگر لازم است این 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 رمزگذاری‌شده پشتیبانی می‌کند.

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

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 به میانای برنامه‌سازی کاربردی برای Private Cloud مراجعه کنید.