Skip to content
This repository has been archived by the owner on Jan 8, 2024. It is now read-only.

Document update procedure from v2.1.1-beta.2 to v2.2-beta.2 #645

Open
3 tasks
wagmarcel opened this issue Jun 17, 2022 · 4 comments
Open
3 tasks

Document update procedure from v2.1.1-beta.2 to v2.2-beta.2 #645

wagmarcel opened this issue Jun 17, 2022 · 4 comments
Assignees

Comments

@wagmarcel
Copy link
Member

Document upgrades of operators

  • minio
  • cert-manager (how to incremental upgrade from v0.16-v1.7 with cmctl)
  • k8ssandra

Document in issue + readthedocs

@MericFeyz
Copy link
Collaborator

MericFeyz commented Jun 24, 2022

Minio:

Operator's installation process has been changed, now it is installed as a kubectl plugin through the KREW tool. The minio deployment chart and it's corresponding values in the values.yaml file has been updated to work with the Kubernetes 1.22. During the upgrade in case the two access keys are overwritten, the previous keys should be stored. The current keys of user and admin keys can be found under minio-user and oisp-creds-secret kubernetes secrets respectively.

@MericFeyz
Copy link
Collaborator

cert-manager:

cert-manager's version has been upgraded from v0.14 to v1.7.1 and the new version includes breaking changes that makes a hands off and one step upgrade impossible, therefore the upgrade must be done incrementally. First the cert-manager should be upgraded to v1.0 following the upgrade guide provided by the cert manager. Then the deprecated CRDs must be migrated to the actual API version using the cmctl tool. After that the operator is ready for the OISP upgrade.

@MericFeyz
Copy link
Collaborator

Cassandra:

Cassandra operator has been changed into the "K8ssandra" for compatibility purposes with the Kubernetes 1.22. However since a new operator is deployed as part of the upgrade, the outdated Cassandra operator won't be removed automatically by Helm and there is a possibility of the database getting corrupted if both Cassandra operators are active at the same time. To elevate this problem, the following should be done:

  • First, a backup of the Postgres database must be done using the make backup-db TMPDIR=<a temporary folder you have created> NAMESPACE=<namespace of the oisp cluster>, the database file should be in the folder given as a parameter.
  • Then the upgrade shall be done by first setting docker credentials envs DOCKERUSER and DOCKERPASS and then running the upgrade command make upgrade-oisp DOCKER_TAG=v2.2-beta.1.
  • After the upgrade old CRDs of Cassandra must be deleted by the command kubectl -n cassandra delete cassandradatacenters.cassandra.datastax.com --alll
  • Finally the database should be restored with the make restore-db TMPDIR=<temporary folder from before> NAMESPACE=<namespace of the oisp cluster> command.

Afterwards the cluster should be up and running in short time.

@oguzcankirmemis
Copy link
Member

oguzcankirmemis commented Jul 1, 2022

I would suggest adding a config backup setup at the start, where all secrets/configmaps we create (especially the ones we overwrite in values.yaml) are backed up. One can never be too safe.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants