1.22

Migration from v1.21

When upgrading to Kublr v1.22, it is recommended to first upgrade to v1.21.2. “Skip” upgrades (from 1.20, 1.19 etc, skipping 1.21) are not supported and may not work as expected.

It is recommended to use at least Kublr v1.22.1 as it includes a number of critical and important patches and fixes.

Kublr feature KubeDB operator reaches the end of support and cannot be installed on Kuberntes v1.22 or above. Databases used by Kublr components (MongoDB and PostgreSQL) are migrated to corresponding Bitnami helm charts.

It is recomended to backup KCP data using instructions on the solution portal before upgrading:

Other useful links:

(Kublr v1.22.0 only, fixed in Kublr v1.22.1) Important for BareMetall clusters to Kublr v1.22.0 migration

For Kublr Control Plane deployed on baremetal clusters it is recomended to skip Kublr 1.22.0 and migrate to Kublr v1.22.1 directly.

If for any reason it is necessary to use Kublr v1.22.0, it is recomended to modify the cluster specification for the controlplane feature as follows on update:

spec:
  featrures:
    controlplane:
      values:
        mongodb:
          initContainers:
          - name:  kublr-migrate-move-data-kubdb-to-bitnami
                image: 'docker.io/bitnami/bitnami-shell:10-debian-10-r197'
                command:
                - /bin/bash
                - -c
                - |
                  if [[ ! -d /bitnami/mongodb/data/db ]] ; then
                    mkdir -p /bitnami/mongodb/data/db
                    ls /bitnami/mongodb/ -I data | xargs -i mv /bitnami/mongodb/{} /bitnami/mongodb/data/db/
                  fi
           volumeMounts:
           - mountPath: /bitnami/mongodb
             name: datadir

Kublr feature Logging

Kublr feature logging uses new Elasticsearch index template named kublr-logs instead of the legacy kublr-index-template.

Upgrading to the new Kublr Logging version will override kublr predefined SearchGuard roles (kublr:*, sg_kublr_kibana_user, sg_curator, sg_hooks, sg_kublr_logstash, sg_monitor) and role mappings (kublr:*, sg_kublr_logstash, sg_kublr_kibana_user, sg_curator, sg_hooks, sg_monitor, SGS_KIBANA_SERVER, SGS_LOGSTASH, SGS_ALL_ACCESS, SGS_KIBANA_USER).

Kublr feature Ingress

Kublr feature Ingress 1.22.0-5 and above included in Kublr 1.22 only supports Kubernetes v1.19 and above, so for Kubernetes v1.18 clusters please use Kublr feature Ingress 1.21.2-24 (the version can be overridded in the custom cluster spec).

Ingress controller migrates to NGINX Ingress controller v1.1.0 (helm chart v4.0.10). If Ingress objects are used in the managed cluster (running Kubernetes older than v1.22), the cluster upgrade to Kubernetess v1.22 is planned, refer to the following documentation and Kublr release notes:

CertManager is upgraded to v1.5 (helm chart v1.5.3). To keep compatibility with older Kubernetes versions (down to 1.16), cert-manager 1.5 is now compatible with both Ingress v1 and v1beta1. Cert-manager will default to using v1 Ingress, and fall back to v1beta1 when v1 is not available. Please refer to Cert Manager release notes for more information:

Simultaneous Update of Kublr Control Plane

When upgrading to Kublr Control Plane 1.22.3 use the following components versions.

Features versions for Kublr v1.22.3 are:

  • kublrOperator: 1.22.3-13
  • ControlPlane: 1.22.3-72