summaryrefslogtreecommitdiffstats
path: root/playbooks/roles/bmra-config/templates/kube-node.j2
diff options
context:
space:
mode:
Diffstat (limited to 'playbooks/roles/bmra-config/templates/kube-node.j2')
-rw-r--r--playbooks/roles/bmra-config/templates/kube-node.j2128
1 files changed, 128 insertions, 0 deletions
diff --git a/playbooks/roles/bmra-config/templates/kube-node.j2 b/playbooks/roles/bmra-config/templates/kube-node.j2
new file mode 100644
index 0000000..302fa8f
--- /dev/null
+++ b/playbooks/roles/bmra-config/templates/kube-node.j2
@@ -0,0 +1,128 @@
+##
+## Copyright (c) 2020 Intel Corporation.
+##
+## Licensed under the Apache License, Version 2.0 (the "License");
+## you may not use this file except in compliance with the License.
+## You may obtain a copy of the License at
+##
+## http://www.apache.org/licenses/LICENSE-2.0
+##
+## Unless required by applicable law or agreed to in writing, software
+## distributed under the License is distributed on an "AS IS" BASIS,
+## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+## See the License for the specific language governing permissions and
+## limitations under the License.
+##
+---
+# Kubernetes node configuration
+
+# Enable SR-IOV networking related setup
+sriov_enabled: {{ bmra.features.sriov.enable }}
+
+# SR-IOV PF specific configuration list
+sriov_nics:
+{% for intf in bmra.network_roles.sriov %}
+ - name: {{ intf.name }}
+ bus_info: "{{ intf.bus_info }}"
+ device_info: "{{ intf.device_info }}"
+ sriov_numvfs: {{ bmra.features.sriov.sriov_vfs_per_port }}
+ vf_driver: {{ intf.driver }}
+{% endfor %}
+{% for intf in bmra.network_roles.sriov_dpdk %}
+ - name: {{ intf.name }}
+ bus_info: "{{ intf.bus_info }}"
+ device_info: "{{ intf.device_info }}"
+ sriov_numvfs: {{ bmra.features.sriov.sriov_dpdk_vfs_per_port }}
+ vf_driver: {{ intf.driver }}
+{% endfor %}
+
+sriov_cni_enabled: {{ bmra.features.sriov_cni }}
+
+# Bond CNI
+bond_cni_enabled: false
+
+# install DPDK
+install_dpdk: true # DPDK installation is required for sriov_enabled:true; default to false
+
+# Userspace networking
+userspace_cni_enabled: false
+ovs_dpdk_enabled: false # Should be enabled with Userspace CNI, when VPP is set to "false"; 1G hugepages required
+# CPU mask for OVS-DPDK PMD threads
+ovs_dpdk_lcore_mask: 0x1
+# Huge memory pages allocated by OVS-DPDK per NUMA node in megabytes
+# example 1: "256,512" will allocate 256MB from node 0 abd 512MB from node 1
+# example 2: "1024" will allocate 1GB fron node 0 on a single socket board, e.g. in a VM
+ovs_dpdk_socket_mem: "256,0"
+vpp_enabled: false # Should be enabled with Userspace CNI, when ovs_dpdk is set to "false"; 2M hugepages required
+
+# Set to 'true' to update i40e, ice and iavf kernel modules
+update_nic_drivers: false
+
+# Set 'true' to update NIC firmware
+update_nic_firmware: false
+
+# Additional list of NIC interfaces that the FW update will be executed on
+# NOTE: FW update will be also executed on all NICs listed in "sriov_nics[*].name"
+firmware_update_nics:
+ - intf1
+ - intf2
+
+# install Intel x700 & x800 series NICs DDP packages
+install_ddp_packages: false
+
+# set how many VFs per single QAT device PF should be created
+qat_sriov_numvfs: 16
+
+# Enables hugepages support
+hugepages_enabled: {{ bmra.features.hugepages.enable }}
+
+# Hugepage sizes available: 2M, 1G
+default_hugepage_size: {{ bmra.features.hugepages.default }}
+
+# Sets how many hugepages of each size should be created
+hugepages_1G: {{ bmra.features.hugepages.hugepages_1G }}
+hugepages_2M: {{ bmra.features.hugepages.hugepages_2M }}
+
+# CPU isolation from Linux scheduler
+isolcpus_enabled: {{ bmra.features.isolcpus.enable }}
+isolcpus: "{{ bmra.features.isolcpus.cpus }}" # Update to match group_vars requested exclusive/shared cores
+
+# Max number of processors to support (physical & logical cores)
+cpu_count: 144
+
+# Enable/Disable Intel PState scaling driver
+intel_pstate_enabled: true
+# Config options for intel_pstate: disable, passive, force, no_hwp, hwp_only, support_acpi_ppc, per_cpu_perf_limits
+intel_pstate: disable
+# Enable/Disable Intel Turbo Boost PState attribute
+turbo_boost_enabled: false
+
+# Intel Speed Select Base-Frequency configuration.
+sst_bf_configuration_enabled: false
+
+# Intel Speed Select Base-Frequency configuration for Cascade Lake (CLX) Platforms.
+# CLX support of SST-BF requires 'intel_pstate' to be 'enabled'
+# Option clx_sst_bf_mode requires sst_bf_configuration_enabled to be set to 'true'.
+# There are three configuration modes:
+# [s] Set SST-BF config (set min/max to 2700/2700 and 2100/2100)
+# [m] Set P1 on all cores (set min/max to 2300/2300)
+# [r] Revert cores to min/Turbo (set min/max to 800/3900)
+clx_sst_bf_mode: s
+
+# (CentOS 7 only) install real time kernel and related packages for flexran
+install_real_time_package: false
+
+# Telemetry configuration
+# intel_pmu plugin collects information provided by Linux perf interface.
+enable_intel_pmu_plugin: false
+# CPU Threads to be monitored by Intel PMU Plugin.
+# If the field is empty, all available cores will be monitored.
+# Please refer to https://collectd.org/wiki/index.php/Plugin:Intel_PMU for configuration details.
+intel_pmu_plugin_monitored_cores: ""
+# CPU Threads to be monitored by Intel RDT Plugin.
+# If the field is empty, all available cores will be monitored.
+# Please refer to https://collectd.org/wiki/index.php/Plugin:IntelRDT for configuration details.
+intel_rdt_plugin_monitored_cores: ""
+
+# Additional list of plugins that will be excluded from collectd deployment.
+exclude_collectd_plugins: []