This section describes what is tested as part of GitOps node customization targeted for the VMware Telco Cloud Automation version 3.2 release.

nodeConfiguration

kernel

This includes all the kernel specific customizations.

kernelType

name and version

config:   
   nodeConfiguration:  
   kernel:    
      kernelType:      
         name: linux-rt      
         version: 6.1.62-2.ph5

kernel Args

config:   
   nodeConfiguration:    
      kernel:      
         kernelArgs:        
            - key: noswap        
            - key: softlockup_panic        
            - key: pcie_aspm.policy          
              value: performance        
            - key: intel_idle.max_cstate          
              value: 1        
            - key: fsck.mode          
              value: force        
            - key: fsck.repair          
              value: 'yes'        
            - key: processor.max_cstate          
              value: 1        
            - key: intel_pstate          
              value: disable        
            - key: isolcpus          
              value: 2-{{tca.node.vmNumCPUs}}        
            - key: skew_tick          
              value: 1        
            - key: irqaffinity          
              value: 0-1        
            - key: selinux        
            - key: enforcing        
            - key: nohz          
              value: 'on'

kernel modules

config:   
   nodeConfiguration:  
   kernel:      

customPackages

config:   
  nodeConfiguration:  
  kernel:     
    customPackages:        
       - name: linuxptp          
         version: 4.0-1.ph5        
       - name: stalld          
         version: 1.17.1-3.ph5        
       - name: tuned          
         version: 2.19.0-10.ph5

Network

deviceType vmxnet3

config:   
  nodeConfiguration:  
  iommuEnabled: false  
  network:    
    devices:      
       - deviceType: vmxnet3        
         networkName: DPortGroup
         <--- This needs to be 
              replaced by the   
          network name available   
             on the setup                            
          resourceName: vlan1        
          interfaceName: vlan1        
          derivedFromCsar: false      
         - deviceType: vmxnet3        
           networkName: VSAN-ha2                      
           <--- This needs to be replaced 
           by the network name available 
           on the setup        
           resourceName: vlan2        
           interfaceName: vlan2        
           derivedFromCsar: false      
           - deviceType: sriov        
             networkName: HA2-vmotion                   
             <--- This needs to be replaced 
             by the network name available on 
             the setup         
             resourceName: sriovpass

sriov with driver

config:   
  nodeConfiguration:    
     network        
        - deviceType: sriov              
               networkName: NFS-HAAS-vlan3104              
               resourceName: sriovvfio              
               targetDriver: vfio-pci

Services

config:   
   nodeConfiguration:   
      services:      
      - name: stalld

Other specifications

config:  
   nodeConfiguration:    
       iommuEnabled: true    
       latencySensitivity: low    
       latestVmHardwareVersion: true    
       isNumaConfigNeeded: true

Additional config

config:   
   nodeConfiguration:    
      additionalConfig:      
         - name: tuned        
           value: '[{"name":"realtime"}]'

File injection

The files that are to be injected needs to be in the git repository (provided during the gitOps configuration) under the artifacts folder under the path specified for the DIP repository for the specific revision.

config:   
   nodeConfiguration:       
      fileInjection:      
         - content: realtime-variables.conf        
           path: /etc/tuned/realtime-variables.conf      
         - content: testnf-stalld.conf        
           path: /etc/sysconfig/stalld

Conditional Specs

The conditional specs can include any config supported above along with the condition.

config:  
   conditionalSpecs:    
     -nodeConfiguration:        
          kernel:          
             kernelType:            
                name: linux-rt            
                version: 4.19.295-4.ph3          
            kernelArgs:            
                - key: noswap            
                - key: softlockup_panic            
                - key: pcie_aspm.policy              
                  value: performance            
                - key: intel_idle.max_cstate              
                  value: 1            
                - key: fsck.mode              
                  value: force            
                - key: fsck.repair              
                  value: 'yes'            
                - key: processor.max_cstate              
                  value: 1            
                - key: intel_pstate              
                  value: disable            
                - key: isolcpus              
                  value: 2-{{tca.node.vmNumCPUs}}            
                - key: skew_tick              
                  value: 1            
                - key: irqaffinity              
                  value: 0-1            
                - key: selinux            
                - key: enforcing            
                - key: nohz              
                  value: 'on'            
                - key: nohz_full              
                  value: 2-{{tca.node.vmNumCPUs}}            
                - key: rcu_nocb_poll              
                  value: 1            
                - key: rcu_nocbs              
                  value: 2-{{tca.node.vmNumCPUs}}            
                  - key: idle              
                  value: halt            
                - key: default_hugepagesz              
                  value: 1G            
                - key: hugepagesz              
                  value: 1G            
                - key: hugepages              
                  value: 8            
                - key: intel_iommu              
                  value: 'on'            
                - key: iommu              
                  value: pt            
                - key: kthreads_cpu              
                  value: 0-1            
                - key: clock              
                  value: tsc            
                - key: clocksource              
                  value: tsc            
                - key: tsc              
                  value: reliable          
                  customPackages:            
                - name: linuxptp              
                  version: 4.0-2.ph3            
                - name: stalld              
                  version: 1.3.0-9.ph3            
                - name: linux-rt-drivers-intel-ice-1.12.7              
                  version: 4.19.295-4.ph3            
                - name: linuxplinux-rt-drivers-intel-iavf-4.9.1tp 
                  version: 4.19.295-4.ph3            
                - name: linux-rt-drivers-intel-i40e 2.23.17 
                 version: 4.19.295-4.ph3            
                - name: tuned              
                  version: 2.13.0-3.ph3        
            iommuEnabled: true        
            latencySensitivity: low        
            latestVmHardwareVersion: true        
            isNumaConfigNeeded: true        
            network:          
               devices:            
                 - deviceType: vmxnet3              
                   networkName: DPortGroup                    
                   <--- This needs to be replaced by the network name    
                   available on the setup              
                   resourceName: vlan1              
                   interfaceName: vlan1              
                   derivedFromCsar: false            
               - deviceType: vmxnet3              
                  networkName: VSAN-ha2                      
                  <--- This needs to be replaced by the network name     
                  available on the setup              
                  resourceName: vlan2              
                  interfaceName: vlan2              
                  derivedFromCsar: false            
             - deviceType: sriov              
               networkName: HA2-vmotion                   
               <--- This needs to be replaced by the network name  
                    available on the setup              
               resourceName: sriovpass        
               conditions: [os.major=3]        
               services:          
                  - name: stalld        
                    additionalConfig:          
                  - name: tuned            
                    value: '[{"name":"realtime"}]'          
                    fileInjection:          
                      - content: realtime-variables.conf            
                         path: /etc/tuned/realtime-  
                         variables.conf          
                     -  content: testnf-stalld.conf            
                        path: /etc/sysconfig/stalld