Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -153,7 +153,7 @@ kustomize: ## Download kustomize locally if necessary.
ENVTEST = $(GOBIN)/setup-envtest
.PHONY: envtest
envtest: ## Download envtest-setup locally if necessary.
$(call go-get-tool,$(ENVTEST),sigs.k8s.io/controller-runtime/tools/setup-envtest@latest)
$(call go-get-tool,$(ENVTEST),sigs.k8s.io/controller-runtime/tools/setup-envtest@v0.0.0-20240320141353-395cfc7486e6)

.PHONY: gen-api
gen-api:
Expand Down
32 changes: 28 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ as installing, scaling, upgrading etc.
- Support external clients outside the network of kubernetes to load data into StarRocks using STREAM LOAD
- Support automatic scaling for CN nodes based on CPU and memory usage
- Support mounting persistent volumes for StarRocks containers
- **Support PVC expansion for storage volumes without data loss** (New in v1.9.9+)

### Helm Chart Features

Expand Down Expand Up @@ -165,16 +166,39 @@ kubectl -n starrocks patch starrockscluster starrockscluster-sample --type='merg

### 6. Resize the StarRocks cluster

To resize, just patch the StarRocks cluster.
To resize, just patch the StarRocks cluster.

> [!IMPORTANT]
> [!IMPORTANT]
> Once you deploy with 3 FE nodes, you are in HA mode. Do not resize FE nodes below 3 since that will affect cluster quorum. This rule doesn't apply to CN nodes.

```console
kubectl -n starrocks patch starrockscluster starrockscluster-sample --type='merge' -p '{"spec":{"starRocksBeSpec":{"replicas":9}}}'
```

### 7. Delete/stop the StarRocks cluster
### 7. Expand storage volumes (PVC Expansion)

You can expand storage volumes for FE, BE, and CN components without data loss. The operator supports expanding PVC sizes by patching existing PVCs and recreating StatefulSets when necessary.

> [!IMPORTANT]
> - Storage sizes can only be **increased**, never decreased
> - Your storage class must support volume expansion (`allowVolumeExpansion: true`)
> - The expansion process preserves all data

Example of expanding FE metadata storage from 10Gi to 20Gi:

```console
kubectl -n starrocks patch starrockscluster starrockscluster-sample --type='merge' -p '{"spec":{"starRocksFeSpec":{"storageVolumes":[{"name":"fe-meta","storageSize":"20Gi","mountPath":"/opt/starrocks/fe/meta"}]}}}'
```

Example of expanding BE data storage from 100Gi to 200Gi:

```console
kubectl -n starrocks patch starrockscluster starrockscluster-sample --type='merge' -p '{"spec":{"starRocksBeSpec":{"storageVolumes":[{"name":"be-data","storageSize":"200Gi","mountPath":"/opt/starrocks/be/storage"}]}}}'
```

For detailed information about PVC expansion, see the [PVC Expansion How-To Guide](./doc/pvc_expansion_howto.md).

### 8. Delete/stop the StarRocks cluster

To delete/stop the StarRocks cluster, just execute the delete command.

Expand All @@ -186,7 +210,7 @@ or
kubectl delete starrockscluster starrockscluster-sample -n starrocks
```

### 8. Delete/stop the StarRocks Operator
### 9. Delete/stop the StarRocks Operator

To delete/stop the StarRocks Operate, just execute the delete command.

Expand Down
Loading
Loading