Esta página se aplica à Apigee e à Apigee híbrida.
Confira a documentação da Apigee Edge.
Um ambiente é um contexto de execução de tempo de execução para os proxies de API e os fluxos compartilhados que você quer implantar. Você precisa implantar os proxies de API e os fluxos compartilhados em um ou mais ambientes antes que eles possam ser acessados para teste. Para mais informações sobre ambientes, consulte Sobre ambientes e grupos de ambiente.
Configure e implante os ambientes conforme descrito nas seções a seguir. Consulte também Como gerenciar pastas e arquivos em um espaço de trabalho do Apigee.
Como configurar um ambiente
Antes de implantar um ambiente, configure-o para identificar os proxies de API e os fluxos compartilhados que você quer implantar e configurar os ganchos de fluxo compartilhados ou servidores de destino, conforme necessário.
Para configurar um ambiente, crie o ambiente e edite a configuração definida na tabela a seguir.
Configuração | Descrição |
---|---|
Depurar máscaras (debugmasks.json ) |
Define configurações de máscara para mascarar dados específicos nas sessões de rastreamento e depuração. |
Implantações (deployments.json ) |
Defina os proxies da API e os fluxos compartilhados na implantação. |
Ganchos de fluxo (flowhooks.json ) |
Anexe fluxos compartilhados aos ganchos de fluxo para que sejam executados no mesmo local para todos os proxies de API implantados no ambiente. |
Servidores de destino (targetservers.json ) |
Separe seus endpoints concretos dos endpoints de destino para aceitar o balanceamento de carga e o failover em várias instâncias do servidor de back-end. |
Keystores (keystores.json ) |
Adicione o suporte TLS aos seus endpoints de destino e servidores de destino. |
Além disso, se você usar qualquer política que exija recursos, poderá gerenciar recursos no nível do ambiente, conforme necessário.
Como criar um ambiente
Para criar um ambiente na Apigee no Cloud Code:
Realize uma das seguintes ações:
Posicione o cursor sobre a pasta environments no espaço de trabalho da Apigee e clique em .
Selecione View > Command Palette para abrir a paleta de comando e selecione Cloud Code: Create Apigee Environment.
O assistente Criar ambiente será aberto.
Digite um nome para o ambiente e pressione Enter.
O ambiente é adicionado à pasta environments na seção da Apigee:
Configure o ambiente, conforme descrito nas seções a seguir.
Como configurar máscaras de depuração (debugmask.json)
A Apigee permite definir configurações de máscara para mascarar dados específicos nas sessões de rastreamento e depuração. Quando os dados são mascarados, eles são substituídos por asteriscos na saída de trace. Exemplo:
<description>**********</description>
Para mais informações, consulte Como mascarar dados confidenciais.
Para configurar máscaras de depuração, atualize o arquivo debugmask.json
editando o arquivo diretamente.
Veja a seguir um exemplo da estrutura básica de uma configuração de máscara no formato JSON. Para saber mais sobre os campos de configuração de máscara mostrados no exemplo, consulte DebugMask.
{ "namespaces": { "myco": "https://example.com" }, "requestXPaths": [ "/myco:Greeting/myco:User" ], "responseXPaths": [ "/myco:Greeting/myco:User" ], "faultXPaths": [ "/myco:Greeting/myco:User" ], "requestJSONPaths": [ "$.store.book[].author" ], "responseJSONPaths": [ "$.store.book[].author" ], "faultJSONPaths": [ "$.store.book[*].author" ], "variables": [ "request.header.user-agent", "request.formparam.password" ] }
Como configurar as implantações (deployments.json)
Configure os proxies de API e os fluxos compartilhados que você quer incluir na implantação.
Para configurar as implantações, atualize o arquivo deployments.json
usando o assistente de configuração ou editando o arquivo diretamente.
Para configurar as implantações usando o assistente de configuração:
- Posicione o cursor sobre o arquivo deployments.json do ambiente e clique em .
- Percorra o assistente de configuração para selecionar as implantações e preencher automaticamente os campos no arquivo
deployments.json
. O arquivodeployments.json
será aberto no editor de arquivos. - Edite a configuração conforme necessário.
- Selecione Arquivo > Salvar ou ⌘S para salvar suas edições.
O exemplo a seguir configura a implantação para incluir o proxy de API helloworld
e os fluxos compartilhados mysharedflow
e hw-sharedflow
:
{ "proxies" : [ "helloworld" ], "sharedflows" : [ "mysharedflow", "hw-sharedflow" ] }
Como configurar contas de serviço com implantações de proxy e fluxo compartilhado
Os proxies de API que dependem de um serviço do Google como back-end podem exigir que uma conta de serviço do Google Cloud seja associada à implantação. Consulte Como usar a autenticação do Google.
Ao editar o arquivo deployments.json
, é possível associar o proxy de API ou o fluxo compartilhado a uma conta de serviço do Google Cloud. Exemplo:
{ "name": "proxy-name", "serviceAccount": "associated-service-account" }
O exemplo a seguir mostra uma configuração de implantação em que as contas de serviço estão associadas ao proxy de API helloworld
e ao fluxo compartilhado mysharedflow
. No entanto, o proxy healthcheck
e o fluxo compartilhado hw-sharedflow
não estão associados a uma conta de serviço:
{ "proxies": [ { "name": "helloworld", "serviceAccount": "myserviceaccount@myorg.iam.gserviceaccount.com" }, "healthcheck" ], "sharedflows": [ { "name": "mysharedflow", "serviceAccount": "myserviceaccount@myorg.iam.gserviceaccount.com" }, "hw-sharedflow" ] }
Saiba como configurar o emulador da Apigee para testar recursos de autenticação de conta de serviço no proxy de API.
Como anexar fluxos compartilhados usando ganchos de fluxo (flowhooks.json)
Com um gancho de fluxo, você anexa um fluxo compartilhado para que ele seja executado no mesmo lugar para todos os proxies de API implantados em um ambiente específico. Isso gera uma sequência de lógica implementada e implantada separadamente que não faz parte do código de implementação de um proxy. Especificamente, é possível anexar um fluxo compartilhado nos seguintes locais do fluxo de proxy da API:
- Antes de um endpoint do proxy da API ser executado (
PreProxyFlowHook
) - Depois que o endpoint do proxy da API é executado e imediatamente antes da resposta ao cliente (
PostProxyFlowHook
) - Antes de um endpoint de destino ser executado (
PreTargetFlowHook
) - Apóa a resposta de destino ser executada (
PostTargetFlowHook
)
Para mais informações sobre ganchos de fluxo, consulte Como anexar fluxos compartilhados usando ganchos de fluxo.
Para anexar fluxos compartilhados usando ganchos de fluxo, atualize o arquivo flowhooks.json
usando o assistente de configuração ou editando o arquivo diretamente.
Para configurar os ganchos de fluxo usando o assistente de configuração:
- Posicione o cursor sobre o arquivo flowhooks.json do ambiente e clique em .
- Selecione os fluxos compartilhados a serem anexados em locais específicos no fluxo de proxy de API e campos de preenchimento automático no arquivo
flowhooks.json
. O arquivoflowhooks.json
será aberto no editor de arquivos. - Edite a configuração conforme necessário.
- Selecione Arquivo > Salvar ou ⌘S para salvar suas edições.
O exemplo a seguir vincula o mysharedflow
ao PreProxyFlowHook
para que ele seja executado antes da execução de um endpoint de proxy da API:
{ "PreProxyFlowHook": { "continueOnError": true, "sharedFlow": "mysharedflow", "description": "Shared enforced before a proxy endpoint executes." } }
Como configurar os servidores de destino (targetservers.json)
Os servidores de destino (TargetServers) separam os URLs de endpoint concretos das configurações do endpoint de destino (TargetEndpoint). Em vez de definir um URL concreto na configuração, é possível configurar um ou mais TargetServers nomeados. Depois, referencie cada TargetServer pelo nome em uma TargetEndpoint HTTPConnection.
Para saber mais sobre os servidores de destino, consulte os tópicos a seguir:
- Balanceamento de carga entre servidores de back-end
- Antipadrão: balanceamento de carga com apenas um servidor de destino com MaxFailures definido como um valor diferente de zero
Para configurar os servidores de destino, atualize o arquivo targetservers.json
usando o assistente de configuração ou editando o arquivo diretamente.
Para uma descrição dos campos no arquivo targetservers.json
, consulte Recurso: TargetServer.
Para configurar os servidores de destino usando o assistente de configuração:
- Posicione o cursor sobre o arquivo targetservers.json do ambiente e clique em .
- Percorra o assistente de configuração para configurar o servidor de destino e preencher automaticamente os campos no arquivo
targetservers.json
. O arquivotargetservers.json
será aberto no editor de arquivos. - Edite a configuração conforme necessário.
- Selecione Arquivo > Salvar ou ⌘S para salvar suas edições.
O seguinte exemplo adiciona um novo servidor de destino ao ambiente:
[ { "enabled": true, "name": "mytargetserver", "description": "My first target server", "host": "localhost", "port": 80 } ]
O seguinte exemplo configura um servidor de destino com TLS mútuo usando keystores:
[ { "name": "mtlsserver", "host": "mytargetserver.mydomain", "port": 443, "enabled": true, "protocol": "HTTP", "tlsInfo": { "enabled": true, "clientAuthEnabled": true, "keyStore": "mykeystore", "keyAlias": "mykeyandcert", "trustStore": "mytruststore" } } ]
Como configurar os keystores (keystores.json)
Os keystores definem os repositórios de certificados de segurança usados para a criptografia TLS em endpoints e servidores de destino.
Para mais informações sobre a configuração do TLS, consulte Opções para configurar o TLS.
Para configurar keystores:
- Abra o arquivo
keystores.json
do ambiente no editor. O arquivo tem dois elementos principaisstores
: um mapa do nome do keystore adicionado e dos aliases.references
: um mapa de todos os nomes de referência do keystore e o nome do keystore associado.
- Edite a configuração conforme necessário.
- Selecione Arquivo > Salvar ou ⌘S para salvar suas edições.
O seguinte exemplo mostra um mykeystore
do keystore com dois aliases, mycert-alias
e mykeycert-alias
:
{ "stores": { "mykeystore": { "my-cert-alias": { "cert": "/Users/jdoe/testkeys/cert1.pem" }, "my-keycert-alias": { "key": "/Users/jdoe/testkeys/key1.pem", "cert": "/Users/jdoe/testkeys/cert1.pem" } } } }
Como implantar um ambiente
Implante os proxies de API e os fluxos compartilhados configurados para um ambiente de modo que eles possam ser acessados para testes.
Para implantar um ambiente:
- Na seção da Apigee, posicione o cursor sobre a pasta do ambiente que você quer implantar.
- Clique em .
- Se vários contêineres para o Apigee Emulator estiverem em execução, selecione o contêiner em que você quer implantar o ambiente.
- Selecione o pacote de teste que você quer exportar com a implantação ou selecione Implantar sem um pacote de teste.
É possível exportar recursos de teste posteriormente, conforme descrito em Como exportar recursos de teste no emulador da Apigee.
O ambiente é implantado e mostra uma mensagem de sucesso na guia Saída.
Os aplicativos implantados são exibidos no Apigee Emulator: