You MUST modify the Kommander installer configuration file (<kommander.yaml>) before installing the Kommander component of DKP in a pre-provisioned environment.

Prepare the installer file and install Kommander:

  1. Initialize a Kommander Installer Configuration File.

  2. Edit the installer file to include configuration overrides for the rook-ceph-cluster. DKP default configuration ships ceph with PVC based storage which requires your CSI provider to support PVC with type volumeMode: Block. As this is not possible with the default local static provisioner, you can install ceph in host storage mode.

    You can choose whether Ceph’s object storage daemon (osd) pods should consume all or just some of the devices on your nodes. Include one of the following Overrides:

    1. To automatically assign all raw storage devices on all nodes to the Ceph cluster:

      rook-ceph-cluster:
          enabled: true
          values: |
            cephClusterSpec:
              storage:
                storageClassDeviceSets: []
                useAllDevices: true
                useAllNodes: true
                deviceFilter: "<<value>>"
      CODE
    2. To assign specific storage devices on all nodes to the Ceph cluster:

      rook-ceph-cluster:
          enabled: true
          values: |
            cephClusterSpec:
              storage:
                storageClassDeviceSets: []
                useAllNodes: true
                useAllDevices: false
                deviceFilter: "^sdb."
      CODE

      Note: If you want to assign specific devices to specific nodes using the deviceFilter option, refer to Specific Nodes and Devices. For general information on the deviceFilter value, refer to Storage Selection Settings.

  3. Optional: You can add other configuration overrides to your Kommander installer configuration file, for example:

  4. Run the following command by replacing the placeholder <kommander.yaml> with the name of your Kommander installer configuration file:

    dkp install kommander --installer-config <kommander.yaml> --kubeconfig=${CLUSTER_NAME}.conf
    CODE


    In the previous command, the --kubeconfig=${CLUSTER_NAME}.conf flag ensures that you set the context to install Kommander on the right cluster. For alternatives and recommendations around setting your context, refer to Provide Context for Commands with a kubeconfig File.

    TIP: Sometimes, applications require a longer period of time to deploy, which causes the installation to time out. Add the --wait-timeout <time to wait> flag and specify a period of time (for example, 1h) to allocate more time to the deployment of applications.