Tags: box, dns


TABLE OF CONTENTS


Overview


In some cases processes written in Golang running in Kublr box container incorrectly configure DNS resolution and therefore cannot establish connections to the external services and APIs, such as cloud API.

This is caused by specifics of DNS resolution in Go programs as in most cases Go programs use golang-native DNS resolution method.

When facing aproblem potentially caused by DNS resolution, it may help to try changing Go DNS resolution algorithm.


Solution


If you experience timeout error message when trying to register or validate AWS, Azure or other secrets in Kublr-in-a-Box UI, try recreating the container with a additional parameters -e GODEBUG=netdns=cgo instructing Go processes to use glibc-based DNS resolution.


So for example starting a container for Kublr-in-a-Box 1.22.3 is as follows:


sudo docker run --name kublr -d --restart=unless-stopped \
    -e GODEBUG=netdns=cgo \
    -p 9080:9080 \
    kublr/kublr:1.22.3