Edge para nuvem privada v. 4.16.05
Como criar uma organização, um ambiente e um host virtual ao mesmo tempo
Antes de criar um proxy de API no Apigee Edge, você precisa criar pelo menos uma organização e, em cada organização, um ou mais ambientes e hosts virtuais.
Normalmente, organizações e 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 de borda:
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-provision setup-org -f configFile
O arquivo de configuração contém:
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. # AXGROUP=axgroup-001 # Default value is axgroup-001
O comando:
- Criar a organização
Observação: não é possível renomear uma organização depois de criá-la. - associar a organização a um pod. Por padrão, ele é associado ao pod "gateway"
- Adicione o usuário especificado como o administrador da organização. Se o usuário não existir, crie um.
- Criar um ou mais ambientes
- Criar um ou mais hosts virtuais para cada ambiente
- Associe o ambiente a todos os processadores de mensagens
- Ativar análise
Para um arquivo de configuração silencioso completo, consulte Integrar uma organização.
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 será aplicado 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:
> /<inst_root>/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 exigidos pela organização para processar chamadas de API.
O arquivo de configuração contém o nome da organização e o endereço de e-mail do administrador. Os caracteres que você pode usar no atributo de nome são restritos a: a-z0-9\-$%. Não use espaços, pontos ou letras maiúsculas no nome:
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
O comando:
- Cria a organização
- Associa a organização a um pod. Por padrão, é associado ao pod "gateway"
- Adiciona o usuário especificado como o administrador da organização. O usuário precisa já existir. Caso contrário, o script emite um erro.
<Error> <Code>organizations.OrganizationAlreadyExists</Code> <Message>Organization : test already exists</Message> <Contexts/> </Error>
Criar uma organização usando chamadas de API
Também é possível usar 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://<ms-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://<ms-ip>:8080/v1/organizations/<org-name>/pods \ -d "region=default&pod=gateway"
É possível fazer essa chamada várias vezes para associar a organização a vários pods.
Na chamada final, um usuário é adicionado 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 "Adicionar um usuário".
Criar um ambiente
Use o comando add-env para criar um ambiente em uma organização atual:
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-provision add-env -f configFile
Este arquivo de configuração contém as informações necessárias para criar o ambiente e o host virtual:
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. # AXGROUP=axgroup-001 # Default value is axgroup-001
O comando:
- Cria o ambiente
- cria um host virtual único para o ambiente;
- Associa o ambiente a todos os processadores de mensagens no pod associado à organização que contém o ambiente.
- Ativação da análise
Observação: se você ativar a análise para um ambiente em uma organização, precisará ativar a análise para todos os ambientes da organização.
Criar um ambiente usando chamadas de API
Também é possível usar 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://<ms-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://<ms-ip>:8080/v1/organizations/<org-name>/environments/<env-name>/servers \ -d "action=add&uuid=<uuid>"
Em que "<uuid>" é o UUID do processador de mensagens. Para conseguir o UUID, use o comando:
> curl http://<mp-ip>:8082/v1/servers/self
Em que "<mp-ip>" é o endereço IP do processador de mensagens.
A próxima chamada de API ativa o Google Analytics para um determinado ambiente. Ela 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 da organização e do ambiente especificados.
> /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-provision enable-ax -f configFile
Esse arquivo de configuração contém:
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"
Onde sample.json contém entradas para integração do Google Analytics. Entre em contato com o suporte da Apigee para conseguir o arquivo JSON.
Criar um host virtual
É possível criar um host virtual em um ambiente atual de uma organização. Geralmente, um ambiente oferece suporte a vários hosts virtuais. Por exemplo, um host virtual aceita o protocolo HTTP, enquanto outro no mesmo ambiente oferece suporte ao protocolo HTTPS criptografado.
Use a seguinte chamada de API para criar hosts virtuais adicionais ou para um ambiente sem host virtual:
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>'
Para uma descrição completa de como criar um host virtual, inclusive como criar um host virtual seguro que usa TLS/SSL sobre HTTPS, consulte http://apigee.com/docs/api-services/content/creating-virtual-host.