All Projects → deckhouse → yandex-csi-driver

deckhouse / yandex-csi-driver

Licence: Apache-2.0 license
A Container Storage Interface (CSI) Driver for Yandex.Cloud Compute Disks

Programming Languages

go
31211 projects - #10 most used programming language
Dockerfile
14818 projects

Projects that are alternatives of or similar to yandex-csi-driver

yappa
Serverless deploy of python web-apps @yandexcloud
Stars: ✭ 57 (-36.67%)
Mutual labels:  yandex-cloud
jiva
CAS Data Engine - iSCSI Distributed Block Storage Controller built-in Go
Stars: ✭ 121 (+34.44%)
Mutual labels:  csi-driver
aks-keyvault
Access Azure Key Vault secrets, keys and certs from AKS Pods using Secret Store CSI provider and Pod Identity.
Stars: ✭ 21 (-76.67%)
Mutual labels:  csi-driver
lvm-localpv
CSI Driver for dynamic provisioning of Persistent Local Volumes for Kubernetes using LVM.
Stars: ✭ 86 (-4.44%)
Mutual labels:  csi-driver
vultr-csi
Container Storage Interface (CSI) Driver for Vultr Block Storage
Stars: ✭ 22 (-75.56%)
Mutual labels:  csi-driver
beegfs-csi-driver
The BeeGFS Container Storage Interface (CSI) driver provides high performing and scalable storage for workloads running in Kubernetes.
Stars: ✭ 32 (-64.44%)
Mutual labels:  csi-driver
pso-csi
PSO CSI helm chart
Stars: ✭ 28 (-68.89%)
Mutual labels:  csi-driver
yandex-cloud-controller-manager
Kubernetes Cloud Controller Manager for Yandex.Cloud
Stars: ✭ 87 (-3.33%)
Mutual labels:  yandex-cloud
go-sdk
Yandex.Cloud Go SDK
Stars: ✭ 55 (-38.89%)
Mutual labels:  yandex-cloud

yandex-csi-driver

A Container Storage Interface (CSI) Driver for Yandex Compute Disks.

Releases

The Yandex CSI driver follows semantic versioning. The version will be bumped following the rules below:

  • Bug fixes will be released as a PATCH update.
  • New features (such as CSI spec bumps with no breaking changes) will be released as a MINOR update.
  • Significant breaking changes makes a MAJOR update.

Features

Below is a list of functionality implemented by the plugin.

Volume Expansion

Volumes can be expanded by updating the storage request value of the corresponding PVC:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: csi-pvc
  namespace: default
spec:
  [...]
  resources:
    requests:
      # The field below can be increased.
      storage: 10Gi
      [...]

After successful expansion, the status section of the PVC object will reflect the actual volume capacity.

Important notes:

  • Since Yandex.Cloud Compute Disks do not support online resize yet, after resizing a PVC object you have to manually delete a Pod object so that a Disk detaches from Instance, allowing to resize itself.
  • Volumes can only be increased in size, not decreased; attempts to do so will lead to an error.
  • Expanding a volume that is larger than the target size will have no effect. The PVC object status section will continue to represent the actual volume capacity.
  • Resizing volumes other than through the PVC object (e.g., the DigitalOcean cloud control panel) is not recommended as this can potentially cause conflicts. Additionally, size updates will not be reflected in the PVC object status section immediately, and the section will eventually show the actual volume capacity.

Volume Statistics

Volume statistics are exposed through the CSI-conformant endpoints. Monitoring systems such as Prometheus can scrape metrics and provide insights into volume usage.

Installing to Kubernetes

Kubernetes Compatibility

yandex-csi-driver is supported in Kubernetes >=1.15 only.

Requirements:

  • --allow-privileged flag must be set to true for both the API server and the kubelet
  • --feature-gates=VolumeSnapshotDataSource=true,CSINodeInfo=true,CSIDriverRegistry=true feature gate flags must be set to true for both the API server and the kubelet
  • Mount Propagation needs to be enabled. If you use Docker, the Docker daemon of the cluster nodes must allow shared mounts.

Installing driver

Simply install everyhting from the deploy path. Be sure to replace:

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].