Important Update: Cohesity Products Documentation
All Cohesity product documentation are now managed via the Cohesity Docs Portal: https://docs.cohesity.com/HomePage/Content/home.htm. Some documentation available here may not reflect the latest information or may no longer be accessible.
InfoScale™ for Kubernetes 9.1.0 - Linux
- Overview
- System requirements
- Preparing to install InfoScale on Containers
- Installing Arctera InfoScale on OpenShift
- Introduction
- Prerequisites
- Considerations for configuring cluster or adding nodes to an existing cluster
- Creating multiple InfoScale clusters
- InfoScale for Kubernetes with Red Hat OpenShift virtualization platform
- Installing InfoScale on a system with Internet connectivity
- Using InfoScale storage with OpenShift virtualization
- InfoScale for Kubernetes support for Two-Node Arbiter (TNA) clusters
- Installing Arctera InfoScale on Kubernetes
- Introduction
- Prerequisites
- Installing Node Feature Discovery (NFD) Operator and Cert-Manager on Kubernetes
- Downloading Installer
- Tagging the InfoScale images on Kubernetes
- Applying licenses
- Considerations for configuring cluster or adding nodes to an existing cluster
- Creating multiple InfoScale clusters
- Installing InfoScale on Kubernetes
- Undeploying and uninstalling InfoScale
- Configuring KMS-based encryption on an OpenShift cluster
- Configuring KMS-based encryption on an Kubernetes cluster
- InfoScale CSI deployment in Container environment
- CSI plugin deployment
- Raw block volume support
- Static provisioning
- Dynamic provisioning
- Resizing Persistent Volumes (CSI volume expansion)
- Snapshot provisioning (Creating volume snapshots)
- Managing InfoScale volume snapshots with Velero
- Volume cloning
- Using InfoScale with non-root containers
- Using InfoScale in SELinux environments
- CSI Drivers
- Creating CSI Objects for OpenShift
- Creating ephemeral volumes
- Creating node affine volumes
- Installing and configuring InfoScale DR Manager on OpenShift
- Installing and configuring InfoScale DR Manager on Kubernetes
- Disaster Recovery scenarios
- Configuring InfoScale
- Administering InfoScale on Containers
- Troubleshooting
Enabling kubelet inhibitor with systemd
To enable kubelet's graceful shutdown inhibitor on worker nodes, users must apply two configurations in the following order:
systemd change with machine config
Extends InhibitDelayMaxSec so systemd honors kubelet's shutdown inhibitor for the full grace period.
Kubelet Configuration shutdown grace periods
Defines how long kubelet will wait for regular and critical pods during shutdown.
Both configurations trigger MCP updates and node reboots, so they should be applied deliberately.
Note:
This must be performed only once in the lifetime of the cluster.
Perform these steps
Ensure the worker MCP contains the required label so MachineConfigs target the correct nodes:
oc label mcp worker machineconfiguration.openshift.io/role=worker
Verify labels
oc get mcp worker --show-labels
Apply the systemd override MachineConfig
This config sets InhibitDelayMaxSec=900 (15 minutes), allowing kubelet to delay shutdown properly.
Copy this butane file, change the version to OpenShift major version that is present on your cluster.
:: worker.butane variant: openshift version: 4.19.0 metadata: name: 99-worker-sysd-conf-override labels: machineconfiguration.openshift.io/role: worker storage: files: - path: /etc/systemd/logind.conf.d/50-max-delay.conf # << systemd drop in mode: 0644 overwrite: true contents: inline: | # The Machine Config Operator manages this file. [Login] InhibitDelayMaxSec=900 # << 15mConvert the butane file to MachineConfig:
butane worker.bu -o 99-worker-sysd-conf-override.yaml
Apply MachineConfig to the cluster:
oc apply -f 99-worker-sysd-conf-override.yaml
Check MCP rollout with below commands:
oc get mcp
oc get nodes
Nodes will reboot as the new systemd config is applied.
Check if status of MachineConfigPool shows as:
Updated=True Degraded=False
Apply the kubelet configuration for shutdown grace periods.
This config sets:
shutdownGracePeriod: 15m shutdownGracePeriodCriticalPods: 5m
Copy below YAML and apply:
:: mc-kubelet-config.yaml --- apiVersion: machineconfiguration.openshift.io/v1 kind: KubeletConfig metadata: name: custom-kubelet-config spec: machineConfigPoolSelector: matchLabels: machineconfiguration.openshift.io/role: worker kubeletConfig: shutdownGracePeriod: "15m" shutdownGracePeriodCriticalPods: "5m" oc apply -f mc-kubelet-config.yamlVerify custom kubeletconfig.
# oc describe kubeletconfigs.machineconfiguration.openshift.io custom-kubelet-config
Wait for MCP rollout to complete and nodes to update.
oc get mcp
oc get nodes
Check if status of MachineConfigPool shows as:
Updated=True Degraded=False
After nodes return to Ready, login to worker nodes and run:
systemd-inhibit --list
Expected output:
A kubelet entry with WHAT=shutdown and MODE=delay.