Edge para nuvem privada v4.18.05
É possível criar uma organização, um ambiente e um host virtual na linha de comando em um único comando ou criar cada um separadamente. Além disso, você pode usar a API Management para realizar muitas dessas ações.
Vídeo : assista a um vídeo curto para ter uma visão geral da configuração da organização da Apigee.
Criação de uma organização, um ambiente e um host virtual ao mesmo tempo
Antes de criar um proxy de API no Apigee Edge, é necessário criar pelo menos uma organização e, dentro de cada organização, um ou mais ambientes e hosts virtuais.
Normalmente, as organizações e os ambientes são criados juntos. Para simplificar o processo, use
o utilitário apigee-provision
. Invoque-o na linha de comando do servidor de gerenciamento
do Edge:
/opt/apigee/apigee-service/bin/apigee-service apigee-provision setup-org -f configFile
em que configFile é o caminho para um arquivo de configuração semelhante a este:
# 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
Ao configurar uma organização, o script setup-org
faz o seguinte:
- Cria a organização.
- Associa a organização ao pod "gateway". Não é possível mudar isso.
- Adiciona o usuário especificado como administrador da organização. Se o usuário não existir, você poderá criar um.
- Cria um ou mais ambientes.
- Cria um ou mais hosts virtuais para cada ambiente.
- Associa o ambiente a todos os processadores de mensagens.
- Ativa a análise.
Por padrão, o comprimento máximo do nome da organização e do ambiente é de 20 caracteres
ao usar o utilitário apigee-provision
. Esse limite não se aplica se você usar a
API Edge diretamente para criar a organização ou o ambiente.
Criar uma organização
Use o comando create-org
para criar uma organização, conforme mostrado no exemplo a seguir:
/opt/apigee/apigee-service/bin/apigee-service apigee-provision create-org -f configFile
Esse script cria a organização, mas não adiciona nem configura os ambientes e hosts virtuais necessários para que a organização processe chamadas de API.
O arquivo de configuração contém o nome da organização e o endereço de e-mail do administrador
dela. Os caracteres que podem ser usados no atributo name
são restritos a
a-z0-9\-$%
. Não use espaços, pontos ou letras maiúsculas no nome:
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
O script create-org
:
- Cria a organização.
- Associa a organização ao pod "gateway".
- Adiciona o usuário especificado como administrador da organização. O usuário precisa já existir. Caso contrário, o script vai gerar um erro.
Criar uma organização usando chamadas de API
Use as seguintes chamadas de API para criar uma organização. A primeira chamada cria a organização:
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"/>'
A próxima chamada associa a organização a um 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"
A chamada final adiciona um usuário como administrador da organização:
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>'
Se o usuário não existir, use a chamada a seguir para criar o usuário, conforme descrito em Como adicionar um usuário.
Criar um ambiente
Use o script add-env
para criar um ambiente em uma organização:
/opt/apigee/apigee-service/bin/apigee-service apigee-provision add-env -f configFile
Esse arquivo de configuração contém as informações necessárias para criar o ambiente e o host virtual:
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
O comando add-env
:
- Cria o ambiente.
- Cria um único host virtual para o ambiente.
- Associa o ambiente a todos os processadores de mensagens no pod associado à organização que contém o ambiente.
- Ativa a Análises
Criar um ambiente usando chamadas de API
Como alternativa, use as seguintes chamadas de API para criar um ambiente. A primeira chamada cria o ambiente:
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"/>'
A próxima chamada associa o ambiente a um processador de mensagens. Faça essa chamada para cada processador de mensagens que você quer associar ao ambiente:
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"
Em que uuid é o UUID do processador de mensagens. É possível receber o UUID usando o comando:
curl http://Message_Processor_IP:8082/v1/servers/self
em que Message_Processor_IP é o endereço IP do processador de mensagens.
A próxima chamada de API ativa o Google Analytics para um determinado ambiente. Ele valida a existência de servidores Qpid e Postgres nos pods de todos os data centers. Em seguida, ele inicia a integração do Google Analytics para a organização e o ambiente.
Esse arquivo de configuração contém:
ORG_NAME=orgName # lowercase only, no spaces, underscores, or periods. ENV_NAME=envName # lowercase only
Em que sample.json contém o seguinte:
{ "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"] } }
A propriedade postgres-servers
contém uma lista separada por vírgulas dos UUIDs do Postgres, e a propriedade qpid-server
contém os UUIDs do Qpid.
Se você precisar desses UUIDs, use os comandos abaixo.
Para Qpid, execute o seguinte comando:
curl -u sysAdminEmail:password http://management_server_IP/v1/servers?pod=central
A saída desse comando é um objeto JSON. Para cada servidor Qpid, você vai encontrar a saída no formato:
"type" : [ "qpid-server" ], "uUID" : "d3c5acf0-f88a-478e-948d-6f3094f12e3b"
Para Postgres, execute o seguinte comando:
curl -u sysAdminEmail:passwor http://management_server_IP/v1/servers?pod=analytics
Para cada servidor Postgres, você vai ver a saída no formato:
"type" : [ "postgres-server" ], "uUID" : "d3c5acf0-f88a-478e-948d-6f3094f12e3b"
Criar um host virtual
É possível criar um host virtual em um ambiente existente em uma organização. Muitas vezes, um ambiente oferece suporte a vários hosts virtuais. Por exemplo, um host virtual pode oferecer suporte ao protocolo HTTP, enquanto outro host virtual no mesmo ambiente oferece suporte ao protocolo HTTPS criptografado.
Use a seguinte chamada de API para criar outros hosts virtuais ou para criar um host virtual para um ambiente sem um host virtual:
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>'
Para uma descrição completa de como criar um host virtual, incluindo a criação de um host virtual seguro que usa TLS/SSL sobre HTTPS, consulte Como configurar o acesso TLS a uma API para a nuvem particular.