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.

NetCheckerTargetsConfig

Available since MCC 2.30.0 (21.0.0 and 20.0.0)

This section describes the NetCheckerTargetsConfig custom resource (CR) used in the network connectivity monitoring API for target clusters. The NetCheckerTargetsConfig object is automatically created and managed by netchecker-controller on the target cluster in the netchecker namespace. The name of the object is hardcoded to mcc-netchecker-targets-config.

Warning

Do not manually create or delete the NetCheckerTargetsConfig object to prevent overwriting by netchecker-controller. You can only reconfigure the existing object if you enable manual configuration as described in Manual configuration of network infrastructure monitoring.

The NetCheckerTargetsConfig object includes information of per-node targets (other nodes) to be checked by a specific node and using the defined list of subnets. For more details, see Infrastructure connectivity monitoring.

For demonstration purposes, the NetCheckerTargetsConfig CR is split into the following sections:

NetCheckerTargetsConfig metadata

The NetCheckerTargetsConfig CR metadata contains the following fields:

  • apiVersion

    API version of the object that is cnnc.mirantis.com/v1alpha1.

  • kind

    Object type that is NetCheckerTargetsConfig.

  • metadata

    Object metadata that contains the following subfields:

    • name

      Object name.

    • namespace

      Project in which the NetCheckerTargetsConfig object is created.

Metadata example:

apiVersion: cnnc.mirantis.com/v1alpha1
kind: NetCheckerTargetsConfig
metadata:
  name: nctc-sample
  namespace: default

NetCheckerTargetsConfig spec

The spec object field contains configuration for a NetCheckerTargetsConfig object and has the following fields:

  • nodesConfig

    List of per-node configuration. Contains the following fields:

    • nodeName

      Node name.

    • nodeSelector

      Selector for cluster nodes. If a group of nodes has the same targets, these targets may be grouped by the node selector.

    • targets

      List of target nodes with subnets selected for connectivity monitoring. Contains the following fields:

      • nodeName

        Name of the target node.

      • nodeSelector

        Node selector to group target nodes.

      • subnetTags

        List of subnet tags to be used for connectivity monitoring. IP addresses from these subnets will be used as targets for ping checks.

NetCheckerTargetsConfig configuration example:

spec:
  nodesConfig:
  - nodeName: master-0
    targets:
    - nodeName: master-1
      subnetTags:
      - default/k8s-lcm-nics
      - default/k8s-pxe-nics
    - nodeName: master-2
      subnetTags:
      - default/k8s-lcm-nics
      - default/k8s-pxe-nics
  - nodeName: master-1
    targets:
    - nodeName: master-0
      subnetTags:
      - default/k8s-lcm-nics
      - default/k8s-pxe-nics
    - nodeName: master-2
      subnetTags:
      - default/k8s-lcm-nics
      - default/k8s-pxe-nics
  - nodeName: master-2
    targets:
    - nodeName: master-0
      subnetTags:
      - default/k8s-lcm-nics
      - default/k8s-pxe-nics
    - nodeName: master-1
      subnetTags:
      - default/k8s-lcm-nics
      - default/k8s-pxe-nics

NetCheckerTargetsConfig status

The status field of the NetCheckerTargetsConfig object contains the current state of the object:

  • nodes

    List of per-node statuses. Contains the following fields:

    • name

      Node name.

    • error

      Error message in case of issues with obtaining node information. Otherwise, this field is omitted.

    • targetsCount

      Amount of targets (nodes and subnets) for a particular node.

    • objectHelperInfo

      Information on how to obtain the Netchecker agent configuration for a particular node.

  • error

    Summary of per-node errors, if any.

NetCheckerTargetsConfig status example:

status:
  nodes:
  - name: master-0
    objectHelperInfo: kubectl -n netchecker get cm -o yaml net-checker-agent-config-master-0
    targetsCount: "4"
  - name: master-1
    objectHelperInfo: kubectl -n netchecker get cm -o yaml net-checker-agent-config-master-1
    targetsCount: "4"
  - name: master-2
    objectHelperInfo: kubectl -n netchecker get cm -o yaml net-checker-agent-config-master-2
    targetsCount: "4"