Skip to content
This repository has been archived by the owner on Mar 3, 2022. It is now read-only.

Commit

Permalink
Update configuresc.md
Browse files Browse the repository at this point in the history
Updated the link from table to description of replica pod anti affinity.

Signed-off-by: Ranjith R <ranjith.raveendran@mayadata.io>
  • Loading branch information
ranjithwingrider committed May 21, 2019
1 parent 445edb0 commit b31eb31
Showing 1 changed file with 19 additions and 18 deletions.
37 changes: 19 additions & 18 deletions docs/configuresc.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,23 +77,24 @@ provisioner: openebs.io/provisioner-iscsi

Below table lists the storage policies supported by cStor. These policies should be built into StorageClass and apply them through PersistentVolumeClaim or VolumeClaimTemplates interface

| cStor Storage Policy | Mandatory | Default | Purpose |
| -------------------------------------------------------- | --------- | --------------------------------------- | ------------------------------------------------------------ |
| [ReplicaCount](#Replica-Count-Policy) | No | 3 | Defines the number of cStor volume replicas |
| [VolumeControllerImage](#Volume-Controller-Image-Policy) | | quay.io/openebs/cstor-volume-mgmt:0.9.0 | Dedicated side car for command management like taking snapshots etc. Can be used to apply a specific issue or feature for the workload |
| [VolumeTargetImage](#Volume-Target-Image-Policy) | | value:quay.io/openebs/cstor-istgt:0.9.0 | iSCSI protocol stack dedicated to the workload. Can be used to apply a specific issue or feature for the workload |
| [StoragePoolClaim](#Storage-Pool-Claim-Policy) | Yes | N/A (a valid pool must be provided) | The cStorPool on which the volume replicas should be provisioned |
| [VolumeMonitor](#Volume-Monitor-Policy) | | ON | When ON, a volume exporter sidecar is launched to export Prometheus metrics. |
| [VolumeMonitorImage](#Volume-Monitoring-Image-Policy) | | quay.io/openebs/m-exporter:0.9.0 | Used when VolumeMonitor is ON. A dedicated metrics exporter to the workload. Can be used to apply a specific issue or feature for the workload |
| [FSType](#Volume-File-System-Type-Policy) | | ext4 | Specifies the filesystem that the volume should be formatted with. Other values are `xfs` |
| [TargetNodeSelector](#Target-NodeSelector-Policy) | | Decided by Kubernetes scheduler | Specify the label in `key: value` format to notify Kubernetes scheduler to schedule cStor target pod on the nodes that match label |
| [TargetResourceLimits](#Target-ResourceLimits-Policy) | | Decided by Kubernetes scheduler | CPU and Memory limits to cStor target pod |
| [TargetResourceRequests](#TargetResourceRequests) | | Decided by Kubernetes scheduler | Configuring resource requests that need to be available before scheduling the containers. |
| [TargetTolerations](#TargetTolerations) | | Decided by Kubernetes scheduler | Configuring the tolerations for target. |
| [AuxResourceLimits](#AuxResourceLimits-Policy) | | Decided by Kubernetes scheduler | Configuring resource limits on the volume pod side-cars. |
| [AuxResourceRequests](#AuxResourceRequests-Policy) | | Decided by Kubernetes scheduler | Configure minimum requests like ephemeral storage etc. to avoid erroneous eviction by K8s. |
| [Target Affinity](#Target-Affinity-Policy) | | Decided by Kubernetes scheduler | The policy specifies the label KV pair to be used both on the cStor target and on the application being used so that application pod and cStor target pod are scheduled on the same node. |
| [Target Namespace](#Target-Namespace) | | openebs | When service account name is specified, the cStor target pod is scheduled in the application's namespace. |
| cStor Storage Policy | Mandatory | Default | Purpose |
| ------------------------------------------------------------ | --------- | --------------------------------------- | ------------------------------------------------------------ |
| [ReplicaCount](#Replica-Count-Policy) | No | 3 | Defines the number of cStor volume replicas |
| [VolumeControllerImage](#Volume-Controller-Image-Policy) | | quay.io/openebs/cstor-volume-mgmt:0.9.0 | Dedicated side car for command management like taking snapshots etc. Can be used to apply a specific issue or feature for the workload |
| [VolumeTargetImage](#Volume-Target-Image-Policy) | | value:quay.io/openebs/cstor-istgt:0.9.0 | iSCSI protocol stack dedicated to the workload. Can be used to apply a specific issue or feature for the workload |
| [StoragePoolClaim](#Storage-Pool-Claim-Policy) | Yes | N/A (a valid pool must be provided) | The cStorPool on which the volume replicas should be provisioned |
| [VolumeMonitor](#Volume-Monitor-Policy) | | ON | When ON, a volume exporter sidecar is launched to export Prometheus metrics. |
| [VolumeMonitorImage](#Volume-Monitoring-Image-Policy) | | quay.io/openebs/m-exporter:0.9.0 | Used when VolumeMonitor is ON. A dedicated metrics exporter to the workload. Can be used to apply a specific issue or feature for the workload |
| [FSType](#Volume-File-System-Type-Policy) | | ext4 | Specifies the filesystem that the volume should be formatted with. Other values are `xfs` |
| [TargetNodeSelector](#Target-NodeSelector-Policy) | | Decided by Kubernetes scheduler | Specify the label in `key: value` format to notify Kubernetes scheduler to schedule cStor target pod on the nodes that match label |
| [TargetResourceLimits](#Target-ResourceLimits-Policy) | | Decided by Kubernetes scheduler | CPU and Memory limits to cStor target pod |
| [TargetResourceRequests](#TargetResourceRequests) | | Decided by Kubernetes scheduler | Configuring resource requests that need to be available before scheduling the containers. |
| [TargetTolerations](#TargetTolerations) | | Decided by Kubernetes scheduler | Configuring the tolerations for target. |
| [AuxResourceLimits](#AuxResourceLimits-Policy) | | Decided by Kubernetes scheduler | Configuring resource limits on the volume pod side-cars. |
| [AuxResourceRequests](#AuxResourceRequests-Policy) | | Decided by Kubernetes scheduler | Configure minimum requests like ephemeral storage etc. to avoid erroneous eviction by K8s. |
| [Target Affinity](#Target-Affinity-Policy) | | Decided by Kubernetes scheduler | The policy specifies the label KV pair to be used both on the cStor target and on the application being used so that application pod and cStor target pod are scheduled on the same node. |
| [Target Namespace](#Target-Namespace) | | openebs | When service account name is specified, the cStor target pod is scheduled in the application's namespace. |
| [cStorStoragePool Replica Anti-Affinity](#cStorStoragePool-Anti-Affinity) | | Decided by Kubernetes scheduler | For StatefulSet applications, to distribute single replica volume on separate nodes . |

<br>

Expand Down Expand Up @@ -449,7 +450,7 @@ annotations:

The sample service account can be found [here](https://github.com/openebs/openebs/blob/master/k8s/ci/maya/volume/cstor/service-account.yaml).

<h3><a class="anchor" aria-hidden="true" id="cStorStoragePool-Anti-Affinity"></a>cStorStoragePool Anti-Affinity</h3>
<h3><a class="anchor" aria-hidden="true" id="cStorStoragePool-Anti-Affinity"></a>cStorStoragePool Replica Anti-Affinity</h3>

This policy will adds the ability in cStor to correlate and hence distribute single replica volumes across pools which are in turn deployed in separate nodes when application consuming all these volumes is deployed as a StatefulSet.

Expand Down

0 comments on commit b31eb31

Please sign in to comment.