Uploaded image for project: 'Data Management'
  1. Data Management
  2. DM-12923

Adopt GKE Ingress resources for LTD Keeper

    XMLWordPrintable

    Details

      Description

      Replace the nginx-ssl-proxy currently being used for LTD Keeper with Kubernetes's native Ingress resource. This should simplify the deployment, and since it is managed by Google Cloud Platform, should have better security.

      Tutorial: https://cloud.google.com/kubernetes-engine/docs/tutorials/http-balancer

        Attachments

          Activity

          Hide
          jsick Jonathan Sick added a comment -

          I've learned that two factors are required to implement Ingress:

          • The backend service needs to be a NodePort type, different from the default ClusterIP type I was using before.
          • The backend needs to respond with a 200 status to a request on /. Turns out Keeper was not doing this initially because it was using the Flask SERVER_NAME variable that bound the application to respond only to requests with the full keeper.lsst.codes hostname, not the proxy's hostname. Simply removing the SERVER_NAME configuration altogether solves this problem.
          Show
          jsick Jonathan Sick added a comment - I've learned that two factors are required to implement Ingress: The backend service needs to be a NodePort type, different from the default ClusterIP type I was using before. The backend needs to respond with a 200 status to a request on / . Turns out Keeper was not doing this initially because it was using the Flask SERVER_NAME variable that bound the application to respond only to requests with the full keeper.lsst.codes hostname, not the proxy's hostname. Simply removing the SERVER_NAME configuration altogether solves this problem.
          Hide
          jsick Jonathan Sick added a comment -

          Released as v 1.7.0

          Show
          jsick Jonathan Sick added a comment - Released as v 1.7.0

            People

            Assignee:
            jsick Jonathan Sick
            Reporter:
            jsick Jonathan Sick
            Watchers:
            Jonathan Sick
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Jenkins

                No builds found.