Since Emissary-ingress's configuration is entirely stored in Kubernetes resources, upgrading between minor versions is straightforward.
Emissary-ingress 3.4 has been upgraded from Envoy 1.23 to Envoy 1.24.1 which removed support for the
LightStep tracing driver. The team at LightStep and the maintainers of Envoy-Proxy recommend that users instead leverage the OpenTelemetry Collector to send tracing information to LightStep. We have written a guide which can be found here Distributed Tracing with OpenTelemetry and Lightstep that outlines how to set this up. It is important that you follow this upgrade path prior to upgrading or you will drop tracing data.
Migration is a two-step process:
Install new CRDs.
After reviewing the changes in 3.x and confirming that you are ready to upgrade, the process is the same as upgrading minor versions in previous version of Emissary-ingress and does not require the complex migration steps that the migration from 1.x tto 2.x required.
Before installing Emissary-ingress 3.4.0 itself, you need to update the CRDs in your cluster. This is mandatory during any upgrade of Emissary-ingress.
Install Emissary-ingress 3.4.0.
After installing the new CRDs, use Helm to install Emissary-ingress 3.4.0. Start by making sure that your
datawireHelm repo is set correctly:
Then, update your Emissary-ingress installation in the
emissarynamespace. If necessary for your installation (e.g. if you were running with
AMBASSADOR_SINGLE_NAMESPACEset), you can choose a different namespace.