skills/kubeblocks-create-cluster/SKILL.md
Create a database cluster on KubeBlocks using a generic Cluster CR template. This skill is only the fallback for engines without a dedicated addon-* entry skill. Do not use it for MySQL, PostgreSQL, Redis, MongoDB, or Kafka.
npx skillsauth add apecloud/kubeblocks-skills kubeblocks-create-clusterInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
This skill is the other-addons fallback.
Use it only when:
addon-* entry skillDo not use this skill for:
If rollout readiness is still unknown, stop and run kubeblocks-preflight first.
- [ ] Step 1: Confirm this is truly an other-addons case
- [ ] Step 2: Gather clusterDef / topology / component names from the environment
- [ ] Step 3: Fill the generic Cluster template
- [ ] Step 4: Validate and apply
- [ ] Step 5: Verify the cluster becomes Running
Before using the generic path, answer both questions:
addon-* skill in this repository?If the answer to either question is "no", stop and route correctly first.
Use the live cluster to discover the needed values:
kubectl get clusterdefinitions
kubectl get componentversions
Record:
clusterDeftopologyserviceVersionstorageClassNameThis is a placeholder template for engines that do not have a dedicated entry skill.
apiVersion: apps.kubeblocks.io/v1
kind: Cluster
metadata:
name: <cluster-name>
namespace: <namespace>
spec:
clusterDef: <clusterDef-from-environment>
topology: <topology-from-environment>
terminationPolicy: Delete
componentSpecs:
- name: <component-name>
serviceVersion: "<serviceVersion>"
replicas: <replica-count>
resources:
requests:
cpu: "<cpu-request>"
memory: "<memory-request>"
limits:
cpu: "<cpu-limit>"
memory: "<memory-limit>"
volumeClaimTemplates:
- name: data
spec:
accessModes: [ReadWriteOnce]
storageClassName: <storageClassName-from-preflight>
resources:
requests:
storage: <storage-size>
This template is intentionally generic. It does not try to encode the topology advice for high-frequency engines.
kubectl apply -f cluster.yaml --dry-run=server
kubectl apply -f cluster.yaml
kubectl get cluster -n <namespace> <cluster-name> -w
kubectl get pods -n <namespace> -l app.kubernetes.io/instance=<cluster-name>
This path is complete only when:
other-addonsRunningFor connection examples and deep engine-specific operations, rely on the relevant addon skill or official addon docs instead of expanding this fallback into another high-frequency entry path.
devops
Expand persistent volume storage for KubeBlocks database clusters via OpsRequest. Requires the StorageClass to support volume expansion (allowVolumeExpansion=true). Use when the user needs more disk space, wants to increase storage, expand volumes, or resize PVCs. NOT for changing CPU/memory (see vertical-scaling) or adding more replicas (see horizontal-scaling). Note that volume shrinking is not supported by Kubernetes.
data-ai
Scale CPU and memory resources for KubeBlocks database clusters via OpsRequest (vertical scaling). Supports in-place updates when the feature gate is enabled. Use when the user wants to change, increase, decrease, resize, or adjust CPU or memory resources of a database cluster. NOT for adding/removing replicas or shards (see horizontal-scaling) or expanding disk storage (see volume-expansion).
data-ai
Upgrade the KubeBlocks operator itself via Helm. Covers update operator, upgrade to v1.0, update kubeblocks version, and CRD updates. Use when the user wants to upgrade KubeBlocks, update the operator, or upgrade to a new KubeBlocks release. NOT for upgrading database engine versions (see minor-version-upgrade).
development
Diagnostic guide for KubeBlocks-managed database clusters. Use when the user reports troubleshoot, debug, diagnose, not working, error, failed, stuck, CrashLoopBackOff, cluster exception, or similar problems with their database cluster. This skill guides the agent through diagnostic steps — it does NOT perform actions.