Skip to content

Issue related to the External-IP and loadBalancer in a manged Kubernetes deployment #3

@drvgautam

Description

@drvgautam

Dear Alexandre,

I was attempting to deploy the ABCDesktop (kubernetes-version-3.0) for testing my setup with a few of my own desktop applications. Everything worked fine when tested locally in my Ubuntu (22.04) machine. I then thought to deploy the setup in a DigitalOcean Kubernetes (DOK) cluster (I currently have a 3 nodes cluster). Because the DOK is a managed Kubernetes, so it was straight forward to use the context and deploy using the install.sh script (https://raw.githubusercontent.com/abcdesktopio/conf/main/kubernetes/install.sh), just for the testing purpose. To access the deployed ABCDesktop from an external IP, I changed the NGINX service type from nodePort to loadBalancer in the abcdesktop.yaml, as below. Saved and applied the chnages using 'kubectl apply -f abcdesktop.yaml'. I can now access the abcdesktop from 'http://<EXTERNAL-IP>', but I am unable to sign-in using login usernames and passwords from the OLDAP test samples. 'Sign-in Anonymously also fails. I get the error message:'undefined'. Any suggestions as to what I may be doing wrong here would be very much appreciated. Following are some of the details.

changes in the nginx service block within the abcdesktop.yaml

kind: Service
apiVersion: v1
metadata:
  name: nginx
  namespace: abcdesktop
spec:
  type: LoadBalancer
  selector:
    run: nginx-od
  ports:
  - protocol: TCP
    port: 80
    targetPort: 80
    nodePort: 30443
    name: http

some additional information about the status of services and nodes in my deployment.

$kubectl get service -w

NAME         TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)   AGE
kubernetes   ClusterIP   xx.yyy.w.z   <none>        443/TCP   50d

$kubectl get nodes -o=wide

 NAME                             STATUS   ROLES    AGE   VERSION   INTERNAL-IP      EXTERNAL-IP       OS-IMAGE                         KERNEL-VERSION           CONTAINER-RUNTIME
        mkp-kubernetes-node-pool-q2r66   Ready    <none>   50d   v1.25.4   xx.yyy.www.zzz   lll.mmm.nnn.ppp   Debian GNU/Linux 11 (bullseye)   5.18.0-0.deb11.4-amd64   containerd://1.4.13
        mkp-kubernetes-node-pool-q2r6l   Ready    <none>   50d   v1.25.4   sss.ppp.uuu.vvv   iii.jjj.kkk.lll    Debian GNU/Linux 11 (bullseye)   5.18.0-0.deb11.4-amd64   containerd://1.4.13
        mkp-kubernetes-node-pool-q2r6t   Ready    <none>   50d   v1.25.4   aaa.bbb.ccc.ddd   uuu.vvv.www.kkk    Debian GNU/Linux 11 (bullseye)   5.18.0-0.deb11.4-amd64   containerd://1.4.13

$kubectl get services -n abcdesktop

NAME        TYPE           CLUSTER-IP       EXTERNAL-IP       PORT(S)           AGE
desktop     ClusterIP      None             <none>            <none>            9h
memcached   ClusterIP      xx.yyy.www.zz    <none>            11211/TCP         9h
mongodb     ClusterIP      aa.bbb.cc.dd     <none>            27017/TCP         9h
nginx       LoadBalancer   ll.jjj.kkk.mmm   <EXTERAL-IP>      80:30443/TCP      9h
openldap    ClusterIP      uu.vvv.www.zzz   <none>            389/TCP,636/TCP   9h
pyos        ClusterIP      ss.ooo.pp.kk    <none>             8000/TCP          9h
speedtest   ClusterIP      ii.jjj.kkk.ll    <none>            80/TCP            9h

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions