Skip to content

How to upgrade the Istio ControlPlane Package chart💣

  1. Checkout the branch that renovate created. This branch will have the image tag updates and typically some other necessary version changes that you will want. You can either work off of this branch or branch off of it.
  2. Update the dashboards via kpt. You should be able to run kpt pkg update chart/dashboards@<version> --strategy force-delete-replace (ex: kpt pkg update chart/dashboards@1.14.3 --strategy force-delete-replace).
  3. Update version references for the Chart. version should be <version>-bb.0 (ex: 1.14.3-bb.0) and appVersion should be <version> (ex: 1.14.3). Also validate that the BB annotation for the main Istio version is updated (leave the Tetrate version as-is unless you are updating those images).
  4. Add a changelog entry for the update. At minimum mention updating the image versions.
  5. Update the readme following the steps in Gluon.
  6. Open MR (or check the one that Renovate created for you) and validate that the pipeline is successful. Also follow the testing steps below for some manual confirmations.

Testing new Istio ControlPlane version💣

Generally the controlplane update should be tested alongside the new operator version. Follow the steps below for testing both. You should perform these steps on both a clean install and an upgrade from BB master.

  1. Update your values overrides to point to your branches for both the operator and controlplane:
    istio:
      git:
        tag: null
        branch: "renovate/ironbank" # Or your branch
    istiooperator:
      git:
        tag: null
        branch: "renovate/ironbank" # Or your branch
    
  2. Also deploy Jaeger with SSO enabled (use the dev values), Kiali, and Monitoring. These packages both interact with Istio in ways that are helpful to test.
  3. Navigate to Jaeger (tracing.bigbang.dev) and validate you are prompted to login with SSO and that the login is successful. This verifies that Authservice is working as an Istio extension.
  4. Navigate to Prometheus and validate that the Istio targets are up (under Status -> Targets). There should be targets for istio-envoy and istio-pilot.
  5. Navigate to Grafana and validate that the Istio dashboards are present and show some data. You may need to alter filters to pick a workload that has information showing.
  6. Navigate to Kiali and validate that data is showing. You can run through the checks done during release testing if you are unsure what to look for. Since Kiali interfaces with Istio for most of its information it is good to validate compatibility/functionality.

Last update: 2023-04-14 by Micah Nagel