Exponha serviços aos consumidores por meio de conectividade privada
Este tutorial pode incorrer em custos. Use o Estimador de custos para gerar uma estimativa do custo baseada em seu uso projetado.
Este tutorial conduz você pelas etapas para configurar um Private Path service entre um provedor e um conjunto de consumidores. Com o Private Path service, os consumidores acessam o aplicativo ou serviço implementado pelo provedor por meio do backbone da IBM sem atravessar a Internet.
Objetivos
- Entenda os conceitos básicos de Private Path service.
- Implementar um aplicativo em uma conta sem expor nenhum terminal público.
- Exponha o aplicativo com Private Path service.
- Acesse o aplicativo de um cliente consumidor somente por meio de conectividade privada.
- Um provedor implementa um aplicativo resiliente suportado por vários servidores virtuais espalhados por várias zonas
- O provedor cria um Private Path network load balancer (NLB) configurado com conjuntos de back-end apontando para os servidores virtuais, distribuindo o carregamento entre os servidores com o algoritmo round-robin.
- Um Private Path service referencia o Private Path NLB e especifica o endpoint de serviço usado pelos consumidores..
- Os consumidores acessam o aplicativo do provedor por meio de gateways de terminal privado virtual Todo o tráfego permanece privado para o IBM Cloud.
Antes de Iniciar
Este tutorial requer:
- Uma IBM Cloud conta faturável para hospedar os recursos do provedor e do consumidor.
- Uma chave SSH do VPC para conectar-se às instâncias de servidor virtual provisionadas no tutorial
Criar uma chave ssh da VPC
Ao provisionar instâncias de servidores virtuais, uma chave SSH é injetada nas instâncias para que você possa se conectar aos servidores posteriormente. Essa chave SSH deve estar na mesma região na qual você implementará os recursos do tutorial
- Se você não tiver uma chave SSH configurada em IBM Cloud, consulte estas instruções para criar uma chave para o VPC.
- Anote o nome usado para a chave SSH.
Criar os recursos do provedor e o aplicativo
Neste tutorial, você primeiro atua como um provedor e implementa um aplicativo. Em uma segunda fase, você assume a função do consumidor e chama o aplicativo. O aplicativo é um servidor da web simples do nginx
- Acesse Schematics para criar uma nova área de trabalho.
- Na etapa Especificar modelo:
- Defina a URL do repositório como
https://github.com/IBM-Cloud/vpc-tutorials/tree/master/vpc-pps-basics/provider. - Certifique-se de marcar Usar repositório completo.
- Configure a Versão do Terraform como
terraform_v1.5 - Clique em Avançar.
- Defina a URL do repositório como
- Na etapa de detalhes do espaço de trabalho:
- Configure o nome da área de trabalho como
pps-provider - Selecione um Grupo de recursos e Local onde criar a área de trabalho. Isso não afetará os recursos criados para o tutorial.
- Clique em Avançar
- Configure o nome da área de trabalho como
- Clique em Criar.
Na área de trabalho Configurações, em Variáveis:
- Localize a variável "
existing_ssh_key_name.- Use o menu (veja) para Editar seu valor.
- Configure o valor para o nome da chave SSH criada na seção anterior ou para uma chave SSH existente.
- Salvar.
- Opcionalmente, também é possível ajustar valores de outras variáveis como
region,basename.
Finalmente crie os recursos:
- Clique em Aplicar plano.
- Aguarde o Schematics para concluir o fornecimento dos recursos.
Revise os recursos e o aplicativo do provedor
Executar Schematics para o provedor cria os recursos a seguir:
- uma nuvem privada virtual (VPC),
- três sub-redes, uma para cada zona,
- um mínimo de uma instância de servidor virtual em cada sub-rede,
- um Private Path NLB configurado com um conjunto de back-end incluindo todas as instâncias de servidor virtual,
- e um Private Path service.
- Navegue para Nuvens privadas virtuais, Sub-redes e Instâncias de servidor virtual para revisar os recursos provisionados
- Localize o Private Path NLB sob Balanceadores de carga.
- Em Private Path serviços, selecione o Private Path servicecriado.
- Nos detalhes do Private Path service, observe o Terminal em serviço configurado como
vpc-pps.example.com. Observe que ele pode ser diferente se você especificou umbasenamecustomizado durante a configuração da área de trabalho Este é o terminal usado pelos consumidores para interagir com o seu aplicativo - Anote o CRN, pois é necessário transmitir essas informações para os consumidores Os consumidores usam o CRN para identificar seu aplicativo ao criar gateways de terminal privado virtual..
Seu Private Path service está quase pronto para ser compartilhado com os consumidores. Mas antes de publicar o Private Path service, é recomendado testar se ele está funcionando conforme o esperado.
Criar os recursos do consumidor..
Para verificar se o Private Path service está configurado corretamente, você implementará servidores virtuais para acessar o aplicativo, assim como qualquer consumidor de um Private Path service faria.
Até que um Private Path service seja publicado, ele só pode ser acessado dentro da mesma conta na qual é criado. Oferece uma boa oportunidade para testar o serviço antes de compartilhá-lo com outras pessoas. Este é o motivo pelo qual, neste estágio, o lado consumidor deste tutorial é fornecido na mesma conta que o aplicativo do provedor.
- Acesse Schematics para criar uma nova área de trabalho.
- Na etapa Especificar modelo:
- Defina a URL do repositório como
https://github.com/IBM-Cloud/vpc-tutorials/tree/master/vpc-pps-basics/consumer. - Certifique-se de marcar Usar repositório completo.
- Configure a Versão do Terraform como
terraform_v1.5 - Clique em Avançar.
- Defina a URL do repositório como
- Na etapa de detalhes do espaço de trabalho:
- Configure o nome da área de trabalho como
pps-consumer - Selecione um Grupo de recursos e Local onde criar a área de trabalho. Isso não afetará os recursos criados para o tutorial.
- Clique em Avançar
- Configure o nome da área de trabalho como
- Clique em Criar.
Na área de trabalho Configurações, na secção Variáveis:
- Localize a variável "
existing_ssh_key_name.- Use o menu (veja) para Editar seu valor.
- Configure o valor para o nome da chave SSH usada para este tutorial.
- Salvar.
- Localize a variável "
provider_crn- Editar seu valor.
- Configure o valor para o CRN Private Path service obtido anteriormente.
- Salvar.
- Opcionalmente, também é possível ajustar os valores de outras variáveis como
region,basename.regiondevem corresponder ao valor configurado na área de trabalhopps-provider.
Finalmente crie os recursos:
- Clique em Aplicar plano.
- Aguarde o Schematics para concluir o fornecimento dos recursos.
Revise os recursos e aplicativos do consumidor
Executar Schematics para o consumidor cria os recursos a seguir:
- uma nuvem privada virtual (VPC),
- duas sub-redes,
- uma instância de servidor virtual em cada sub-rede,
- um gateway de terminal privado virtual configurado com o CRN Private Path service e com um endereço IP em cada sub-rede
- Navegue para Instâncias de servidor virtual para revisar as instâncias provisionados
- Acesse Gateways do terminal privado virtual e observe que o gateway do terminal está marcado como Pendente.
Nesse estágio, o consumidor ainda não pode acessar o aplicativo do provedor. Ele está esperando a solicitação de conexão para o Private Path service ser revisado e permitido.
Aprovar a solicitação do consumidor
Atuando como o provedor do aplicativo,
-
Acesse o lista de serviços do Private Path.
-
Observe que o Private Path service que você criou tem solicitações de conexão pendentes a serem revisadas
-
Selecione o Private Path service.
-
Na tabela Solicitações de conexão localize a solicitação do consumidor.
-
Use o menu () para Permitir a conexão.
O diálogo Permitir solicitação de conexão fornece uma opção para criar uma política para permitir automaticamente todas as solicitações do mesmo ID da conta. Deixe desmarcado por enquanto. No futuro, isso pode acelerar o processo de os consumidores solicitarem conexões dessa conta.
-
Clique em Permissão..
Testar a conectividade do consumidor para o provedor
Atuando como consumidor novamente,
-
Acesse Gateways do terminal privado virtual e observe que o gateway do terminal foi movido para Stable.
-
Anote o Terminal em serviço Ele deve ser
vpc-pps.example.com, a menos que você tenha especificado umbasenamecustomizado durante a configuração da área de trabalho -
Navegue para Instâncias de servidor virtual e localize o IP flutuante designado a uma das instâncias do consumidor As instâncias são nomeadas como
vpc-pps-consumer-vsi-us-south-1ouvpc-pps-consumer-vsi-us-south-2 -
Abra uma conexão SSH para uma das instâncias..
ssh root@<floating-ip> -
Acesse o aplicativo do provedor chamando o terminal em serviço.
curl http://vpc-pps.example.comA saída deve ser semelhante a:
Hello world from vpc-pps-provider-vsi-us-south-2Pode levar alguns minutos para que o nome de domínio seja resolvido corretamente para as instâncias de servidor virtual
-
Repita o comando
curlvárias vezes Observe como ele mostra uma saída diferente à medida que passa por todas as instâncias de servidor virtual conectadas ao conjunto de back-end do Private Path NLB.
Parabéns, seu Private Path service está funcionando conforme o esperado e está pronto para ser publicado para outros consumirem.
Expandir o tutorial
Este tutorial foca nos fundamentos do Private Path service com um aplicativo provedor em um VPC e um consumidor em outro VPC, todos dentro da mesma conta:
- A próxima etapa será publicar o Private Path service. Depois de publicado, os clientes em outras contas do IBM Cloud podem fazer uma solicitação de conexão para acessar o aplicativo.
- Comunicando informações de conexão aos consumidores, revisando solicitações de conexão e aperfeiçoando o processo com políticas de conta também fazem parte da integração bem-sucedida de consumidores.
Remover recursos
Para remover os recursos criados para este tutorial:
-
Acesse Schematics
- Selecione o espaço de trabalho "
pps-consumer. - Em Ações ..., selecione Destruir recursos.
- Digite
pps-consumere clique em Destruir.. - Aguarde Schematics para concluir a tarefa.
- Depois de concluído, selecione Excluir área de trabalho no menu Ações ....
- Digite
pps-consumere clique em Excluir..
- Selecione o espaço de trabalho "
-
Repita as mesmas etapas com a área de trabalho do
pps-providerPode ser necessário tentar novamente os Recursos de Destruição após alguns minutos se a exclusão da área de trabalho falhou porque o grupo de recursos não pôde ser excluído.
Dependendo do recurso, ele não é excluído imediatamente, mas retido (por padrão por 7 dias). É possível recuperar o recurso excluindo-o permanentemente ou restaurando-o dentro do período de retenção. Consulte este documento sobre como usar a recuperação de recurso.