GithubHelp home page GithubHelp logo

liuweb / csi-powermax Goto Github PK

View Code? Open in Web Editor NEW

This project forked from dell/csi-powermax

0.0 2.0 0.0 1.17 MB

CSI Driver for Dell EMC PowerMax

License: Apache License 2.0

Dockerfile 0.06% Makefile 0.28% Shell 4.52% Go 74.05% Smarty 0.75% Gherkin 20.32%

csi-powermax's Introduction

CSI Driver for Dell EMC PowerMax

Repository for CSI Driver for Dell EMC PowerMax development project

Description

CSI Driver for Dell EMC PowerMax is a Container Storage Interface (CSI) driver that provides support for provisioning persistent storage using Dell EMC PowerMax storage array.

It supports CSI specification version 1.1

This project may be compiled as a stand-alone binary using Golang that, when run, provides a valid CSI endpoint. This project can also be built as a Golang plug-in in order to extend the functionality of other programs.

Building

This project is a Go module (see golang.org Module information for explanation). The dependencies for this project are in the go.mod file.

To build the source, execute make clean build.

To run unit tests, execute make unit-test.

To build a docker image, execute make docker.

You can run an integration test on a Linux system by populating the file env.sh with values for your Dell EMC PowerMax systems and then run "make integration-test".

Runtime Dependencies

Both the Controller and the Node portions of the driver can only be run on nodes which have network connectivity to a โ€œUnisphere for PowerMaxโ€ server (which is used by the driver).

If you are using ISCSI, then the Node portion of the driver can only be run on nodes that have the iscsi-initiator-utils package installed.

Installation

Installation in a Kubernetes cluster should be done using the install.powermax script and accompanying Helm chart in the helm directory.

For more information, please refer to the CSI Driver for Dell EMC PowerMax Product Guide and CSI Driver for Dell EMC PowerMax Release Notes.

The driver will be started in Kubernetes as a result of executing the installation script.

Using driver

A number of test helm charts and scripts are found in the directory test/helm. Product Guide provides descriptions of how to run these and explains how they work.

Parameters

When using the driver, some additional parameters have to be specified in the storage class in Kubernetes. These parameters influence how the volume is provisoned on the PowerMax array.

Those parameters are listed here.

  • SYMID : The symmetrix ID of the PowerMax array
  • SRP : The Storage Resource Pool (SRP) name
  • ServiceLevel : Service Level on the PowerMax array (Optional). If not specified, the driver will default to Optimized Service Level.

Capable operational modes

The CSI spec defines a set of AccessModes that a volume can have. CSI Driver for Dell EMC PowerMax supports the following modes for volumes that will be mounted as a filesystem:

// Can only be published once as read/write on a single node,
// at any given time.
SINGLE_NODE_WRITER = 1;

// Can only be published once as readonly on a single node,
// at any given time.
SINGLE_NODE_READER_ONLY = 2;

This means that volumes can be mounted to a single node at a time, with read-write or read-only permission

In general, volumes should be formatted with xfs or ext4.

Support

The CSI Driver for Dell EMC PowerMax image available on Dockerhub is officially supported by Dell EMC.

The source code available on Github is unsupported and provided solely under the terms of the license attached to the source code. For clarity, Dell EMC does not provide support for any source code modifications.

For any CSI driver setup, configuration issues, questions or feedback, join the Dell EMC Container community at https://www.dell.com/community/Containers/bd-p/Containers

For any Dell EMC storage issues, please contact Dell support at: https://www.dell.com/support.

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.