Kuruluş, Ortam ve Sanal Ana Makine Oluşturma

Edge for Private Cloud 4.17.09 sürümü

Aynı anda kuruluş, ortam ve sanal ana makine oluşturma

Apigee Edge'de API proxy'si oluşturmadan önce en az bir kuruluş ve her kuruluşta bir veya daha fazla ortam ve sanal ana makine oluşturmanız gerekir.

Genellikle kuruluşlar ve ortamlar birlikte oluşturulur. Süreci basitleştirmek için apigee-provision yardımcı programını kullanın. Edge Management Server'da komut satırından çağırın:

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

Yapılandırma dosyası şunları içerir:

# Set Edge sys admin credentials.
ADMIN_EMAIL=your@email.com
APIGEE_ADMINPW=adminPword     # If omitted, you are prompted for it.
NEW_USER="y"
USER_NAME=orgAdmin@myCo.com
FIRST_NAME=foo
LAST_NAME=bar
USER_PWD="userPwrod"
ORG_NAME=example  # lowercase only, no spaces, underscores, or periods.
ENV_NAME=prod
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 

Komut daha sonra:

  • Kuruluşu oluşturun
    Not: Oluşturduğunuz bir kuruluşu yeniden adlandıramazsınız.
  • Kuruluşu bir pod ile ilişkilendirin. Varsayılan olarak "gateway" pod'u ile ilişkilendirilir.
  • Belirtilen kullanıcıyı kuruluş yöneticisi olarak ekleyin. Kullanıcı yoksa oluşturabilirsiniz.
  • Bir veya daha fazla ortam oluşturma
  • Her ortam için bir veya daha fazla sanal ana makine oluşturma
  • Ortamı tüm Mesaj İşleyicilerle ilişkilendirme
  • Analizleri etkinleştirme

Tam bir sessiz yapılandırma dosyası için Kuruluş ekleme başlıklı makaleyi inceleyin.

Varsayılan olarak, apigee-provision yardımcı programı kullanılırken kuruluş adının ve ortam adının maksimum uzunluğu 20 karakterdir. Kuruluşu veya ortamı oluşturmak için doğrudan Edge API'yi kullanıyorsanız bu sınır geçerli değildir.

Kuruluş oluşturma

Kuruluş oluşturmak için create-org komutunu kullanın:

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

Bu komut dosyası kuruluşu oluşturur ancak kuruluşun API çağrılarını işlemek için ihtiyaç duyduğu ortamları ve sanal ana makineleri eklemez veya yapılandırmaz.

Yapılandırma dosyasında kuruluşun adı ve kuruluş yöneticisinin e-posta adresi yer alır. Ad özelliğinde kullanabileceğiniz karakterler şunlarla sınırlıdır: a-z0-9\-$%. Adlarda boşluk, nokta veya büyük harf kullanmayın:

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

Komut daha sonra:

  • Kuruluşu oluşturur.
  • Kuruluşu bir pod ile ilişkilendirir. Varsayılan olarak "gateway" pod'u ile ilişkilendirir.
  • Belirtilen kullanıcıyı kuruluş yöneticisi olarak ekler. Kullanıcının zaten mevcut olması gerekir. Aksi takdirde komut dosyası hata verir.
<Error>
    <Code>organizations.OrganizationAlreadyExists</Code>
    <Message>Organization : test already exists</Message>
    <Contexts/>
</Error>

API çağrılarını kullanarak kuruluş oluşturma

Alternatif olarak, kuruluş oluşturmak için aşağıdaki API çağrılarını kullanabilirsiniz. İlk çağrı, kuruluşu oluşturur:

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

Sonraki çağrı, kuruluşu bir pod ile ilişkilendirir:

curl -H "Content-Type:application/x-www-form-urlencoded" \
-u <sysAdminEmail>:<adminPasswd> -X POST \
http://<ms-ip>:8080/v1/organizations/<org-name>/pods \
-d "region=default&pod=gateway" 

Kuruluşu birden fazla kapsülle ilişkilendirmek için bu çağrıyı birden çok kez yapabilirsiniz.

Son çağrı, mevcut bir kullanıcıyı kuruluşun kuruluş yöneticisi olarak ekler:

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

Kullanıcı mevcut değilse Kullanıcı ekleme bölümünde açıklandığı şekilde kullanıcıyı oluşturmak için aşağıdaki çağrıyı kullanabilirsiniz.

Ortam Oluşturma

Mevcut bir kuruluşta ortam oluşturmak için add-env komutunu kullanın:

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

