To upgrade to sn-operator under the Helm installation, follow below steps.
- Uninstall the
pulsar-operators chart release
helm uninstall pulsar-operator -n sn-system
Do not clean up the ZooKeeperCluster, BookKeeperCluster, PulsarBroker, PulsarProxy CRDs after uninstalling the pulsar-operators pods, removing CRDs will trigger to delete the existing provisioned Pulsar cluster.
cat <<EOF | kubectl apply -f -
apiVersion: v1
kind: Secret
metadata:
# This label is a required field for the sn-operator to detect the license.
labels:
cloud.streamnative.io/type: "license"
name: sn-license
namespace: sn-system
type: Opaque
stringData:
license: "Your license token"
EOF
If you do not have any license, you can contact StreamNative to apply for a free trial.
- Apply the StreamNative Operator CRDs
kubectl apply -f https://raw.githubusercontent.com/streamnative/private-cloud/main/charts/sn-operator/crds/bookkeeper.streamnative.io_bookkeeperclusters.yaml --server-side --force-conflicts
kubectl apply -f https://raw.githubusercontent.com/streamnative/private-cloud/main/charts/sn-operator/crds/k8s.streamnative.io_apikeys.yaml --server-side --force-conflicts
kubectl apply -f https://raw.githubusercontent.com/streamnative/private-cloud/main/charts/sn-operator/crds/k8s.streamnative.io_connectorcatalogs.yaml --server-side --force-conflicts
kubectl apply -f https://raw.githubusercontent.com/streamnative/private-cloud/main/charts/sn-operator/crds/k8s.streamnative.io_consoles.yaml --server-side --force-conflicts
kubectl apply -f https://raw.githubusercontent.com/streamnative/private-cloud/main/charts/sn-operator/crds/k8s.streamnative.io_oxiaclusters.yaml --server-side --force-conflicts
kubectl apply -f https://raw.githubusercontent.com/streamnative/private-cloud/main/charts/sn-operator/crds/k8s.streamnative.io_pfsqlclusters.yaml --server-side --force-conflicts
kubectl apply -f https://raw.githubusercontent.com/streamnative/private-cloud/main/charts/sn-operator/crds/k8s.streamnative.io_pulsarcoordinators.yaml --server-side --force-conflicts
kubectl apply -f https://raw.githubusercontent.com/streamnative/private-cloud/main/charts/sn-operator/crds/pulsar.streamnative.io_pulsarbrokers.yaml --server-side --force-conflicts
kubectl apply -f https://raw.githubusercontent.com/streamnative/private-cloud/main/charts/sn-operator/crds/pulsar.streamnative.io_pulsarproxies.yaml --server-side --force-conflicts
kubectl apply -f https://raw.githubusercontent.com/streamnative/private-cloud/main/charts/sn-operator/crds/zookeeper.streamnative.io_zookeeperclusters.yaml --server-side --force-conflicts
kubectl apply -f https://raw.githubusercontent.com/streamnative/private-cloud/refs/heads/main/charts/sn-operator/crds/k8s.streamnative.io_kafkaconnects.yaml --server-side
kubectl apply -f https://raw.githubusercontent.com/streamnative/private-cloud/refs/heads/main/charts/sn-operator/crds/k8s.streamnative.io_oxianamespaces.yaml --server-side
kubectl apply -f https://raw.githubusercontent.com/streamnative/private-cloud/refs/heads/main/charts/sn-operator/crds/k8s.streamnative.io_unilinks.yaml --server-side
kubectl apply -f https://raw.githubusercontent.com/streamnative/private-cloud/refs/heads/main/charts/sn-operator/crds/k8s.streamnative.io_unilinkschemas.yaml --server-side
kubectl apply -f https://raw.githubusercontent.com/streamnative/private-cloud/refs/heads/main/charts/sn-operator/crds/pulsar.streamnative.io_pulsarbrokerrevisions.yaml --server-side
kubectl apply -f https://raw.githubusercontent.com/streamnative/private-cloud/refs/heads/main/charts/sn-operator/crds/k8s.streamnative.io_agentfunctions.yaml --server-side
kubectl apply -f https://raw.githubusercontent.com/streamnative/private-cloud/refs/heads/main/charts/sn-operator/crds/k8s.streamnative.io_mqttproxies.yaml --server-side
kubectl apply -f https://raw.githubusercontent.com/streamnative/private-cloud/refs/heads/main/charts/sn-operator/crds/k8s.streamnative.io_storagecatalogs.yaml --server-side
- Install the StreamNative Operator through Helm
helm install sn-operator streamnative/sn-operator -n sn-system
After the sn-operator pod get into running, sn-operator will take over the existing Pulsar cluster.