Skip to content

Commit b06ae77

Browse files
committed
save
1 parent 36ff2fe commit b06ae77

File tree

1 file changed

+95
-0
lines changed

1 file changed

+95
-0
lines changed

cloud/project-byoc.mdx

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,101 @@ When you run the command `rwc byoc apply --name xxx`, it will deploy some resour
2626

2727
Once the cluster is successfully created, you can manage it through the portal just like hosted clusters.
2828

29+
## Configure custom settings
30+
31+
RisingWave supports several custom settings for BYOC deployments. To use this feature, you need to create a configuration file containing the custom settings. These settings can be applied when creating a new BYOC environment or updating an existing one.
32+
33+
Below are supported custom settings:
34+
35+
1. Container security context that applies to all RisingWave namespaces, including:
36+
* `cloudagent` (hosting the agent service for Kubernetes operation delegation)
37+
* `rwproxy` (hosting psql proxy for RisingWave clusters)
38+
* `risingwave-operator-system` (hosting RisingWave operator managing the RisingWave cluster CRD)
39+
* `rwc-*` (namespaces hosting RisingWave clusters)
40+
41+
For more information, please see [Security context](https://pkg.go.dev/k8s.io/api/core/v1#SecurityContext).
42+
43+
2. Namespace labels to enforce Pod Security Standard for all namespaces mentioned above.
44+
45+
For more information, please see [Pod Security Admission labels for namespaces](https://kubernetes.io/docs/concepts/security/pod-security-admission/#pod-security-admission-labels-for-namespaces).
46+
47+
3. Tags for Cloud vendor resources managed by RisingWave.
48+
49+
4. AWS custom EKS AMI version for the EKS nodes.
50+
51+
### Create a configuration file
52+
53+
1. Create a file at path `BYOC_CONFIG` with the custom settings mentioned above:
54+
55+
```yaml
56+
container_security_context:
57+
allowPrivilegeEscalation: false
58+
capabilities:
59+
drop:
60+
- ALL
61+
readOnlyRootFilesystem: true
62+
runAsNonRoot: true
63+
runAsUser: 65521
64+
seccompProfile:
65+
type: RuntimeDefault
66+
pod_security_admission_labels:
67+
pod-security.kubernetes.io/enforce: restricted
68+
extra_tags:
69+
foo: bar
70+
aws_settings:
71+
eks_node_ami_release_version: 1.32.0-20241225
72+
```
73+
74+
2. Save the file path `$BYOC_CONFIG`, as you will use it in the later steps.
75+
76+
77+
### Apply to a BYOC environment
78+
79+
You may either create a new BYOC environment or update your existing one to apply the custom settings.
80+
81+
82+
83+
<Tabs>
84+
<Tab title="Create a new BYOC environment">
85+
1. Run the following command to create a new BYOC environment, with security configs. `$BYOC_CONFG` is the file path of the config file created in last step.`$BYOC_NAME` should be different from your existing one if the old one is not deleted.
86+
87+
```bash
88+
$ rwc byoc create \
89+
--cidr $BYOC_CIDR \
90+
--cloud-account-id $ACCOUNT_ID \
91+
--name $BYOC_NAME \
92+
--custom-settings-path $BYOC_CONFIG
93+
```
94+
95+
2. Apply custom settings to the new BYOC environment. This may take up to 30 minutes.
96+
97+
```bash
98+
$ rwc byoc apply --name $BYOC_NAME
99+
```
100+
</Tab>
101+
<Tab title="Update an existing BYOC environment">
102+
<Warning>
103+
When updating the existing BYOC environment, the existing cluster namespaces `rwc-*` will NOT adopt the security feature update.
104+
</Warning>
105+
106+
1. Run the following command to trigger a BYOC environment update. `$BYOC_NAME` should be the name of your existing BYOC environment.
107+
108+
```bash
109+
$ rwc byoc update \
110+
--name $BYOC_NAME \
111+
--version $VERSION \
112+
--custom-settings-path $BYOC_CONFIG
113+
```
114+
115+
2. Run the following command to apply the updated config. This may take up to 30 minutes.
116+
117+
```bash
118+
$ rwc byoc apply --name $BYOC_NAME
119+
```
120+
</Tab>
121+
122+
</Tabs>
123+
29124
## Resource and permission
30125

31126
When you customize your cloud platform, refer to the following notes to see what we've set up for you and the permissions you need to enable.

0 commit comments

Comments
 (0)