Por vezes existe a necessidade de trabalhar com endereços DNS não externalizados, por questões de boas praticas, definições de segurança, arquitetura da plataforma Sensedia e escalabilidade da mesma, não são realizadas configurações diretamente no ambiente Sensedia para esta finalidade como configurar o servidor de resolução do backend, configurar manualmente o endereço dentro do "/etc/hosts" entre outros meios.
Para a situação mencionada acima, a própria plataforma permite que seja realizado a configuração da resolução destes DNS, tornando o cenário funcional sem a realização das configurações citadas anteriormente, que podem afetar a disponibilidade da plataforma.
A seguir conferimos como funciona esta configuração.
Configurando a Resolução de DNS no Fluxo da API
Imagine um cenário onde temos o DNS interno que nosso backend interpreta for igual a "endereco.backend.local", endereço IP "192.168.0.1 que responde pela porta http (80).
DNS INTERNO: endereco.backend.local
IP: 192.168.0.1
PORTA: http (80)
Pelo gateway nos comunicamos com o backend diretamente pelo IP informado (192.168.0.1) mas para que o backend interprete qual o host utilizado pelo dns internamente, basta informarmos pela chamada enviando um header com o endereço (endereco.backend.local).
No destination do recurso colocamos o endereço IP do servidor, bem como a porta onde ocorre a execução do serviço, assim o gateway irá fazer o encaminhamento para o IP do backend.
No flow de sua API, na operação/recurso em que utilizará este backend será necessário a inclusão do interceptor de HEADER, onde neste devemos realizar a configuração de forma similar a imagem abaixo:
Observe que foi configurado os seguintes campos, Name: Host, Type: Custom, value: endereco.backend.local, esta configuração fará com que toda requisição que chegue ao gateway seja direcionada ao backend correto e que este encaminhe também o host configurado no Header e a chamada sendo corretamente direcionada ao serviço correto, eliminando a necessidade de configurações direto no ambiente que podem comprometer a estabilidade da plataforma.
Créditos a André Chiosini e Camila Paulino por estas dicas.
Comentários
0 comentário
Por favor, entre para comentar.