Skip to content

sighupio/fury-kubernetes-storage

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kubernetes Fury Storage

Release License Slack

Kubernetes Fury Storage provides the Rook Kubernetes Operator for Ceph add-on for Kubernetes Fury Distribution (KFD).

If you are new to KFD please refer to the official documentation on how to get started with KFD.

Overview

Kubernetes Fury Storage uses the Rook operator to install and manage Ceph clusters in a Kubernetes environment.

All the components are deployed in the rook-ceph namespace of the cluster.

Packages

The following packages are included in the Fury Kubernetes Storage katalog:

Package Version Description
rook-operator v1.10.13 Rook provides a way to run a highly available, durable Ceph storage in your Kubernetes cluster.
rook-hostcluster NA Rook CRDs to run a production ready Ceph cluster providing Block and File storage.

Click on each package to see its full documentation.

Compatibility

Kubernetes Version Compatibility Notes
1.22.x No known issues
1.23.x No known issues
1.24.x No known issues
1.25.x No known issues

Check the compatibility matrix for additional information about previous releases of the modules.

The module is still in version 0.X.X but can be used in production.

Usage

Prerequisites

Tool Version Description
furyctl >=0.6.0 The recommended tool to download and manage KFD modules and their packages. To learn more about furyctl read the official documentation.
kustomize 3.5.3 Packages are customized using kustomize. To learn how to create your customization layer with kustomize, please refer to the repository.
cert-manager >=1.13.1 cert-manager is needed by Rook in order to install a Validating Webhook to asses that Rook CRs are correctly configured.
prometheus-opeator >=2.0.1 prometheus-operator is needed by Rook in order to install the ServiceMonitor needed to monitor the Ceph cluster.

Deployment

  1. List the packages you want to deploy and their version in a Furyfile.yml
bases:
  - name: ingress/cert-manager
    version: "v1.13.1"
  - name: monitoring/promtheus-operator
    version: "v2.0.1"
  - name: storage/rook-operator
    version: "v0.2.0"
  - name: storage/rook-hostcluster
    version: "v0.2.0"

See furyctl documentation for additional details about Furyfile.yml format.

  1. Execute furyctl vendor -H to download the packages

  2. Inspect the download packages under ./vendor/katalog/storage.

  3. Define a kustomization.yaml that includes the ./vendor/katalog/storage directory as resource.

resources:
  - ./vendor/katalog/ingress/cert-manager
  - ./vendor/katalog/monitoring/prometheus-operator
  - ./vendor/katalog/storage/rook-operator
  - ./vendor/katalog/storage/rook-hostcluster
  1. To deploy the packages to your cluster, execute:
kustomize build . | kubectl apply -f - --server-side

Contributing

Before contributing, please read first the Contributing Guidelines.

Reporting Issues

In case you experience any problem with the module, please open a new issue.

License

This module is open-source and it's released under the following LICENSE