infra/talos/k8s/rook/s3-pool.yaml
2025-01-19 19:44:38 -08:00

72 lines
1.5 KiB
YAML

apiVersion: ceph.rook.io/v1
kind: CephObjectStore
metadata:
name: muh-buckets
namespace: rook-ceph
spec:
metadataPool:
failureDomain: osd
replicated:
size: 2
dataPool:
failureDomain: osd
erasureCoded:
dataChunks: 2
codingChunks: 1
preservePoolsOnDelete: true
gateway:
port: 80
instances: 1
annotations:
resources:
# hosting:
# advertiseEndpoint:
# dnsName: s3.janky.solutions
# port: 443
# useTls: true
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: s3.janky.solutions
labels:
name: s3.janky.solutions
annotations:
cert-manager.io/cluster-issuer: letsencrypt
spec:
tls:
- hosts:
- s3.janky.solutions
- "*.s3.janky.solutions"
secretName: s3.janky.solutions
rules:
- host: s3.janky.solutions
http:
paths:
- pathType: Prefix
path: "/"
backend:
service:
name: rook-ceph-rgw-muh-buckets
port:
number: 80
- host: "*.s3.janky.solutions"
http:
paths:
- pathType: Prefix
path: "/"
backend:
service:
name: rook-ceph-rgw-muh-buckets
port:
number: 80
---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: rook-ceph-bucket
provisioner: rook-ceph.ceph.rook.io/bucket
reclaimPolicy: Delete
parameters:
objectStoreName: muh-buckets
objectStoreNamespace: rook-ceph