Skip to content

Commit

Permalink
doc migration updates (#91)
Browse files Browse the repository at this point in the history
* doc migration updates

* Update README.md

* Update README.md

* Removed support section from README

Co-authored-by: hoppea2 <33433874+hoppea2@users.noreply.github.com>
  • Loading branch information
gallacher and hoppea2 authored Sep 21, 2021
1 parent 316aec8 commit 6cee805
Show file tree
Hide file tree
Showing 30 changed files with 18 additions and 1,865 deletions.
11 changes: 0 additions & 11 deletions .github/ISSUE_TEMPLATE/ask-a-question.md

This file was deleted.

35 changes: 0 additions & 35 deletions .github/ISSUE_TEMPLATE/bug_report.md

This file was deleted.

5 changes: 0 additions & 5 deletions .github/ISSUE_TEMPLATE/config.yml

This file was deleted.

16 changes: 0 additions & 16 deletions .github/ISSUE_TEMPLATE/feature_request.md

This file was deleted.

72 changes: 18 additions & 54 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,77 +8,41 @@ You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
-->

# Dell EMC Container Storage Module (CSM) for Resiliency
[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-v2.0%20adopted-ff69b4.svg)](docs/CODE_OF_CONDUCT.md)
# Dell EMC Container Storage Modules (CSM) for Resiliency
[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-v2.0%20adopted-ff69b4.svg)](https://github.com/dell/csm/blob/main/docs/CODE_OF_CONDUCT.md)
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0)
[![Docker Pulls](https://img.shields.io/docker/pulls/dellemc/podmon)](https://hub.docker.com/r/dellemc/podmon)
[![Go version](https://img.shields.io/github/go-mod/go-version/dell/karavi-resiliency)](go.mod)
[![GitHub release (latest by date including pre-releases)](https://img.shields.io/github/v/release/dell/karavi-resiliency?include_prereleases&label=latest&style=flat-square)](https://github.com/dell/karavi-resiliency/releases/latest)
[![Releases](https://img.shields.io/badge/Releases-green.svg)](https://github.com/dell/karavi-resiliency/releases)

User applications can have problems if you want their Pods to be resilient to node failure. This is especially true of those deployed with StatefulSets that use PersistentVolumeClaims. Kubernetes guarantees that there will never be two copies of the same StatefulSet Pod running at the same time and accessing storage. Therefore, it does not clean up StatefulSet Pods if the node executing them fails.

For the complete discussion and rationale, go to https://github.com/kubernetes/community and search for the pod-safety.md file (path: contributors/design-proposals/storage/pod-safety.md).
For more background on forced deletion of Pods in a StatefulSet, please visit [Force Delete StatefulSet Pods](https://kubernetes.io/docs/tasks/run-application/force-delete-stateful-set-pod/#:~:text=In%20normal%20operation%20of%20a,1%20are%20alive%20and%20ready).

# CSM for Resiliency High Level Description

_CSM for Resiliency_ is a project designed to make Kubernetes Applications, including those that utilize persistent storage, more resilient to various failures. The first component of _CSM for Resiliency_ is a pod monitor that is specifically designed to protect stateful applications from various failures. It is not a standalone application, but rather is deployed as a _sidecar_ to CSI (Container Storage Interface) drivers, in both the driver's controller pods and the driver's node pods. Deploying CSM for Resiliency as a sidecar allows it to make direct requests to the driver through the Unix domain socket that Kubernetes sidecars use to make CSI requests.
CSM for Resiliency is part of the [CSM (Container Storage Modules)](https://github.com/dell/csm) open-source suite of Kubernetes storage enablers for Dell EMC products. CSM for Resiliency is a project designed to make Kubernetes Applications, including those that utilize persistent storage, more resilient to various failures. The first component of CSM for Resiliency is a pod monitor that is specifically designed to protect stateful applications from various failures. It is not a standalone application, but rather is deployed as a _sidecar_ to Dell EMC CSI (Container Storage Interface) drivers, in both the driver's controller pods and the driver's node pods. Deploying CSM for Resiliency as a sidecar allows it to make direct requests to the driver through the Unix domain socket that Kubernetes sidecars use to make CSI requests.

Some of the methods CSM for Resiliency invokes in the driver are standard CSI methods, such as NodeUnpublishVolume, NodeUnstageVolume, and ControllerUnpublishVolume. CSM for Resiliency also uses proprietary calls that are not part of the standard CSI specification. Currently, there is only one, ValidateVolumeHostConnectivity that returns information on whether a host is connected to the storage system and/or whether any I/O activity has happened in the recent past from a list of specified volumes. This allows CSM for Resiliency to make more accurate determinations about the state of the system and its persistent volumes.

Accordingly, CSM for Resiliency is adapted to, and qualified with each CSI driver it is to be used with. Different storage systems have different nuances and characteristics that CSM for Resiliency must take into account.
Accordingly, CSM for Resiliency is adapted to, and qualified with each Dell EMC CSI driver it is to be used with. Different storage systems have different nuances and characteristics that CSM for Resiliency must take into account.

CSM for Resiliency is currently in a _Technical Preview Phase_, and should be considered _alpha_ software. We are actively seeking feedback from users about its features, effectiveness, and reliability. Please provide feedback using the karavi@dell.com email alias. We will take that input, along with our own results from doing extensive testing, and incrementally improve the software. We do ***not*** recommend or support it for production use at this time.
For documentation, please visit [Container Storage Modules documentation](https://dell.github.io/csm-docs/).

# Table of Contents

## [Use Cases](docs/USE_CASES.md)
Contains descriptions of the types of Kubernetes system failures that _CSM for Resiliency_ was designed to assist with.

## [Supported Drivers, Access Protocols, and Driver Features](docs/SUPPORTED_DRIVERS.md)
Contains details about what drivers are supported, and what features are available with each driver.

## [CSM for Resiliency Design and How It Works](docs/DESIGN.md)
Contains the details about the design you need to need to know.

## [Limitations and Exclusions](docs/LIMITATIONS.md)
Contains information on limitations. Please read this- especially for the _alpha_ stage, as not all features are implemented during _alpha_.

## [Deploying CSM for Resiliency](docs/DEPLOYING.md)
Contains information on how to deploy _CSM for Resiliency_ as part of the driver installation process.

## [Deploying and Managing Applications Protected By CSM for Resiliency](docs/APPLICATIONS.md)
Contains information on how to deploy protected applications and how to know they are protected.

## [Recovering from Failures](docs/RECOVERY.md)
Contains important information about how to recover when failures cannot be resolved automatically.

## [Reporting Problems](docs/PROBLEMS.md)
This section explains what information we need to diagnose the cause of problems with the _CSM for Resiliency_ protection systems. This information should be submitted in any issues if possible.

## [Testing Methodology and Results](docs/TESTING.md)
This section contains information how we tested _CSM for Resiliency_ and the results we achieved.

## Information for Project Contributors
- [Code of Conduct](./docs/CODE_OF_CONDUCT.md)
- Guides
- [Maintainer Guide](./docs/MAINTAINER_GUIDE.md)
- [Committer Guide](./docs/COMMITTER_GUIDE.md)
- [Contributing Guide](./docs/CONTRIBUTING.md)
- [Getting Started Guide](./docs/GETTING_STARTED_GUIDE.md)
- [List of Adopters](./ADOPTERS.md)
- [Support](#support)
- [Code of Conduct](https://github.com/dell/csm/blob/main/docs/CODE_OF_CONDUCT.md)
- [Maintainer Guide](https://github.com/dell/csm/blob/main/docs/MAINTAINER_GUIDE.md)
- [Committer Guide](https://github.com/dell/csm/blob/main/docs/COMMITTER_GUIDE.md)
- [Contributing Guide](https://github.com/dell/csm/blob/main/docs/CONTRIBUTING.md)
- [Branching Strategy](https://github.com/dell/csm/blob/main/docs/BRANCHING.md)
- [List of Adopters](https://github.com/dell/csm/blob/main/ADOPTERS.md)
- [Maintainers](https://github.com/dell/csm/blob/main/docs/MAINTAINERS.md)
- [Support](https://github.com/dell/csm/blob/main/docs/SUPPORT.md)
- [Security](https://github.com/dell/csm/blob/main/docs/SECURITY.md)
- [About](#about)

## Support

Don’t hesitate to ask! Contact the team and community on the [Support Page](./docs/SUPPORT.md) if you need any help.
Open an issue if you found a bug on [Github Issues](https://github.com/dell/karavi-resiliency/issues).

## Versioning

This project is adhering to [Semantic Versioning](https://semver.org/).

## About

This project is 100% open source and community-driven. All components are available
Dell EMC Container Storage Modules (CSM) is 100% open source and community-driven. All components are available
under [Apache 2 License](https://www.apache.org/licenses/LICENSE-2.0.html) on
GitHub.
46 changes: 0 additions & 46 deletions docs/APPLICATIONS.md

This file was deleted.

138 changes: 0 additions & 138 deletions docs/CODE_OF_CONDUCT.md

This file was deleted.

Loading

0 comments on commit 6cee805

Please sign in to comment.