Skip to content

Commit

Permalink
docs: add cluster object store
Browse files Browse the repository at this point in the history
  • Loading branch information
cbang-akamai committed Dec 12, 2024
1 parent 69bfcb8 commit f591736
Showing 1 changed file with 52 additions and 0 deletions.
52 changes: 52 additions & 0 deletions docs/src/topics/cluster-object-store.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# Cluster Object Store

The Cluster Object Store is an optional setting in the `LinodeCluster` resource definition that references an object
storage bucket used for internal cluster operations. Currently, the Cluster Object Store feature enables the following capabilities:

- Bypassing bootstrap data limits during Linode provisioning

A [Linode Object Storage](https://www.linode.com/docs/guides/platform/object-storage/) bucket and access key are
provisioned as the Cluster Object Store for each `LinodeCluster` resource with any of the `*-full` flavors. BYOB (Bring
Your Own Bucket) may be used instead, by modifying a `LinodeCluster` definition:

```yaml
apiVersion: infrastructure.cluster.x-k8s.io/v1alpha2
kind: LinodeCluster
metadata:
name: ${CLUSTER_NAME}
spec:
objectStore:
credentialsRef:
name: ${CLUSTER_NAME}-object-store-credentials
```
to reference any Secret containing a object storage bucket's credentials in the following format:
```yaml
apiVersion: v1
kind: Secret
metadata:
name: ${CLUSTER_NAME}-object-store-credentials
data:
bucket_name: ${BUCKET_NAME}
# Service endpoint
# See: https://docs.aws.amazon.com/general/latest/gr/s3.html
s3_endpoint: ${S3_ENDPOINT}
access_key: ${ACCESS_KEY}
secret_key: ${SECRET_KEY}
```
## Capabilities
### Bootstrap Data Limits During Linode Provisioning
Currently, during `LinodeMachine` bootstrapping, CAPL delivers the bootstrap data generated by a [bootstrap
provider](https://cluster-api.sigs.k8s.io/developer/providers/bootstrap) to it's infrastructure Linode via one of the
following services:

| Service | Bootstrap Data Limit |
| --------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------ |
| [Metadata](https://techdocs.akamai.com/cloud-computing/docs/overview-of-the-metadata-service) | [65535 bytes](https://techdocs.akamai.com/linode-api/reference/post-linode-instance) |
| [Stackscripts](https://www.linode.com/products/stackscripts/) | [65,535 characters](https://techdocs.akamai.com/linode-api/reference/post-linode-instance) |

These data limits are bypassed when the Cluster Object Store feature is enabled.

0 comments on commit f591736

Please sign in to comment.