Helm chart configuration#
Pelagia Helm chart contains multiple options to configure the Pelagia setup and prepare an environment for deployment.
For the complete list of available options, refer to values.yaml.
Configuration options#
The following table lists the most commonly configured Pelagia chart parameters and their default values. For an example configuration procedure, refer to Specify Rook daemons placement.
| Parameter | Description | Default |
|---|---|---|
global.dockerBaseUrl |
Global address of Docker registry. | "registry.mirantis.com" |
global.clusterRelease |
Release version of the Kubernetes cluster. | "" |
global.namespace |
Override for the chart release namespace. | "" |
productSetup |
Specifies the Kubernetes cluster setup. By default, designed for MKE. Change it for other setups. | "mke" |
cephDeployment.enabled |
Enable the Pelagia deployment controller. | true |
cephDeployment.netpolEnabled |
Enable creation of network policy. | true |
cephDeployment.installSharedNamespace |
Install a namespace for the Openstack-Ceph communication. | true |
cephDeployment.openstackSharedNamespace |
Namespace for the Openstack-Ceph communication and secrets sharing. | "openstack-ceph-shared" |
cephDeployment.drainRequestLabelKey |
Label key marking a node as drained. | "" |
cephDeployment.drainReadyLabelKey |
Label key marking a node as ready to be drained. | "" |
lcmConfig.rookNamespace |
Rook namespace name used across the Pelagia deployment. | "rook-ceph" |
lcmConfig.rgwPublicAccessServiceSelector |
Label of the service or proxy exposing RGW to public access. | "external_access=rgw" |
lcmConfig.diskDaemonPortParameter |
Port for the disk daemon API. | 9999 |
lcmConfig.diskDaemonNodeSelector |
Label for disk daemon placement. | "ceph_role_osd=true" |
lcmConfig.cephDaemonsetLabelExclude |
Label for nodes where no Ceph daemons must be scheduled. | "" |
lcmConfig.gatewayAPIEnabled |
Enable usage of the Gateway API. | true |
lcmConfig.gatewayName |
Name of the Gateway object used by default. |
"" |
lcmConfig.gatewayNamespace |
Namespace of the Gateway object used by default. |
"" |
lcmConfig.useIngress |
Deprecated. Enable support for Ingress usage. Will be removed in the following release due to Ingress deprecation. | true |
controllers.cephdeployment.replicas |
Replica count for Pelagia deployment controllers. | 3 |
controllers.lcm.replicas |
Replica count for Pelagia LCM controllers. | 3 |
cephRelease |
Pin the Ceph release for the current setup. If empty, uses the latest available release for the current version. | "" |
rook.enabled |
Enable the rook deployment using the Pelagia Helm chart. For available rook options, see values.yaml. |
true |
rook.rookConfig.rookNamespace |
Rook namespace. By default, inherited from the lcmConfig.rookNamespace value defined in the main Pelagia chart. |
"rook-ceph" |
rook.rookConfig.rookOperatorReplicas |
Replica count for Rook Operator. | 1 |
rook.rookConfig.rookOperatorPlacement.affinity |
Affinity settings for the Rook Operator placement. | {"nodeAffinity": {"preferredDuringSchedulingIgnoredDuringExecution": [{"weight": 100, "preference": {"matchExpressions": [{"key": "ceph_role_mon","operator": "In","values": ["true"]}]}}]}} |
rook.rookConfig.rookOperatorPlacement.nodeSelector |
Node selector for the Rook Operator placement. | {} |
rook.rookConfig.rookOperatorPlacement.tolerations |
Toleration settings for the Rook Operator placement. | [] |
rook.rookConfig.csiPlacement.nodeAffinity.csiprovisioner |
Node affinity settings for CSI provisioner. | "" |
rook.rookConfig.csiPlacement.nodeAffinity.csiplugin |
Node affinity settings for CSI plugins. | "ceph-daemonset-available-node=true" |
rook.rookConfig.csiPlacement.tolerations.csiprovisioner |
Toleration settings for CSI provisioner. | "" |
rook.rookConfig.csiPlacement.tolerations.csiplugin |
Toleration settings for CSI plugins. | "" |
rook.rookConfig.rookDiscoverPlacement.nodeAffinity |
Node affinity settings for the rook-discover daemon. |
"ceph-daemonset-available-node=true;ceph_role_osd=true" |
rook.rookConfig.rookDiscoverPlacement.tolerations |
Toleration settings for the rook-discover daemon. |
"" |
rook.rookConfig.csiKubeletPath |
Path to kubelet on a host. | "" |
rook.rookConfig.csiCephFsEnabled |
Enable CephFS support in Rook. | true |
rook.rookConfig.csiNfsEnabled |
Enable NFS support in Rook. | false |
rook.rookConfig.csiAddonsEnabled |
Enable CSI add-ons support in Rook. | false |
rook.rookConfig.volumeSnapshotsEnabled |
Enable volume snapshot classes support in Rook. | false |
ceph-csi-operator.enabled |
Enable the ceph-csi-operator deployment. For available ceph-csi-operator options, see values.yaml. |
true |
ceph-csi-operator.csiOperatorConfig.rookNamespace |
Rook namespace. By default, inherited from the lcmConfig.rookNamespace value defined in the main Pelagia chart. |
"rook-ceph" |
ceph-csi-operator.csiOperatorConfig.placement.affinity |
Affinity settings for the ceph-csi-operator deployment placement. |
{} |
ceph-csi-operator.csiOperatorConfig.placement.tolerations |
Tolerations for the ceph-csi-operator deployment to enable running on nodes with particular taints. |
[] |
snapshot-controller.enabled |
Enable the snapshot-controller deployment. For available snapshot-controller options, see values.yaml. |
true |
snapshot-controller.snapshotControllerConfig.affinity |
Affinity settings for the snapshot-controller placement. |
{} |
snapshot-controller.snapshotControllerConfig.nodeSelector |
Node selector for the snapshot-controller deployment to run on nodes with specific labels. |
{} |
snapshot-controller.snapshotControllerConfig.tolerations |
Tolerations for the snapshot-controller deployment to enable running on nodes with particular taints. |
[] |
Custom images and settings#
You can specify custom images for testing environments.
Ceph images are derived from the cephRelease value.
The following example illustrates available Ceph images based on the Ceph release:
images:
ceph:
repository: pelagia/ceph
tag:
latest: &latestImageCeph v20.2.1-3.release
squid: v19.2.3-25.cve
tentacle: *latestImageCeph
Also, you can specify custom settings for dependency charts, such as Rook, snapshot controller, and Ceph CSI operator if they are installed by the Pelagia chart. For example:
ceph-csi-operator:
csiOperatorConfig:
placement:
tolerations:
- effect: NoSchedule
key: node-role.kubernetes.io/controlplane
operator: Exists
rook:
rookConfig:
csiCephFsEnabled: false
csiPlacement:
tolerations:
csiplugin: |
- effect: NoSchedule
key: node-role.kubernetes.io/controlplane
operator: Exists
snapshot-controller:
snapshotControllerConfig:
nodeSelector:
disktype: ssd