Prepare Cluster Configuration File

To set the cluster configuration file, do the following tasks:

  1. Get details of VMware vCenter.

  2. Get IP Addresses for deployer and cluster.

  3. Add VMware vCenter environment configuration.

  4. Add deployer configuration.

  5. Add cluster configuration.

  6. Add Cisco Smart PHY CIN configuration.

Cluster Configuration File

Place the configuration file in the staging directory. This configuration file is in the standard YAML language format, with the following three sections:

  • Environments

  • Deployers

  • Clusters (Smart PHY multi-node/single-node)

Each section can contain multiple items. Replace <...> with actual values.

VMware vCenter Environment Configuration

This section provides details of the VMware vCenter access and network access for creating and provisioning the deployers and cluster virtual machines.


environments:
  <environment name>:
      server: <vCenter name or IP address>
      username: <vCenter user name>
      datacenter: <vCenter datacenter name>
      cluster: <vCenter cluster name>
      nics: [ <LIST of vCenter networks> ]
      nameservers: [ <LIST of DNS servers> ]
      search-domains: [ <LIST of search domains ]
      ntp: <ntp server name or IP address>
      https-proxy: <HTTP proxy server>
      no-proxy: <list of domains not using proxy>

Guidelines for configuring the VMware vCenter environment:

  • The environment name can have only lowercase letters, digits, and hyphens (-).

  • The NIC's list must have only one network, although the NIC configuration allows multiple networks. This network is used as the management network in the deployer or cluster that refers to this environment.

  • Configure multiple environments for this vCenter if your vCenter has more than one network that serves as a management network. One for each network. In addition, refer to the corresponding environment in the deployer or cluster based on the management network it uses.

  • Make sure the NIC's name-servers and search-domains fields are configured as lists.

Deployer Configuration

Before creating and deploying a deployer, define a minimum of one environment.

deployers:
  <deployer name>:
      environment: <environment of vCenter hosting the deployer>
      address: <deployer VM IP address in CIDR format>
      gateway: <gateway IP address>
      username: <user name for deployer>
      # SSH private-key-file with path relative to the staging directory
      # If the line is missing, ssh private key will be auto-generated and saved inside .sec/
      private-key-file: <path and filename for ssh private key>
      host: <ESXi host IP address>
      datastore: <vCenter datastore name for host>

Guidelines for configuring the deployer:

  • The name of the deployer can have only lowercase letters, digits, and hyphens (-).

  • The private-key-file field, when present, should refer to the SSH private key file. This file must be in the staging directory and must not be accessible (read/write/execute) to other users.

    If the private-key-file line is missing, the deployer script generates an SSH private key for the deployer and places it in the .sec subdirectory under the staging directory. The filename is <deployer-name>_auto.pem.

  • To avoid resource contention, do not run the deployer in an ESXi server that serves any Cisco Smart PHY cluster.

Cluster Configuration

Before creating and deploying a cluster, configure one environment and one deployer. A cluster has an environment field to reference to its corresponding environment.


clusters:
 <SMI cluster name>
   type: "smartphy"
   environment: <environment of vCenter hosting the SMI cluster>
   gateway: <gateway IP address>
   username: <user name for the SMI cluster>
   # SSH private-key-file with path relative to the staging directory
   # If the line is missing, ssh private key will be auto-generated and saved inside .sec/
   private-key-file: <path and filename for ssh private key>
   # The following two fields are for multi-node cluster only
   master-vip: <virtual IP address for the management network in CIDR format>
   vrouter-id: <VRRP ID for the management network>
   # ingress-hostname only supports '.' and alphanumeric characters
   ingress-hostname: "smartphy.example.com"

   # For Multi-Node cluster only
   nodes:
    - host: <ESXi host 1 IP address>
     addresses: [ <CONTROL-PLANE 1 IP>, <ETCD 1 IP>, <INTRA 1 IP>, <OPS 1 IP> ]
     datastore: <vCenter datastore for host 1>
     ops:
      interfaces:
       - vip: [ <LIST of virtual IP for CIN network in CIDR format> ]
         vrouter-id: <VRRP ID for CIN network>
         addresses: [ <LIST of IP addresses for CIN network in CIDR format> ]
         nics: <vCenter network for CIN>
         # CIN routing table (optional)
         routes:
          - { dest: [ <LIST of destination subnets> ], nhop: <next hop IP> }
          - { dest: [ <LIST of destination subnets> ], nhop: <next hop IP> }
    - host: <ESXi host 2 IP address>
      addresses: [ <CONTROL-PLANE 2 IP>, <ETCD 2 IP>, <INTRA 2 IP>, <OPS 2 IP> ]
      datastore: <vCenter datastore for host 2>
      ops:
       interfaces:
        - addresses: [ <LIST of IP addresses for CIN network in CIDR format> ]
    - host: <ESXi host 3 IP address>
      addresses: [ <CONTROL-PLANE 3 IP>, <ETCD 3 IP>, <INTRA 3 IP>, <OPS 3 IP> ]
      datastore: <vCenter datastore for host 3>
      ops:
       interfaces:
        - addresses: [ <LIST of IP addresses for CIN network in CIDR format> ]

   # For Single-Node cluster only
     nodes:
      - host: <ESXi host IP address>
        addresses: [ <AIO VM IP address> ]
        datastore: <vCenter datastore for host>
        ops:
         interfaces:
          - addresses: [ <LIST of IP addresses for CIN network in CIDR format> ]
            nics: <vCenter network for CIN>
            routes:
             - { dest: [ <LIST of destination subnets> ], nhop: <next hop IP> }
             - { dest: [ <LIST of destination subnets> ], nhop: <next hop IP> }

