All Projects → IBM → ibm-spectrum-scale-csi-driver

IBM / ibm-spectrum-scale-csi-driver

Licence: Apache-2.0 License
Repository has been moved to: https://github.com/IBM/ibm-spectrum-scale-csi

Programming Languages

go
31211 projects - #10 most used programming language
python
139335 projects - #7 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to ibm-spectrum-scale-csi-driver

ibm-spectrum-scale-csi
The IBM Spectrum Scale Container Storage Interface (CSI) project enables container orchestrators, such as Kubernetes and OpenShift, to manage the life-cycle of persistent storage.
Stars: ✭ 41 (+95.24%)
Mutual labels:  openshift, gpfs, spectrum-scale
ibm-spectrum-scale-bridge-for-grafana
This tool allows the IBM Spectrum Scale users to perform performance monitoring for IBM Spectrum Scale devices using third-party applications such as Grafana software.
Stars: ✭ 24 (+14.29%)
Mutual labels:  gpfs, spectrum-scale
arnold
👷‍♀️ Deploy your applications to Kubernetes with Ansible
Stars: ✭ 37 (+76.19%)
Mutual labels:  openshift
ProxyInjector
A Kubernetes controller to inject an authentication proxy container to relevant pods - [✩Star] if you're using it!
Stars: ✭ 77 (+266.67%)
Mutual labels:  openshift
RHCA-study-notes
Red Hat Certified Architect personal study notes
Stars: ✭ 95 (+352.38%)
Mutual labels:  openshift
archi cloudnative
Cloud Native Architectural Models using Archi. Contains models for CAAS, Cloud Native Applications, 12/15 Factor Applications with CI/CD/CS, monitoring and log management. Infrastructure components include Red Hat OpenShift, Red Hat Storage, Red Hat Ansible Tower, Red Hat Cloudforms, Red Hat Satellite, Red Hat JBoss Middleware.
Stars: ✭ 55 (+161.9%)
Mutual labels:  openshift
faas-tutorial
Java FaaS demos with OpenWhisk and OpenShift
Stars: ✭ 43 (+104.76%)
Mutual labels:  openshift
cfimagehost-on-openshift
CF Image Host on Red Hat OpenShift PAAS
Stars: ✭ 13 (-38.1%)
Mutual labels:  openshift
chuck-norris-streams
Kafka, Debezium and Fuse demonstration based on Chuck Norris movies!
Stars: ✭ 25 (+19.05%)
Mutual labels:  openshift
tailor
Infrastructure as Code for OpenShift
Stars: ✭ 12 (-42.86%)
Mutual labels:  openshift
citadel
Turn an arbitrary command into a Kubernetes Key Management Service GRPC server
Stars: ✭ 15 (-28.57%)
Mutual labels:  openshift
metagraf
metaGraf is a opinionated specification for describing a software component and what its requirements are from the runtime environment. The mg command, turns metaGraf specifications into Kubernetes resources, supporting CI, CD and GitOps software delivery.
Stars: ✭ 15 (-28.57%)
Mutual labels:  openshift
gollum-galore
🍬 Gollum wiki with lots of sugar 🍬
Stars: ✭ 14 (-33.33%)
Mutual labels:  openshift
kubeseal-webgui
This is a python based webapp for using Bitnami-Sealed-Secrets in a web-ui.
Stars: ✭ 27 (+28.57%)
Mutual labels:  openshift
openshift4-vmware-upi
Ansible Playbooks and Documentation to Support the Automated Installation of OpenShift 4 on VMware
Stars: ✭ 45 (+114.29%)
Mutual labels:  openshift
docker-openshift-grafana
Grafana Docker Image for use with Red Hat OpenShift
Stars: ✭ 22 (+4.76%)
Mutual labels:  openshift
buildah-build
GitHub Action to use 'buildah' to build a container image.
Stars: ✭ 75 (+257.14%)
Mutual labels:  openshift
openshift-actions-runners
GitHub Action self-hosted runner images for OpenShift.
Stars: ✭ 27 (+28.57%)
Mutual labels:  openshift
openshift-install
Install Openshift Docker Meetup Jakarta-Indonesia
Stars: ✭ 17 (-19.05%)
Mutual labels:  openshift
ovirt-openshift-extensions
Implementation of flexvolume driver and provisioner for oVirt
Stars: ✭ 32 (+52.38%)
Mutual labels:  openshift

WARNING THIS REPOSITORY HAS BEEN MOVED!

https://github.com/IBM/ibm-spectrum-scale-csi

IBM Spectrum Scale Container Storage Interface (CSI) Driver

Please refer to the IBM Spectrum Scale Container Storage Interface Driver documentation on knowledge center for detailed documentation. See the IBM Spectrum Scale Users Group links at the very bottom for a community to share and discuss test efforts.

IBM Spectrum Scale Introduction

IBM Spectrum Scale is a clustered file system providing concurrent access to a single file system or set of file systems from multiple nodes. The nodes can be SAN attached, network attached, a mixture of SAN attached and network attached, or in a shared nothing cluster configuration. This enables high performance access to this common set of data to support a scale-out solution or to provide a high availability platform.

IBM Spectrum Scale has many features beyond common data access including data replication, policy based storage management, and multi-site operations. You can create a cluster of AIX® nodes, Linux nodes, Windows server nodes, or a mix of all three. IBM Spectrum Scale can run on virtualized instances providing common data access in environments, leverage logical partitioning, or other hypervisors. Multiple IBM Spectrum Scale clusters can share data within a location or across wide area network (WAN) connections. For more information on IBM Spectrum Scale features, see the Product overview section in the IBM Spectrum Scale: Concepts, Planning, and Installation Guide.

Please refer to the IBM Spectrum Scale Knowledge Center for more information.

