Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

This is default helm chart for all jobs running on the ehealth-platform.

Istio specific notes

If you deploy a job in an Istio enabled namespace you have two options to make it work correctly.

Solution 1 (recommended): Use envoy-preflight

Using envoy-preflight ensures that the job does not start until the Istio sidecar is ready, and that the sidecar shuts down when the applications exits.

If your Dockerfile for your application looks like this pseudo code:

FROM .. your existing Dockerfile 
ENTRYPOINT ["existing"]

Then update it to this:

FROM golang:1.13 as envoy-preflight-builder
WORKDIR /go/src
RUN mkdir monzo
WORKDIR /go/src/monzo
RUN git clone https://github.com/monzo/envoy-preflight
WORKDIR /go/src/monzo/envoy-preflight
RUN git reset --hard $ad8dc56e19eeb06e556d2687d5b6f97407b31352
RUN CGO_ENABLED=0 go build && \
    chmod +x envoy-preflight
    
FROM .. your existing Dockerfile 
# Copy envoy-preflight
COPY --from=envoy-preflight-builder /go/src/monzo/envoy-preflight/envoy-preflight /usr/local/bin/envoy-preflight
ENTRYPOINT ["envoy-preflight", "existing"]

And ensure that job is deployed using these Helm values for the job Helm chart:

job:
  overrideIstioInjection: false
environment:
  ENVOY_ADMIN_API: http://localhost:15000
  ENVOY_KILL_API: http://localhost:15020/quitquitquit
  ALWAYS_KILL_ENVOY: true

Solution 2: Disable Istio sidecar injection

Deploy using these Helm values for the job Helm chart:

job:
  overrideIstioInjection: true

This option is not available for jobs that communicate with other services on the platform, as the job itself would need to establish mTLS communication with the other service.

  • No labels