Giter Club home page Giter Club logo

gcp-pd-csi-driver's Introduction

Google Compute Engine Persistent Disk CSI Driver

WARNING: Manual deployment of this driver to your GKE cluster is not recommended. Instead users should use GKE to automatically deploy and manage the GCE PD CSI Driver (see GKE Docs).

DISCLAIMER: Manual deployment of the driver to your cluster is not officially supported by Google.

The Google Compute Engine Persistent Disk CSI Driver is a CSI Specification compliant driver used by Container Orchestrators to manage the lifecycle of Google Compute Engine Persistent Disks.

Project Status

Status: GA Latest stable image: registry.k8s.io/cloud-provider-gcp/gcp-compute-persistent-disk-csi-driver:v1.10.1

Test Status

Kubernetes Integration

Driver Version Kubernetes Version Test Status
HEAD Latest HEAD Test Status
HEAD stable-master HEAD (Migration ON) Test Status

CSI Compatibility

This plugin is compatible with CSI versions v1.2.0, v1.1.0, and v1.0.0

Kubernetes Version Recommendations

The latest stable of this driver is recommended for the latest stable Kubernetes version. For previous Kubernetes versions, we recommend the following driver versions.

Kubernetes Version PD CSI Driver Version
HEAD v1.10.x
1.27 v1.10.x
1.26 v1.9.x
1.25 v1.8.x

The manifest bundle which captures all the driver components (driver pod which includes the containers csi-provisioner, csi-resizer, csi-snapshotter, gce-pd-driver, csi-driver-registrar; csi driver object, rbacs, pod security policies etc) for the lastest stable release can be picked up from the master branch overlays directory.

Known Issues

See Github Issues

Plugin Features

CreateVolume Parameters

Parameter Values Default Description
type Any PD type (see GCP documentation), eg pd-ssd pd-balanced pd-standard Type allows you to choose between standard Persistent Disks or Solid State Drive Persistent Disks
replication-type none OR regional-pd none Replication type allows you to choose between Zonal Persistent Disks or Regional Persistent Disks
disk-encryption-kms-key Fully qualified resource identifier for the key to use to encrypt new disks. Empty string. Encrypt disk using Customer Managed Encryption Key (CMEK). See GKE Docs for details.
labels key1=value1,key2=value2 Labels allow you to assign custom GCE Disk labels.
provisioned-iops-on-create string (int64 format). Values typically between 10,000 and 120,000 Indicates how many IOPS to provision for the disk. See the Extreme persistent disk documentation for details, including valid ranges for IOPS.
provisioned-throughput-on-create string (int64 format). Values typically between 1 and 7,124 mb per second Indicates how much throughput to provision for the disk. See the hyperdisk documentation for details, including valid ranges for throughput.

Topology

This driver supports only one topology key: topology.gke.io/zone that represents availability by zone (e.g. us-central1-c, etc.).

CSI Windows Support

GCE PD driver starts to support CSI Windows with [CSI Proxy] (https://github.com/kubernetes-csi/csi-proxy). It requires csi-proxy.exe to be installed on every Windows node. Please see more details in CSI Windows page (docs/kubernetes/user-guides/windows.md)

Features in Development

Feature Stage Min Kubernetes Master Version Min Kubernetes Nodes Version Min Driver Version Deployment Overlay
Snapshots GA 1.17 Any v1.0.0 stable-1-21, stable-1-22, stable-1-23, stable-master
Clones GA 1.18 Any v1.4.0 stable-1-21, stable-1-22, stable-1-23, stable-master
Resize (Expand) Beta 1.16 1.16 v0.7.0 stable-1-21, stable-1-22, stable-1-23, stable-master
Windows* GA 1.19 1.19 v1.1.0 stable-1-21, stable-1-22, stable-1-23, stable-master

* For Windows, it is recommended to use this driver with CSI proxy v0.2.2+. The master version of driver requires disk v1beta2 group, which is only available in CSI proxy v0.2.2+

Future Features

See Github Issues

Driver Deployment

As part of the deployment process, the driver is deployed in a newly created namespace by default. The namespace will be deleted as part of the cleanup process.

Controller-level and node-level deployments will both have priorityClassName set, and the corresponding priority value is close to the maximum possible for user-created PriorityClasses.

Further Documentation

Local Development

For releasing new versions of this driver, googlers should consult go/pdcsi-oss-release-process.

Kubernetes

User Guides

Driver Development

gcp-pd-csi-driver's People

Contributors

amacaskill avatar artemvmin avatar cpanato avatar dannawang0221 avatar davidz627 avatar jenting avatar jeremyje avatar jiawei0227 avatar jingxu97 avatar jsafrane avatar judemars avatar k8s-ci-robot avatar leiyiz avatar lizhuqi avatar mattcary avatar mauriciopoppe avatar msau42 avatar nikhilkathare avatar openshift-merge-robot avatar pohly avatar pwschuurman avatar romanbednar avatar saad-ali avatar saikat-royc avatar sneha-at avatar songjiaxun avatar sunnylovestiramisu avatar teweiluo avatar tyuchn avatar verult avatar

Watchers

 avatar  avatar  avatar

gcp-pd-csi-driver's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.