Command

Description

<cluster name>

Cluster name.

type

Use smartphy for Cisco Smart PHY cluster.

environment

Reference to vCenter environment.

gateway

Gateway for the cluster nodes.

username

Username of the cluster.

private-key-file

SSH private-key-file with the path relative to the staging directory.

If the line is missing, the SSH private key will be auto-generated and saved inside .sec/.

master-vip

Promary virtual IP address in CIDR format (multinode only).

vrouter-id

VRRP ID for management network (multinode only).

ingress-hostname

Fully Qualified Domain Name (FQDN) assigned to the cluster. Only alphanumeric characters and period (.) are allowed.

Your authoritative DNS server must be configured to resolve the specified FQDN and the following subdomains:
  • cli.smartphy-data-ops-center.<fqdn>

  • restconf.smartphy-data-ops-center.<fqdn>

  • cli.opshub-data-ops-center.<fqdn>

  • restconf.opshub-data-ops-center.<fqdn>

  • cli.cee-data-ops-center.<fqdn>

  • restconf.cee-data-ops-center.<fqdn>

  • grafana.<fqdn>

Alternatively, if your authoritative DNS server supports wildcards, you must configure the DNS to resolve the specified FQDN and a wildcard record covering the subdomains listed here.

If you do not specify an FQDN:

  • The cluster IP address is used to generate an FQDN leveraging nip.io as the domain and top-level domain (TLD). For example, if the IP address of the cluster is 10.0.0.2, the generated FQDN is 10.0.0.2.nip.io. The subdomains listed here are also leveraged.

  • Your DNS servers must allow the resolution of the nip.io domain. If resolution of nip.io is blocked, you cannot access the cluster.

- host

ESXi IP address where VMs are hosted

addresses

IP addresses assigned to control-plane, etcd, infra and docsis or operations nodes respectively

CIN Configuration

- vip

Virtual IP address in CIDR format.

vrouter-id

VRRP ID for CIN.

addresses

CIN IP addresses in CIDR format.

nics

vCenter NICs for CIN.

For Single-Node cluster

- host

ESXi IP address where VM is hosted.

ops

Cisco Smart PHY CIN configuration.

Guidelines for configuring a cluster:

  • The name of the cluster can have only lowercase letters, digits, and hyphens (-).

  • The private-key-file field, when present, should refer to the SSH private key file. This file must be in the staging directory and must not be accessible (read/write/execute) to other users.

    If the private-key-file line is missing, the deployer script generates an SSH private key for the cluster and places it in the .sec subdirectory under the staging directory. The filename is <cluster-name>_auto.pem.

  • Configure the virtual IP address of the Smart PHY cluster and VRRP ID (vrouter-id at cluster level) for the management network for multinode clusters. The management network supports only IPv4. The vrouter-id can take values 1–254.

  • If multiple clusters share the same management subnet, the VRRP ID for each cluster must be unique in the management subnet.

VMware vCenter Details

To contact the VMware vCenter server, the deployer script and the deployer require the following details:

  • Server name or IP address

  • Username and password

  • Datacenter and cluster name

  • Host server and datastore names

    The deployer and the single-node cluster require one host server and the multinode cluster requires three host servers.

IP Addresses for Deployer and Cluster

Deploying the Cisco Smart PHY software offline requires the following IP addresses:

  • One management IP address for the deployer

  • Management IP addresses for cluster (1 for single-node, 12 for multi-node cluster)

  • CIN network IP addresses for Cisco Smart PHY (1 per CIN interfaces per Operations node)

  • One virtual IP address for management network and one for each CIN network (multi-node cluster)

Cisco Smart PHY CIN Configuration

Configure Converged Interconnect Network (CIN) for the Cisco Smart PHY cluster. One or more CIN networks can be present. Configure CIN under each node.

Guidelines for configuring CIN:

  • CIN should contain the network names (NICs) and the IP addresses (addresses).

  • The routing table (routes) is optional.

  • The virtual IP addresses (vip) and the VRRP ID (vrouter-id) fields are used only in multinode clusters. They are configured on the first node.

  • The virtual IP addresses are mandatory. You can configure up to one IPv4 and one IPv6 addresses per CIN network.

  • If multiple Smart PHY clusters share a CIN subnet, the VRRP ID should be unique for each cluster.

  • For multinode cluster, all nodes must have the same number of CIN interfaces. If the NICs or route fields are missing for the second or third nodes, the corresponding value from the first node is used.

  • You can also set up a Smart PHY cluster as backup cluster. For backup clusters, do not include any CIN configuration. The configuration should not have operations and interfaces under the nodes.

Sample Configuration Files

The examples directory contains sample configuration files for automatic deployment:

  • deploy-sample-config.yaml: Configuration file with only the deployer.

  • aio-smartphy-config.yaml: Configuration file with the deployer and the single-node Smart PHY cluster.

  • multinode-smartphy-config.yaml: Configuration file with deployer and multinode Cisco Smart PHY cluster.

  • aio-smartphy-standby-config.yaml: Configuration file with deployer and single-node Cisco Smart PHY cluster that is used for standby (without CIN config).

  • multinode-smartphy-standby-config.yaml: Configuration file with deployer and multinode Cisco Smart PHY cluster that is used as a standby (without CIN config).