IBM Spectrum Scale Container Storage Interface (CSI) driver

The IBM Spectrum Scale Container Storage Interface (CSI) driver allows IBM Spectrum Scale to be used as persistent storage for stateful application running in Kubernetes clusters. Through this CSI Driver, Kubernetes persistent volumes (PVs) can be provisioned from IBM Spectrum Scale. Thus, containers can be used with stateful microservices, such as database applications (MongoDB, PostgreSQL etc), web servers (nginx, apache), or any number of other containerized applications needing provisioned storage.

Supported Features of the CSI driver

IBM Spectrum Scale Container Storage Interface (CSI) driver supports the following features:

  • Static provisioning: Ability to use existing directories as persistent volumes
  • Lightweight dynamic provisioning: Ability to create directory-based volumes dynamically
  • Fileset-based dynamic provisioning: Ability to create fileset-based volumes dynamically
  • Multiple file systems support: Volumes can be created across multiple file systems
  • Remote mount support: Volumes can be created on a remotely mounted file system

Limitations of the CSI driver

Please refer to IBM Spectrum Scale Knowledge Center for limitations.

Pre-requisites for installing and running the CSI driver

Please refer to IBM Spectrum Scale Knowledge Center for install pre-requisites.

Building the docker image

Using multi-stage build

Pre-requisite: Docker 17.05 or higher is installed on local build machine.

  1. Clone the code

    git clone https://github.com/IBM/ibm-spectrum-scale-csi-driver.git
    cd ibm-spectrum-scale-csi-driver
    
  2. Invoke multi-stage build

    docker build -t ibm-spectrum-scale-csi:v1.0.0 -f Dockerfile.msb .
    

    On podman setup, use podman command instead of docker

  3. save the docker image

    docker save ibm-spectrum-scale-csi:v1.0.0 -o ibm-spectrum-scale-csi_v1.0.0.tar
    

    On podman setup, use podman command instead of docker

    A tar file of docker image will be created.

Install and Deploy the IBM Spectrum Scale CSI driver

  1. Copy and load the docker image on all Kubernetes worker nodes

    docker image load -i ibm-spectrum-scale-csi_v1.0.0.tar
    

    On podman setup, use podman command instead of docker

  2. Deploy CSI driver

    Follow the instructions from ibm-spectrum-scale-csi-operator for deployment of CSI driver

    For Advance configuration, Cleanup, Troubleshooting etc. refer IBM Spectrum Scale Knowledge Center

Static Provisioning

In static provisioning, the backend storage volumes and PVs are created by the administrator. Static provisioning can be used to provision a directory or fileset with existing data.

For static provisioning of existing directories perform the following steps:

  • Generate static pv yaml file using helper script

    tools/generate_pv_yaml.sh --filesystem gpfs0 --size 10 \
    --linkpath /ibm/gpfs0/pvfileset/static-pv --pvname static-pv
    
  • Use sample static_pvc and pod files for sanity test under examples/static

    kubectl apply -f examples/static/static_pv.yaml
    kubectl apply -f examples/static/static_pvc.yaml
    kubectl apply -f examples/static/static_pod.yaml
    

Dynamic Provisioning

Dynamic provisioning is used to dynamically provision the storage backend volume based on the storageClass.

Storageclass

Storageclass defines what type of backend volume should be created by dynamic provisioning. IBM Spectrum Scale CSI driver supports creation of directory based (also known as lightweight volumes) and fileset based (independent as well as dependent) volumes. Following parameters are supported by IBM Spectrum Scale CSI driver storageClass:

  • volBackendFs: Filesystem on which the volume should be created. This is a mandatory parameter.
  • clusterId: Cluster ID on which the volume should be created.
  • volDirBasePath: Base directory path relative to the filesystem mount point under which directory based volumes should be created. If specified, the storageClass is used for directory based (lightweight) volume creation.
  • uid: UID with which the volume should be created. Optional
  • gid: UID with which the volume should be created. Optional
  • filesetType: Type of fileset. Valid values are "independent" or "dependent". Default: independent
  • parentFileset: Specifies the parent fileset under which dependent fileset should be created.
  • inodeLimit: Inode limit for fileset based volumes. If not specified, default IBM Spectrum Scale inode limit of 1 million is used.

For dynamic provisioning, use sample storageClass, pvc and pod files for sanity test under examples/dynamic

Example:

kubectl apply -f examples/dynamic/fileset/storageclassfileset.yaml
kubectl apply -f examples/dynamic/fileset/pvcfset.yaml
kubectl apply -f examples/dynamic/fileset/podfset.yaml

Links

IBM Spectrum Scale Knowledge Center Welcome Page The Knowledge Center contains all official IBM Spectrum Scale information and guidance.

IBM Spectrum Scale FAQ Main starting page for all IBM Spectrum Scale compatibility information.

IBM Spectrum Scale Protocols Quick Overview Guide showing how to quickly install a IBM Spectrum Scale cluster. Information similar to the above Install Toolkit example.

IBM Block CSI driver CSI driver supporting multiple IBM storage systems.

Installing kubeadm Main Kubernetes site detailing how to install kubeadm and create a cluster.

OpenShift Container Platform 4.x Tested Integrations Red Hat's test matrix for OpenShift 4.x.

IBM Storage Enabler for Containers Welcome Page Flex Volume driver released in late 2018 with a HELM update in early 2019, providing compatibility with IBM Spectrum Scale for file storage and multiple IBM storage systems for block storage. Future development efforts have shifted to CSI.

IBM Spectrum Scale Users Group A group of both IBM and non-IBM users, interested in IBM Spectrum Scale

IBM Spectrum Scale Users Group Mailing List and Slack Channel Join everyone and let the team know about your experience with the CSI driver

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].