Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Using IP address instead of .nip.io by setting isHostBased = false doesnt work #13647

Closed
mpxp opened this issue Jun 30, 2019 · 7 comments
Closed
Assignees
Labels
kind/bug Outline of a bug - must adhere to the bug report template. severity/P2 Has a minor but important impact to the usage or development of the system.
Milestone

Comments

@mpxp
Copy link

mpxp commented Jun 30, 2019

Description

Trying to run che-server on minikube using helm.
As the URLs ending with nip.io is blocked by our network, using IP address to access the che-server running on AWS ubuntu machine and opening the dashboard doesnt seem to work.
I would like to see examples or documentation regarding this.

Reproduction Steps

Here is how che-server is run:
helm upgrade --install che --force --namespace che --set isHostBased=false --set cheImage=eclipse/che-server:nightly ./

http://che-che.<ip-address>.nip.io does not work.
http://<ipaddress>:<portno> also doesnt seem to work.

OS and version:
Ubuntu 18
Minikube

Diagnostics:
Here is the output from helm upgrade:

$ helm upgrade --install che --force --namespace che --set isHostBased=false --set cheImage=eclipse/che-server:nightly ./
Release "che" does not exist. Installing it now.
NAME: che
LAST DEPLOYED: Sun Jun 30 19:08:04 2019
NAMESPACE: che
STATUS: DEPLOYED

RESOURCES:
==> v1/ConfigMap
NAME DATA AGE
che 52 2s

==> v1/PersistentVolumeClaim
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
che-data-volume Pending hostpath 2s

==> v1/Pod(related)
NAME READY STATUS RESTARTS AGE
che-654b786456-sdkvx 0/1 Init:0/1 0 1s

==> v1/Service
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
che-host ClusterIP 9.55.133.185 8080/TCP,8087/TCP 2s

==> v1/ServiceAccount
NAME SECRETS AGE
che 1 2s

==> v1beta1/ClusterRoleBinding
NAME AGE
che-che-clusterrole-binding 2s

==> v1beta1/Deployment
NAME READY UP-TO-DATE AVAILABLE AGE
che 0/1 1 0 2s

==> v1beta1/Ingress
NAME HOSTS ADDRESS PORTS AGE
che-ingress che-che.192.168.99.100.nip.io 80 2s

@jglick
Copy link

jglick commented Sep 17, 2019

Had a similar problem using Microk8s on Ubuntu. sudo systemd-resolve --status confirms that 192.168.*.* are blocked for DNSSEC NTA. So I could only work around by adding to /etc/hosts

192.168.86.25 che-che.192.168.86.25.nip.io devfile-registry-che.192.168.86.25.nip.io keycloak-che.192.168.86.25.nip.io plugin-registry-che.192.168.86.25.nip.io

Not sure why Che is not simply using 127.0.0.1, which works fine with nip.io and Microk8s ingress.

@gorkem gorkem added kind/bug Outline of a bug - must adhere to the bug report template. team/platform labels Sep 18, 2019
@sleshchenko
Copy link
Member

cc @metlos

@skabashnyuk skabashnyuk added the severity/P2 Has a minor but important impact to the usage or development of the system. label Sep 19, 2019
@skabashnyuk skabashnyuk added this to the 7.3.0 milestone Sep 24, 2019
@sparkoo sparkoo self-assigned this Oct 2, 2019
@sparkoo
Copy link
Member

sparkoo commented Oct 2, 2019

@mpxp I can see 2 issues:

1] I can see that you have ingress host che-che.192.168.99.100.nip.io, which is default hardcoded ip, but almost certainly wrong one. You'll have to set global.ingressDomain to minikube's ip --set global.ingressDomain=$(minikube ip).nip.io. Now http://che-che.<minikube-ip>.nip.io should work.

2] isHostBased is no longer valid option. If you want to use IP address instead .nip.io, you'll have to set serverStrategy to default-host --set global.serverStrategy=default-host. With this option and --set global.ingressDomain=$(minikube ip), the http://<minikube-ip> should work.

@sparkoo
Copy link
Member

sparkoo commented Oct 14, 2019

I've filled 3 issues.
1] #14881 to fix helm deployment of registries for default-host. This can be workarounded by setting registries url to some registries instances (e.g. deploying them manually).
2] #14883 to fix loading of web resources. This is not a critical issue. Workspace is working in general. Some images or styles are not loaded. It affect UX.
3] #14886 to not deploy Ingress for Postgres service. This does not affect functionality at all.

Other than that, I didn't find any issues to work with default-host. I've tested both single and multi user mode.

I was using this helm command to deploy:

helm upgrade --install che --force --namespace che \
--set global.ingressDomain=$(minikube ip) --set global.serverStrategy=default-host --set cheImage=eclipse/che-server:nightly \
--set cheDevfileRegistry.deploy=false --set che.workspace.devfileRegistryUrl=${DEVFILE_REGISTRY_URL} \
--set chePluginRegistry.deploy=false --set che.workspace.pluginRegistryUrl=${PLUGIN_REGISTRY_URL} \
/deploy/kubernetes/helm/che/

@sparkoo
Copy link
Member

sparkoo commented Oct 14, 2019

@skabashnyuk I've answered that running Che with only minikube IP is possible #13647 (comment). It has some issues and I've created separate issues #13647 (comment) for that. Do you think we can close this one?

@skabashnyuk
Copy link
Contributor

I think we did our part of the investigation, however, I would keep this issue open to see what other participants are thinking about

@sparkoo
Copy link
Member

sparkoo commented Oct 15, 2019

I'm not sure there are any other active participants.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug Outline of a bug - must adhere to the bug report template. severity/P2 Has a minor but important impact to the usage or development of the system.
Projects
None yet
Development

No branches or pull requests

6 participants