Bu yapılandırma dosyası, ortamı ve sanal ana makineyi oluşturmak için gereken bilgileri içerir:

APIGEE_ADMINPW=adminPword    # If omitted, you are prompted for it.
ORG_NAME=example  # lowercase only, no spaces, underscores, or periods.
ENV_NAME=prod
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

Komut:

  • Ortamı oluşturur.
  • Ortam için tek bir sanal ana makine oluşturur.
  • Ortamı, ortamı içeren kuruluşla ilişkili kapsüldeki tüm Mesaj İşlemcilerle ilişkilendirir.
  • Analizleri etkinleştirir
    Not: Bir kuruluştaki bir ortam için analizleri etkinleştirirseniz kuruluştaki tüm ortamlar için analizleri etkinleştirmeniz gerekir.

API çağrılarını kullanarak ortam oluşturma

Alternatif olarak, ortam oluşturmak için aşağıdaki API çağrılarını kullanabilirsiniz. İlk çağrı, ortamı oluşturur:

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

Bir sonraki çağrı, ortamı bir Mesaj İşleyici ile ilişkilendirir. Ortamla ilişkilendirmek istediğiniz her Mesaj İşleyici için bu çağrıyı yapın:

curl -H "Content-Type:application/x-www-form-urlencoded" \
-u <sysAdminEmail>:<adminPasswd> -X POST \
http://<ms-ip>:8080/v1/organizations/<org-name>/environments/<env-name>/servers \
-d "action=add&uuid=<uuid>"

"<uuid>", Mesaj İşlemci'nin UUID'sidir. UUID'yi şu komutu kullanarak alabilirsiniz:

> curl http://<mp-ip>:8082/v1/servers/self

"<mp-ip>", Mesaj İşleyici'nin IP adresidir.

Bir sonraki API çağrısı, Analytics'i belirli bir ortam için etkinleştirir. Tüm veri merkezlerinin POD'larında Qpid ve Postgres sunucularının varlığını doğrular. Ardından, belirtilen kuruluş ve ortam için Analytics oryantasyonunu başlatır.

> /opt/apigee/apigee-service/bin/apigee-service apigee-provision enable-ax -f configFile

Bu yapılandırma dosyası şunları içerir:

ORG_NAME=orgName  # lowercase only, no spaces, underscores, or periods.
ENV_NAME=envName
curl -H "Content-Type:application/json" -u <sysAdminEmail>:<adminPasswd> 
-X POST http://<ms-ip>:8080/v1/organizations/<org-name>/environments/<env-name>/analytics/admin -d "@sample.json"

sample.json dosyasının içeriği aşağıdaki gibidir:

{
  "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 özelliği, Postgres UUID'lerinin virgülle ayrılmış bir listesini, qpid-server özelliği ise Qpid UUID'lerini içerir. Bu UUID'leri almanız gerekiyorsa aşağıdaki komutları kullanın.

Qpid için şu komutu çalıştırın:

curl -u <sysAdminEmail>:<passwd> http://<ms-ip>/v1/servers?pod=central

Bu komutun çıkışı bir JSON nesnesidir. Her Qpid sunucusu için aşağıdaki biçimde çıkış görürsünüz:

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

Postgres için şu komutu çalıştırın:

curl -u <sysAdminEmail>:<passwd> http://<ms-ip>/v1/servers?pod=analytics

Her Postgres sunucusu için aşağıdaki biçimde bir çıkış görürsünüz:

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

Sanal ana makine oluşturma

Bir kuruluştaki mevcut ortamda sanal ana makine oluşturabilirsiniz. Bir ortam genellikle birden fazla sanal ana makineyi destekler. Örneğin, bir sanal ana makine HTTP protokolünü desteklerken aynı ortamdaki başka bir sanal ana makine şifrelenmiş HTTPS protokolünü destekleyebilir.

Ek sanal ana makineler oluşturmak veya sanal ana makinesi olmayan bir ortam için sanal ana makine oluşturmak üzere aşağıdaki API çağrısını kullanın:

curl -H "Content-Type:application/xml" -u <sysAdminEmail>:<adminPasswd> \
-X POST \
http://<ms-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>' 

HTTPS üzerinden TLS/SSL kullanan güvenli bir sanal ana makine oluşturma dahil olmak üzere sanal ana makine oluşturma işleminin tam açıklaması için Özel Bulut için bir API'ye TLS erişimini yapılandırma başlıklı makaleyi inceleyin.