2 ## Copyright (c) 2020 Intel Corporation.
4 ## Licensed under the Apache License, Version 2.0 (the "License");
5 ## you may not use this file except in compliance with the License.
6 ## You may obtain a copy of the License at
8 ## http://www.apache.org/licenses/LICENSE-2.0
10 ## Unless required by applicable law or agreed to in writing, software
11 ## distributed under the License is distributed on an "AS IS" BASIS,
12 ## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 ## See the License for the specific language governing permissions and
14 ## limitations under the License.
17 ## BMRA primary playbook variables ##
22 #kube_version: v1.17.11
23 #kube_version: v1.16.14
25 # Run system-wide package update (apt dist-upgrade, yum update, ...)
26 # Note: enabling this may lead to unexpected results
27 # Tip: you can set this per host using host_vars
28 update_all_packages: false
30 # Node Feature Discovery
31 nfd_enabled: {{ bmra.features.nfd }}
32 nfd_build_image_locally: false
33 nfd_namespace: kube-system
34 nfd_sleep_interval: 60s
36 # Intel CPU Manager for Kubernetes
37 cmk_enabled: {{ bmra.features.cmk.enable }}
38 cmk_namespace: kube-system
39 cmk_use_all_hosts: false # 'true' will deploy CMK on the controller nodes too
40 #cmk_hosts_list: node1,node2 # allows to control where CMK nodes will run, leave this option commented out to deploy on all K8s nodes
41 cmk_shared_num_cores: {{ bmra.features.cmk.num_shared_cores }} # number of CPU cores to be assigned to the "shared" pool on each of the nodes
42 cmk_exclusive_num_cores: {{ bmra.features.cmk.num_exclusive_cores }} # number of CPU cores to be assigned to the "exclusive" pool on each of the nodes
43 # cmk_shared_mode: packed # choose between: packed, spread, default: packed
44 # cmk_exclusive_mode: packed # choose between: packed, spread, default: packed
46 # Native CPU Manager (Kubernetes built-in)
47 # Note: Enabling CMK and built-in CPU Manager is not recommended.
48 # Setting this option as "true" enables the "static" policy, otherwise the default "none" policy is used.
49 native_cpu_manager_enabled: false
50 # Amount of CPU cores that will be reserved for the housekeeping (2000m = 2000 millicores = 2 cores)
51 native_cpu_manager_system_reserved_cpus: 2000m
52 # Amount of CPU cores that will be reserved for Kubelet
53 native_cpu_manager_kube_reserved_cpus: 1000m
54 # Explicit list of the CPUs reserved from pods scheduling.
55 # Note: Supported only with kube_version 1.17 and newer, overrides native_cpu_manager_system_reserved_cpus and native_cpu_manager_kube_reserved_cpus.
56 #native_cpu_manager_reserved_cpus: "0,1,2"
57 # Note: All reamining unreserved CPU cores will be consumed by the workloads.
59 # Enable Kubernetes built-in Topology Manager
60 topology_manager_enabled: {{ bmra.features.topology_manager.enable }}
61 # There are four supported policies: none, best-effort, restricted, single-numa-node.
62 topology_manager_policy: "{{ bmra.features.topology_manager.policy }}"
64 # Intel SRIOV Network Device Plugin
65 sriov_net_dp_enabled: {{ bmra.features.sriov_net_dp }}
66 sriov_net_dp_namespace: kube-system
67 # whether to build and store image locally or use one from public external registry
68 sriov_net_dp_build_image_locally: false
69 # SR-IOV network device plugin configuration.
70 # For more information on supported configuration refer to: https://github.com/intel/sriov-network-device-plugin#configurations
71 sriovdp_config_data: |
74 "resourceName": "intel_sriov_netdevice",
77 "devices": ["154c", "10ed", "1889"],
78 "drivers": ["iavf", "ixgbevf"]
82 "resourceName": "intel_sriov_dpdk_700_series",
85 "devices": ["154c", "10ed"],
86 "drivers": ["vfio-pci"]
90 "resourceName": "intel_sriov_dpdk_800_series",
94 "drivers": ["vfio-pci"]
100 # Intel QAT Device Plugin for Kubernetes
101 qat_dp_enabled: false
102 qat_dp_namespace: kube-system
104 # Intel GPU Device Plugin for Kubernetes
105 gpu_dp_enabled: false
106 gpu_dp_namespace: kube-system
108 # Intel Telemetry Aware Scheduling
109 tas_enabled: {{ bmra.features.tas.enable }}
110 tas_namespace: monitoring
111 # create and enable TAS demonstration policy: [true, false]
112 tas_enable_demo_policy: {{ bmra.features.tas.demo_policy }}
114 # Create reference net-attach-def objects
115 example_net_attach_defs:
116 userspace_ovs_dpdk: false # Update to match host_vars CNI configuration
117 userspace_vpp: false # Update to match host_vars CNI configuration
118 sriov_net_dp: {{ bmra.features.sriov_net_dp }} # Update to match host_vars CNI configuration
120 ## Proxy configuration ##
121 #http_proxy: "http://proxy.example.com:1080"
122 #https_proxy: "http://proxy.example.com:1080"
123 #additional_no_proxy: ".example.com"
125 # (Ubuntu only) disables DNS stub listener which may cause issues on Ubuntu
126 dns_disable_stub_listener: false
128 # Kubernetes cluster name, also will be used as DNS domain
129 cluster_name: cluster.local
131 ## Kubespray variables ##
133 # default network plugins and kube-proxy configuration
134 kube_network_plugin_multus: true
135 multus_version: v3.4.2
136 kube_network_plugin: flannel
137 kube_pods_subnet: 10.244.0.0/16
138 kube_service_addresses: 10.233.0.0/18
139 kube_proxy_mode: iptables
141 # please leave it set to "true", otherwise Intel BMRA features deployed as Helm charts won't be installed
144 # Docker registry running on the cluster allows us to store images not avaialble on Docker Hub, e.g. CMK
145 registry_local_address: "localhost:30500"
147 # Enable Pod Security Policy. This option enables PSP admission controller and creates minimal set of rules.
148 psp_enabled: {{ bmra.features.psp }}
150 # Set image pull policy to Always. Pulls images prior to starting containers. Valid credentials must be configured.
151 always_pull_enabled: true
153 # Telemetry configuration
154 collectd_scrap_interval: 30