S3 CSI Driver Addon¶
The S3 CSI Driver Addon integrates Amazon S3 with your Kubernetes cluster, allowing you to use S3 buckets as persistent storage for your applications.
Prerequisites¶
- The S3 bucket must be created in AWS separately as the driver uses the S3 bucket for storage, but it does not create it.
- The S3 bucket must have a bucket policy that allows the EKS cluster to access the bucket.
Usage¶
import { S3CsiDriverAddon } from '@aws-quickstart/eks-blueprints';
const addOns = [
new S3CsiDriverAddon({
s3BucketName: 'my-s3-bucket',
}),
// other addons
];
const blueprint = EksBlueprint.builder()
.addOns(...addOns)
.build(app, 'my-stack');
Configuration¶
You can customize the S3 CSI Driver Addon by passing configuration options:
new S3CsiDriverAddon({
s3BucketName: 'my-s3-bucket',
});
Use in EKS Cluster¶
Once installed, you can create PersistentVolume and PersistentVolumeClaim resources that use the S3 CSI Driver:
apiVersion: v1
kind: PersistentVolume
metadata:
name: s3-pv
spec:
capacity:
storage: 5Gi
accessModes:
- ReadWriteOnce
csi:
driver: s3.csi.aws.com
volumeHandle: my-s3-bucket
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: s3-pvc
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 5Gi
volumeName: s3-pv