Mirantis Container Cloud (MCC) becomes part of Mirantis OpenStack for Kubernetes (MOSK)!

Starting with MOSK 25.2, the MOSK documentation set covers all product layers, including MOSK management (formerly MCC). This means everything you need is in one place. The separate MCC documentation site will be retired, so please update your bookmarks for continued easy access to the latest content.

Enable network infrastructure monitoring

Available since MCC 2.30.0 (21.0.0 and 20.0.0)

Using the InfraConnectivityMonitor resource, you can enable network infrastructure monitoring to monitor network connectivity between management or MOSK cluster nodes using ping checks. The operator can use the monitoring data to correlate the major software stack issues with the underlying infrastructure outages as well as identify the weakest points of the software stack to make it more resilient. For implementation details, see Infrastructure connectivity monitoring.

By default, all components of network infrastructure monitoring run on any cluster, and StackLight is pre-configured to collect metrics from monitoring agents. So you only need to create and configure the InfraConnectivityMonitor object to start network infrastructure monitoring on the required MOSK cluster.

You can also adjust the initial auto-generated configuration to optimize network monitoring coverage, if required.

To enable network infrastructure monitoring on the target cluster:

  1. On the management cluster, create an InfraConnectivityMonitor object using the following example:

    apiVersion: kaas.mirantis.com/v1alpha1
    kind: InfraConnectivityMonitor
    metadata:
      name: icm-object-name
      namespace: default
    spec:
       targetCluster: mosk-cluster-name
    
  2. Optional. Select specific machines where network infrastructure monitoring must run by specifying the machine selector. Machines that do not match this selector will be excluded from monitoring.

    apiVersion: kaas.mirantis.com/v1alpha1
    kind: InfraConnectivityMonitor
    metadata:
      name: icm-object-name
      namespace: default
    spec:
      targetCluster: mosk-cluster-name
      machineSelector:
        matchLabels:
          label-name: "label-value"
    

    Wait several minutes for netchecker-controller to prepare all related objects in the target cluster and collect statuses of these objects.

  3. Verify that the InfraConnectivityMonitor status contains no errors. Otherwise, investigate error messages and fix the issues.

    Also, verify statuses of CheckerInventoryConfig and NetCheckerTargetsConfig objects. For description of status fields, see CheckerInventoryConfig and NetCheckerTargetsConfig.

    Status example of a successful configuration:

    status:
      inventoryConfigStatus:
        nodes:
        - machineName: master-0
          nodeName: master-0
          status: ok
        - machineName: master-1
          nodeName: master-1
          status: ok
        - machineName: master-2
          nodeName: master-2
          status: ok
        statusMsg: ok
      targetsConfigStatus:
        nodes:
        - machineName: master-0
          nodeName: master-0
          status: ok
          targetsCount: "4"
        - machineName: master-1
          nodeName: master-1
          status: ok
          targetsCount: "4"
        - machineName: master-2
          nodeName: master-2
          status: ok
          targetsCount: "4"
        statusMsg: ok
    

Manual configuration of network infrastructure monitoring

The default configuration of network infrastructure monitoring is based on Machine, L2Template, and Subnet objects related to the target cluster. The netchecker-controller attempts to collect as much information from these objects as possible to include all nodes and subnets into monitoring and prepare configuration with all collected data.

If such default configuration is not enough or, on the contrary, is too wide-ranging, you can manually configure network infrastructure monitoring.

To manually configure network infrastructure monitoring:

  1. In the InfraConnectivityMonitor object, add the kaas.mirantis.com/skip-netchecker-config-updates annotation.

    apiVersion: kaas.mirantis.com/v1alpha1
    kind: InfraConnectivityMonitor
    metadata:
      annotations:
        "kaas.mirantis.com/skip-netchecker-config-updates": "true"
      name: icm-object-name
      namespace: default
    spec:
      targetCluster: mosk-cluster-name
      machineSelector:
        matchLabels:
          label-name: "label-value"
    

    The annotation disables automatic management of InfraConnectivityMonitor, CheckerInventoryConfig, and NetCheckerTargetsConfig objects by netchecker-controller.

  2. Manually apply the required changes to the CheckerInventoryConfig and NetCheckerTargetsConfig objects. They will not be overwritten while the annotation defined in the previous step is set. The status of these objects will not be propagated to the InfraConnectivityMonitor status anymore.

    Note

    Always keep the InfraConnectivityMonitor object on the management cluster, even if you manually manage the configuration.