question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Route DNS hostnames not routeable in airgap scenario so che fails to start

See original GitHub issue

Describe the bug

Depending on the network topology or DNS servers, a fully disconnected installation in some instances will not be able to resolve route URLs inside the cluster. This manifests in an issue with the Che server pod trying to retrieve the openid configuration at $PUBLIC_KEYCLOAK_URL/auth/realms/che/.well-known/openid-configuration.

I don’t know exactly how OpenShift does DNS in different environments. I would think that in-cluster traffic would be able to resolve a route properly, but it does not appear to be the case in all scenarios.

curl $KEYCLOAK_ROUTE_URL/auth/realms/che/.well-known/openid-configuration times out, but

curl keycloak.namespace.svc:8080/auth/realms/che/.well-known/openid-configuration succeeds

Che version

  • latest
  • nightly
  • other: please specify

Steps to reproduce

Start a Che installation in a disconnected environment.

Expected behavior

Runtime

  • kubernetes (include output of kubectl version)
  • Openshift (include output of oc version)
  • minikube (include output of minikube version and kubectl version)
  • minishift (include output of minishift version and oc version)
  • docker-desktop + K8S (include output of docker version and kubectl version)
  • other: (please specify)

Screenshots

Installation method

  • chectl
  • che-operator 7.4.0
  • minishift-addon
  • I don’t know

Environment

  • my computer
    • Windows
    • Linux
    • macOS
  • Cloud
    • Amazon
    • Azure
    • GCE
    • other (please specify)
  • other: please specify

Additional context

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Comments:13 (11 by maintainers)

github_iconTop GitHub Comments

2reactions
ironcladloucommented, Nov 14, 2019

By default, on AWS, GCP, and Azure, if cluster DNS zone configuration was provided to the OpenShift installer, OpenShift will manage wildcard DNS records for ingress in the configured zones (assuming ingress is being exposed by a LoadBalancer Service, which is the default on those platforms.)

On other platforms, or if cluster DNS zone configuration is omitted, wildcard DNS records for ingress are not managed and it’s up to the cluster owner to configure DNS to expose ingress (if desired.)

I hope that helps clarify some of the DNS management behavior. I can provide more specific details if someone can help me understand how the problematic clusters are being created (e.g. through the OpenShift installer IPI flow, UPI, etc.)

2reactions
davidfestalcommented, Nov 15, 2019

@rhopp @tomgeorge Would it be possible to check with OpenShift teams whether it is expected that typical airgaped OpenShift 4.2 installations would not allow PODs to access external routes ? That seems quite a very hard restriction that would probably make Che fail anyway.

Read more comments on GitHub >

github_iconTop Results From Across the Web

DNS/ENUM Guidelines for Service Providers & GRX/IPX ...
The Resolver (for example an SGSN trying to find out the IP address of a GGSN) sends a query for the hostname (for...
Read more >
DNS Cache Snooping - UNC Computer Science
This research paper presents an overview on the technique known as DNS cache snooping. Firstly, a brief introduction to DNS is made followed...
Read more >
Internal Server Names and IP Addresses Requirements
A server connected to the public Internet will typically have a name in the Internet Domain Name System. (DNS) that allows its address...
Read more >
Installing in an air-gapped environment with a portable device
In production, it is common to have a cluster that does not have internet ... for portable compute, portable storage, and bastion hosts:...
Read more >
Installation & Configuration Guide - TACACS.net
After installing the TACACS.net TACACS+ server, it will start by default. ... authentication response to a TACACS+ request, it will not fail over...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found