github voyagermesh/voyager 3.2.0

Voyager 3.2.0 is here with lots of handy features and stability improvements. We recommend updating Voyager operator if you are using it currently. For new users, please follow the deployment guide here . For existing users, please first read the Actions Required section below.

Download Docker images via:

docker pull appscode/voyager:3.2.0
docker pull appscode/haproxy:1.7.6-3.2.0

Notable Changes

Actions Required:

Voyager 3.2.0 includes a number of breaking changes from previous versions for TCP load balancing. These changes are in the following general category:

  • TCP rules now takes secret name from spec.TLS section like HTTP rules. So, you must specify a host in TCP mode to use TLS.
  • Each spec.rule can have a single TCP rule instead of an array of TCP rules. If you have multiple TCP rules, just add top level spec.rules like HTTP.

If you are using Voyager currently, please follow the steps below to upgrade:

Voyager binary now includes a check command that can be used to validate Ingress. Download the pre-built binary from Github release page. Now, run the command below to validate existing Ingress objects.

$ voyager check --cloud-provider=minikube --v=3

If everything is valid, then you can just update the Voyager opreator image tag to upgrade. If the above command returns a validation error, please follow the steps below to manually upgrade:

  1. Delete the deployment and service used for Voyager operator.

    kubectl delete deployment voyager-operator --namespace=kube-system
    kubectl delete service voyager-operator  --namespace=kube-system
    
    1. Now, wait several seconds for Voyager to stop running. Run kubectl get pods --namespace=kube-system to confirm that Voyager operator pod(s) have stopped running.
    2. Get all your AppsCode Ingress objects.
      sh kubectl get ingress.voyager.appscode.com --all-namespaces -o yaml > data.yaml
  2. Delete the old Ingress objects from all namespaces one by one. Please make sure you exported the existing Ingress correctly in Step 3.

    kubectl delete ingress.voyager.appscode.com --all --cascade=false
    
  3. Update your Ingress objects in data.yaml to fix the TCP rules.

  4. Recreate your new Ingress.

    kubectl create -f data.yaml
    
    1. Now install the Voyager 3.2.0 operator following the instructions here.
      What's Next:
      This is the last feature release that supports Kubernetes 1.5 and 1.6. Next version of Voyager will migrate to CRDs and support Kubernetes 1.7+ .
latest releases: v13.0.0-beta.1, v13.0.0-beta.0, v12.0.0...
3 years ago