supertubes cluster update 🔗︎

Update Kafka cluster.

Synopsis 🔗︎

Update Kafka cluster based on JSON or YAML stdin or file cluster config. The specified cluster config must include readonly and cluster wide config also Cruise Control config.

supertubes cluster update [flags]

Examples 🔗︎


# Update Kafka cluster from cluster config file
$ supertubes cluster update -f <path-to-cluster-config-file> -n my-namespace --kafka-cluster my-cluster -c <path-to-kubeconfig-file>

# Update Kafka cluster from cluster config file and wait for cluster to become active
$ supertubes cluster update -f <path-to-cluster-config-file> -n my-namespace --kafka-cluster my-cluster -c <path-to-kubeconfig-file> -w

# Update Kafka cluster from cluster from stdin and wait for cluster to become active
$ cat <path-to-cluster-config-file> | supertubes cluster create -n my-namespace --kafka-cluster my-cluster -c <path-to-kubeconfig-file> -f- -w

# Update only the Kafka image of the cluster and wait for cluster to become active
$ supertubes cluster update -n my-namespace --kafka-cluster my-cluster --kafka-image "banzaicloud/kafka:2.13-2.4.1" -c <path-to-kubeconfig-file> -w

# Update Kafka cluster in order to deploy Prometheus service monitor for monitoring Kafka cluster and Cruise Control
$ supertubes cluster update -n my-namespace --deploy-service-monitor=true -c <path-to-kubeconfig-file> --kafka-cluster my-cluster

# Update Kafka cluster in order to deploy Prometheus service monitor for monitoring Kafka cluster and Cruise Control and deploy jmx metric based Grafana dashboard
$ supertubes cluster update -n my-namespace -c <path-to-kubeconfig-file> ----kafka-cluster my-cluster --deploy-service-monitor=true --deploy-basic-grafana-dashboard=true

# Update Kafka cluster in order to deploy Prometheus service monitor for monitoring Kafka cluster and Cruise Control and deploy jmx metric based Grafana dashboard and Consumer related metrics dashboard
$ supertubes cluster update -n my-namespace -c <path-to-kubeconfig-file> ----kafka-cluster my-cluster --deploy-service-monitor=true --deploy-basic-grafana-dashboard=true --consumer-metrics-grafana-dashbord=true

# Patch Kafka cluster config
$ supertubes cluster update -n my-namespace --kafka-cluster my-cluster -c <path-to-kubeconfig-file> -w -f -<<EOF
apiVersion: kafka.banzaicloud.io/v1beta1
kind: KafkaCluster
spec:
  headlessServiceEnabled: false
EOF
		

Options 🔗︎

  -f, --cluster-config-file string          Config file that contains the entire Kafka cluster config including Cruise Control config to update the cluster with.
      --consumer-metrics-grafana-dashbord   Deploy Grafana dashboard for consumer metrics. This flag has affect only if grafana is present in the Kubernetes cluster.
      --deploy-basic-grafana-dashboard      Deploy basic Grafana dashboard based on JMX metrics. This flag has affect only if grafana is present in the Kubernetes cluster.
      --deploy-service-monitor              Deploy Prometheus service monitors for Kafka cluster and Cruise Control. This flag works only if prometheus-operator is present in the Kubernetes cluster.
      --grafana-label string                The label by which Grafana identifies config maps to autoload Grafana dashboards from. (default "app.kubernetes.io/supertubes_managed_grafana_dashboard") (default "app.kubernetes.io/supertubes_managed_grafana_dashboard")
  -h, --help                                help for update
  -i, --interval int                        Interval in seconds for polling Kafka cluster status. (default 5)
      --kafka-cluster string                Name of the Kafka cluster to be updated.
      --kafka-image string                  The new image (repository/name:tag) to update Kafka brokers to.
  -n, --namespace string                    Namespace the Kafka cluster to be updated belongs to. (default "kafka")
  -t, --timeout int                         Timeout in seconds to wait for the Kafka cluster update operation to complete. (default 150)
  -w, --wait                                Wait for Kafka cluster update operation to complete.

Options inherited from parent commands 🔗︎

      --accept-license                  Accept the license: https://banzaicloud.com/docs/supertubes/evaluation-license
      --color                           use colors on non-tty outputs (default true)
      --context string                  name of the kubeconfig context to use
      --formatting.force-color          force color even when non in a terminal
      --interactive                     ask questions interactively even if stdin or stdout is non-tty
  -c, --kubeconfig string               path to the kubeconfig file to use for CLI requests
      --non-interactive                 never ask questions interactively
  -o, --output string                   output format (table|yaml|json) (default "table")
      --persistent-config-file string   Supertubes persistent config file to use instead of the default at ~/.banzai/supertubes/
  -v, --verbose                         turn on debug logging

SEE ALSO 🔗︎