Configuring the vCenter Environment
To configure the vCenter environment, use the following configuration:
-
Configure the vCenter environment with the required configuration parameters through the SMI Cluster Manager CLI. A sample configuration is shown below:
environments laas vcenter server vcenter_server_ipv4_address vcenter port vcenter_port vcenter allow-self-signed-cert true (to allow self signed certs) vcenter user vcenter_username vcenter password vcenter_password vcenter datastore vcenter_host_datastore (the corresponding vcenter host datastore) vcenter cluster vcenter_cluster (the vcenter cluster containing the above host) vcenter datacenter-path datacenter_path vcenter datacenter vcenter_datacenter vcenter host vcenter_host_ipv4_address vcenter nics network_ID exit exit
ImportantYou can add each vCenter environment to one or more K8s Cluster configuration. For VMs managed in the OpenStack environment, you can use the following configuration:environments openstack manual exit
-
Configure the cluster essentials like node defaults which includes, initial boot, K8s, operating system NTP, and node configurations. In a multi-mode environment, a minimum of 3 control planes, 3 etcd, and 3 OAM (worker or product) nodes are required. The number of worker nodes and its type depends on the product that is being installed. For more information about the worker nodes and labels, see the relevant product documentation. The following example shows the cluster configuration which is not specific to any products.
NoteBased on the customer requirements, you can choose to either include or exclude the following cluster configurations:
-
Volume provisioning – Configure volume provisioning while using persistent volumes.
-
Network Proxy – Configure network proxies based on the requirements.
-
Local NTP with Authentication – For configuring local NTP server with authentication, see Configuring the Local NTP Server with Authentication and Tracking section.
-
Virtual IPs (VIPs) – Configure virtual IP addresses based on the requirements.
-
Product registry secrets – Set up secrets to protect product registries.
-
Node labels – If required, assign specific labels to nodes.
clusters <cluster_name> # associating an existing vcenter environment environment <vcenter_environment> #Example:laas # General cluster configuration configuration master-virtual-ip <keepalived_ipv4_address> configuration master-virtual-ip-cidr <netmask_of_additional_master_virtual_ip> #Default is 32 configuration master-virtual-ip-interface <interface_name> configuration additional-master-virtual-ip <ipv4_address> configuration additional-master-virtual-ip-cidr <netmask_of_additional_master_virtual_ip> #Default is 32 configuration additional-master-virtual-ip-interface <interface_name> configuration virtual-ip-vrrp-router-id <virtual_router_id> #To support multiple instances of VRRP in the same subnet configuration pod-subnet <pod_subnet> #To avoid conflict with already existing subnets configuration size <functional_test_ha/functional_test_aio/production> configuration allow-insecure-registry <true> #To allow insecure registries # istio and nginx ingress addons addons ingress bind-ip-address <keepalived_ipv4_address> addons istio enabled # vsphere volume provider configuration addons vsphere-volume-provider server <vcenter_server_ipv4_address> addons vsphere-volume-provider server-port <vcenter_port> addons vsphere-volume-provider allow-insecure <true> #To allow self signed certs addons vsphere-volume-provider user <vcenter_username> addons vsphere-volume-provider password <vcenter_password> addons vsphere-volume-provider datacenter <vcenter_datacenter> addons vsphere-volume-provider datastore <vcenter_nfs_storage> #Corresponding vcenter nfs storage addons vsphere-volume-provider network <network_id> addons vsphere-volume-provider folder <cluster_folder_containing_the_VMs> # Openstack volume provider configuration addons openstack-volume-provider username <username> addons openstack-volume-provider password <password> addons openstack-volume-provider auth-url <auth_url> addons openstack-volume-provider tenant-id <tenant_id> addons openstack-volume-provider domain-id <domain_id> # initial-boot section of node-defaults for vmware node-defaults initial-boot default-user <default_username> node-defaults initial-boot default-user-ssh-public-key <public_ssh_key> node-defaults initial-boot netplan template # initial-boot section of node-defaults for VMs managed in Openstack node-defaults initial-boot default-user <default_user> node-defaults netplan template #jinja2:variable_start_string:'__DO_NOT_ESCAPE__' , variable_end_string:'__DO_NOT_ESCAPE__' # #k8s related config of node-defaults node-defaults k8s ssh-username <default_k8s_ssh_username> node-defaults k8s ssh-connection-private-key -----BEGIN RSA PRIVATE KEY----- <SSH_Private_Key> -----END RSA PRIVATE KEY----- # os related config of node-defaults node-defaults os proxy https-proxy <https_proxy> node-defaults os proxy no-proxy <no_proxy_info> node-defaults os ntp servers <local_ntp_server> exit # node configuration of multinode cluster. vmware related info overrides the defaults provided in the environment 'laas' associated with the cluster nodes node_name #For example, etcd1 k8s node-type etcd k8s ssh-ip ipv4address k8s node-ip ipv4address vmware datastore datastore_name vmware host host_name vmware performance latency-sensitivity normal vmware performance memory-reservation false vmware performance cpu-reservation false vmware sizing ram-mb ram_size_in_mb vmware sizing cpus cpu_size vmware sizing disk-root-gb disk_root_size_in_gb vmware nics network_ID exit exit nodes node_name #For example, etcd2 k8s node-type etcd k8s ssh-ip ipv4address k8s node-ip ipv4address vmware datastore datastore_name vmware host host_name vmware performance latency-sensitivity normal vmware performance memory-reservation false vmware performance cpu-reservation false vmware sizing ram-mb ram_size_in_mb vmware sizing cpus cpu_size vmware sizing disk-root-gb disk_root_size_in_gb vmware nics network_ID exit exit nodes node_name #For example, etcd3 k8s node-type etcd k8s ssh-ip ipv4address k8s node-ip ipv4address vmware datastore datastore_name vmware host host_name vmware performance latency-sensitivity normal vmware performance memory-reservation false vmware performance cpu-reservation false vmware sizing ram-mb ram_size_in_mb vmware sizing cpus cpu_size vmware sizing disk-root-gb disk_root_size_in_gb vmware nics network_ID exit exit nodes node_name #For example, controlplane1 k8s node-type control-plane k8s ssh-ip ipv4address k8s node-ip ipv4address vmware datastore datastore_name vmware host host_name vmware performance latency-sensitivity normal vmware performance memory-reservation false vmware performance cpu-reservation false vmware sizing ram-mb ram_size_in_mb vmware sizing cpus cpu_size vmware sizing disk-root-gb disk_root_size_in_gb vmware nics network_ID exit exit nodes node_name #For example, controlplane2 k8s node-type control-plane k8s ssh-ip ipv4address k8s node-ip ipv4address vmware datastore datastore_name vmware host host_name vmware performance latency-sensitivity normal vmware performance memory-reservation false vmware performance cpu-reservation false vmware sizing ram-mb ram_size_in_mb vmware sizing cpus cpu_size vmware sizing disk-root-gb disk_root_size_in_gb vmware nics network_ID exit exit nodes node_name #For example, controlplane3 k8s node-type control-plane k8s ssh-ip ipv4address k8s node-ip ipv4address vmware datastore datastore_name vmware host host_name vmware performance latency-sensitivity normal vmware performance memory-reservation false vmware performance cpu-reservation false vmware sizing ram-mb ram_size_in_mb vmware sizing cpus cpu_size vmware sizing disk-root-gb disk_root_size_in_gb vmware nics network_ID exit exit nodes node_name #For example, oam1 k8s node-type worker k8s ssh-ip ipv4address k8s node-ip ipv4address k8s node-labels node_labels exit vmware datastore datastore_name vmware host host_name vmware performance latency-sensitivity normal vmware performance memory-reservation false vmware performance cpu-reservation false vmware sizing ram-mb ram_size_in_mb vmware sizing cpus cpu_size vmware sizing disk-root-gb disk_root_size_in_gb vmware nics network_ID exit exit nodes node_name #For example, oam2 k8s node-type worker k8s ssh-ip ipv4address k8s node-ip ipv4address k8s node-labels node_labels exit vmware datastore datastore_name vmware host host_name vmware performance latency-sensitivity normal vmware performance memory-reservation false vmware performance cpu-reservation false vmware sizing ram-mb ram_size_in_mb vmware sizing cpus cpu_size vmware sizing disk-root-gb disk_root_size_in_gb vmware nics network_ID exit exit nodes node_name #For example, oam3 k8s node-type worker k8s ssh-ip ipv4address k8s node-ip ipv4address k8s node-labels node_labels exit vmware datastore datastore_name vmware host host_name vmware performance latency-sensitivity normal vmware performance memory-reservation false vmware performance cpu-reservation false vmware sizing ram-mb ram_size_in_mb vmware sizing cpus cpu_size vmware sizing disk-root-gb disk_root_size_in_gb vmware nics network_ID exit exit nodes node_name #For example, session-data1 k8s node-type worker k8s ssh-ip ipv4address k8s node-ip ipv4address k8s node-labels node_labels #For example, smi.cisco.com/cdl-ep true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-index-1 true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-index-2 true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-slot-1 true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-slot-2 true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-slot-3 true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-slot-4 true exit k8s node-labelsnode_labels/node_type #For example, smi.cisco.com/node-type db exit k8s node-labelsnode_labels/vm_type #For example, smi.cisco.com/vm-type session exit vmware datastore datastore_name vmware host host_name vmware performance latency-sensitivity normal vmware performance memory-reservation false vmware performance cpu-reservation false vmware sizing ram-mb ram_size_in_mb vmware sizing cpus cpu_size vmware sizing disk-root-gb disk_root_size_in_gb vmware nics network_ID exit exit nodes node_name #For example, session-data2 k8s node-type worker k8s ssh-ip ipv4address k8s node-ip ipv4address k8s node-labels node_labels #For example, smi.cisco.com/cdl-ep true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-index-1 true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-index-2 true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-slot-1 true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-slot-2 true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-slot-3 true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-slot-4 true exit k8s node-labelsnode_labels/node_type #For example, smi.cisco.com/node-type db exit k8s node-labelsnode_labels/vm_type #For example, smi.cisco.com/vm-type session exit vmware datastore datastore_name vmware host host_name vmware performance latency-sensitivity normal vmware performance memory-reservation false vmware performance cpu-reservation false vmware sizing ram-mb ram_size_in_mb vmware sizing cpus cpu_size vmware sizing disk-root-gb disk_root_size_in_gb vmware nics network_ID exit exit nodes node_name #For example, session-data3 k8s node-type worker k8s ssh-ip ipv4address k8s node-ip ipv4address k8s node-labels node_labels #For example, smi.cisco.com/cdl-ep true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-index-3 true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-index-4 true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-slot-5 true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-slot-6 true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-slot-7 true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-slot-8 true exit k8s node-labelsnode_labels/node_type #For example, smi.cisco.com/node-type db exit k8s node-labelsnode_labels/vm_type #For example, smi.cisco.com/vm-type session exit vmware datastore datastore_name vmware host host_name vmware performance latency-sensitivity normal vmware performance memory-reservation false vmware performance cpu-reservation false vmware sizing ram-mb ram_size_in_mb vmware sizing cpus cpu_size vmware sizing disk-root-gb disk_root_size_in_gb vmware nics network_ID exit exit nodes node_name #For example, session-data4 k8s node-type worker k8s ssh-ip ipv4address k8s node-ip ipv4address k8s node-labels node_labels #For example, smi.cisco.com/cdl-ep true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-index-3 true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-index-4 true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-slot-5 true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-slot-6 true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-slot-7 true exit k8s node-labelsnode_labels #For example, smi.cisco.com/cdl-slot-8 true exit k8s node-labelsnode_labels/node_type #For example, smi.cisco.com/node-type db exit k8s node-labelsnode_labels/vm_type #For example, smi.cisco.com/vm-type session exit vmware datastore datastore_name vmware host host_name vmware performance latency-sensitivity normal vmware performance memory-reservation false vmware performance cpu-reservation false vmware sizing ram-mb ram_size_in_mb vmware sizing cpus cpu_size vmware sizing disk-root-gb disk_root_size_in_gb vmware nics network_ID exit exit exit # Virtual IPs virtual-ips <name> #Example: rxdiam vrrp-interface <interface_name> vrrp-router-id <router_id> ipv4-addresses <ipv4_address> mask <netmassk> broadcast <broadcast_ipv4_address> device <interface_name> exit # nodes associated with the virtual-ip hosts <node_name> #Example: smi-cluster-core-protocol1 priority <priority_value> exit hosts <node_name> #Example: smi-cluster-core-protocol2 priority <priority_value> exit exit # Secrets for product registry secrets docker-registry <secret_name> docker-server <server_name or docker_registry> docker-username <username> docker-password <password> docker-email <email> namespace <k8s_namespace> #Example: cee-voice exit ops-centers <app_name> <instance_name> #Example: cee data repository <artifactory_url> username <username> password <password> initial-boot-parameters use-volume-claims <true/false> #True to use persistent volumes and vice versa initial-boot-parameters first-boot-password <password> #First boot password for product opscenter initial-boot-parameters auto-deploy <true/false> #Auto deploys all the services of the product else deploys the opscenter only initial-boot-parameters single-node <true/false> #True for single node and false for multi node deployments initial-boot-parameters image-pull-secrets <docker_registry_secrets_name> exit exit
-
Important | For clusters managed within the OpenStack environment, you can exclude the initial-boot section of node-defaults configuration parameters. Also, replace the K8s vSphere-volume-provider configuration with K8s openstack-volume-provider configuration. |