linode / provider-ceph

Provider Ceph is a Crossplane provider capable of managing S3 Buckets on one or more Ceph clusters.
Apache License 2.0
19 stars 3 forks source link

provider-ceph

provider-ceph is a minimal Crossplane Provider that reconciles Bucket CRs with multiple external S3 backends such as Ceph. It comes with the following features:

Getting Started

Install Crossplane in you Kubernetes cluster

Install the provider by using the Upbound CLI after changing the image tag to the latest release:

up ctp provider install xpkg.upbound.io/linode/provider-ceph:v1.0.2-rc.0.1.g4c96fcc

Alternatively, you can use declarative installation:

cat <<EOF | kubectl apply -f -
apiVersion: pkg.crossplane.io/v1
kind: Provider
metadata:
  name: linode-provider-ceph
spec:
  package: xpkg.upbound.io/linode/provider-ceph:v1.0.2-rc.0.1.g4c96fcc
EOF

See WEBHOOKS.md for instructions on how to enable webhooks.

Customizing provider deployment

Crossplane uses DeploymentRuntimeConfig object to apply customizations on the provider. Here are a few examples:

apiVersion: pkg.crossplane.io/v1beta1
kind: DeploymentRuntimeConfig
metadata:
  name: provider-ceph
spec:
  deploymentTemplate:
    spec:
      selector: {}
      template:
        spec:
          containers:
          - name: package-runtime
            args:
            - --kube-client-rate=80000
            - --reconcile-timeout=5s
            - --max-reconcile-rate=600
            - --reconcile-concurrency=160
            - --poll=30m
            - --sync=1h
            - --assume-role-arn=[ASSUME_ROLE_ARN]

You have to attach DeploymentRuntimeConfig to the Provider object.

apiVersion: pkg.crossplane.io/v1
kind: Provider
metadata:
  name: provider-ceph
spec:
  runtimeConfigRef:
    name: provider-ceph

Contact

Development

Refer to Crossplane's CONTRIBUTING.md file for more information on how the Crossplane community prefers to work. The guide-provider-development.md guide may also be of use. For more information about how to setup your development environment, please follow our DEVELOPMENT.md page.