Prerequisites for Hosted Control Plane clusters

The prerequisites before you create virtualized or Bare Metal Hosted Control Plane clusters.

Before you begin

  • To configure LVM before the installation of the IBM Fusion Fusion Data Foundation service, create the custom configMap. For more information about how to create, see step 10.
  • To configure LVM after Fusion Data Foundation storage set up: Add drives with different capacities (compared to those used for Fusion Data Foundation storage) to any three storage nodes in the same disk slots. Ensure that the new drives are not of the same capacity as those used for the existing Fusion Data Foundation storage. Then, create a custom configMap similar to the example provided in the step 10.
  • Install and configure Fusion Data Foundation provider mode storage type on the hub cluster.
  • If you plan to install Backup & Restore service, ensure that 12 GiB memory is available post the installation.
  • The Multi-cluster IBM Fusion using Hosted Control Plane on storage is available only on platforms that support the installation of in provider mode. For more information about the support details, see Supported platforms.

Procedure

  1. From the Red Hat® Operator Catalog, install MetalLB 4.16 or higher.
    Add the MetalLB Operator to your cluster so that when a service of type LoadBalancer is added to the cluster, MetalLB can add a fault-tolerant external IP address for the service. For the procedure to install and validate MetalLB, see https://docs.openshift.com/. Go to your specific version of OpenShift® Container Platform and check MetalLB details.
    Note: When you set up the load balancer, other applications can also get the advertised addresses. You must have enough addresses for any workloads on this cluster and created OpenShift Container Platform clusters.
  2. Create MetalLB CR based on the following example:
    apiVersion: metallb.io/v1beta1
    kind: MetalLB
    metadata:
      name: metallb
      namespace: metallb-system
  3. Create an IPaddress pool.
    Note: Reserve a set of unused IPs on the same CIDR as the Bare Metal network for MetalLB. The MetalLB serves these IPs to any load-balancer service that is installed on the cluster and not just the Hosted Control Plane.

    Example:

    apiVersion: metallb.io/v1beta1
    kind: IPAddressPool
    metadata:
      name: metallb
      namespace: metallb-system
    spec:
      addresses:
      - 9.9.0.51-9.9.0.70
    Note: When you set up the load balancer, other applications can also get the advertised addresses. You must have enough addresses for any workloads on this cluster and created OpenShift Container Platform clusters.
  4. Create L2advertisement based on the following example:
    apiVersion: metallb.io/v1beta1
    kind: L2Advertisement
    metadata:
      name: l2advertisement
      namespace: metallb-system
    spec:
      ipAddressPools:
       - metallb
  5. Install Multi Cluster Engine for Kubernetes operator.
  6. Create a Multi Cluster Engine CR instance based on the following example:
    apiVersion: multicluster.openshift.io/v1
    kind: MultiClusterEngine
    metadata:
      name: multiclusterengine
    spec:
      targetNamespace: multicluster-engine
    Change the parameter values according to your environment.
  7. Wait until the Multi Cluster Hub instance is created, available, and in Running state.
    The Multi Cluster Engine instance must be available.
    Run the following command to check whether the Multi Cluster Engine instance is available.
    $ oc get multiclusterengine
    Example output:
    $ oc get multiclusterengine
    NAME STATUS AGE
    multiclusterengine Available 170m
  8. Download hosted control plane CLI from OpenShift Container Platform console:
    1. Go to the Command Line Tools page.
    2. From the Hosted Control Plane - Hosted Control Plane Command Line Interface (CLI) section, download the CLI tar and extract from archive based on your platform.
      Note: In MCE, you can use the user interface instead of CLI. However, the CLI gives more options than the user interface.
  9. To optimize etcd performance for hosted clusters on the hub cluster, configure LVM to use local drives on worker nodes as follows:
    1. Provision three dedicated drives on three separate worker nodes.
    2. Configure LVM on the worker nodes to manage the dedicated drives for etcd pods.
  10. Follow the steps to configure the LVM:

    You must configure LVM so that the hosted clusters have a good etcd performance, which requires three dedicated drives on three worker nodes.

    1. Create a configmap similar to the following example. This configmap is used by IBM Fusion to create a LVM cluster.

      Example configmap:
      kind: ConfigMap
      apiVersion: v1
      metadata:
        name: lvm-config
        namespace: ibm-spectrum-fusion-ns  
      data:
        drives: |
          - '/dev/disk/by-path/pci-0000:61:00.0-nvme-1'
        computeNodes: |
          - compute-1-ru5.rackm01.rtp.mydomain.com
          - compute-1-ru6.rackm01.rtp.mydomain.com
          - compute-1-ru7.rackm01.rtp.mydomain.com
        nodeType: compute

      The LVM cluster uses the NVMe drive /dev/disk/by-path/pci-0000:61:00.0-nvme-1 on the three compute nodes to provide PVCs for the etcd pods of the hosted clusters.

    2. To configure LVM clusters, specify the drives and nodes to be used. The drives field specifies the drives to be used for the LVM cluster. Use one or two drives per node. To specify two drives in a node, use the following format:
      drives: |
        - '/dev/disk/by-path/pci-0000:61:00.0-nvme-1'
        - '/dev/disk/by-path/pci-0000:63:00.0-nvme-1'

      The computeNodes field lists the worker nodes that provide disks for the LVM cluster. Ensure that the selected nodes are not GPU nodes.

      The nodeType field specifies the type of nodes to use for LVM clusters. Supported types are:
      1. Compute: uses disks from worker nodes.
      2. Control: uses disks from all master nodes to configure the LVM cluster.
  11. Increase the maximum number of pods per node from the default value of 250 to 500. For the procedure to update the value, see Managing the maximum number of pods per node .

What to do next

  1. Install an IBM Fusion hosted cluster and install Fusion Data Foundation on it. For the procedure to install the hosted cluster, see Installing the IBM Fusion base. For procedure to install Fusion Data Foundation on the hosted cluster, see Installing Fusion Data Foundation on a Hosted Control Plane cluster.