2 ## Copyright (c) 2020-2021 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 ##
21 #kube_version: v1.20.4
23 #kube_version: v1.18.16
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
31 # Node Feature Discovery
32 nfd_enabled: {{ bmra.features.nfd }}
33 nfd_build_image_locally: false
34 nfd_namespace: kube-system
35 nfd_sleep_interval: 60s
37 # Intel CPU Manager for Kubernetes (CMK)
38 cmk_enabled: {{ bmra.features.cmk.enable }}
39 cmk_namespace: kube-system
40 cmk_use_all_hosts: false # 'true' will deploy CMK on the controller nodes too
41 #cmk_hosts_list: node1,node2 # allows to control where CMK nodes will run, leave this option commented out to deploy on all K8s nodes
42 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
43 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
44 # cmk_shared_mode: packed # choose between: packed, spread, default: packed
45 # cmk_exclusive_mode: packed # choose between: packed, spread, default: packed
46 autogenerate_isolcpus: {{ bmra.features.isolcpus.autogenerate }}
48 # Native CPU Manager (Kubernetes built-in)
49 # Note: Enabling CMK and built-in Native CPU Manager is NOT recommended.
50 # Setting this option as "true" enables the "static" policy, otherwise the default "none" policy is used.
51 # The reserved CPU cores settings are individual per each worker node, and therefore are available to configure in the host_vars file
52 native_cpu_manager_enabled: false
54 # Enable Kubernetes built-in Topology Manager
55 topology_manager_enabled: {{ bmra.features.topology_manager.enable }}
56 # There are four supported policies: none, best-effort, restricted, single-numa-node.
57 topology_manager_policy: "{{ bmra.features.topology_manager.policy }}"
59 # Intel SRIOV Network Device Plugin
60 sriov_net_dp_enabled: {{ bmra.features.sriov_net_dp }}
61 sriov_net_dp_namespace: kube-system
62 # whether to build and store image locally or use one from public external registry
63 sriov_net_dp_build_image_locally: true
64 # SR-IOV network device plugin configuration.
65 # For more information on supported configuration refer to: https://github.com/intel/sriov-network-device-plugin#configurations
66 sriovdp_config_data: |
69 "resourceName": "intel_sriov_netdevice",
72 "devices": ["154c", "10ed", "1889"],
73 "drivers": ["iavf", "ixgbevf"]
77 "resourceName": "intel_sriov_dpdk_700_series",
80 "devices": ["154c", "10ed"],
81 "drivers": ["vfio-pci"]
85 "resourceName": "intel_sriov_dpdk_800_series",
89 "drivers": ["vfio-pci"]
93 "resourceName": "intel_fpga",
94 "deviceType": "accelerator",
103 # Intel QAT Device Plugin for Kubernetes
104 qat_dp_enabled: {{ bmra.features.qat.enable }}
105 qat_dp_namespace: kube-system
106 qat_dp_build_image_locally: true
108 # Intel GPU Device Plugin for Kubernetes
109 gpu_dp_enabled: false
110 gpu_dp_namespace: kube-system
111 gpu_dp_build_image_locally: true
113 # Intel SGX Device Plugin for Kubernetes
114 sgx_dp_enabled: false
115 sgx_dp_build_image_locally: true
116 # ProvisionLimit is a number of containers that can share
117 # the same SGX provision device.
118 sgx_dp_provision_limit: 20
119 # EnclaveLimit is a number of containers that can share the
120 # same SGX enclave device.
121 sgx_dp_enclave_limit: 20
123 # Intel Telemetry Aware Scheduling
124 tas_enabled: {{ bmra.features.tas.enable }}
125 tas_namespace: monitoring
126 # create and enable TAS demonstration policy: [true, false]
127 tas_enable_demo_policy: {{ bmra.features.tas.demo_policy }}
129 # Create reference net-attach-def objects
130 example_net_attach_defs:
131 userspace_ovs_dpdk: false # Update to match host_vars CNI configuration
132 userspace_vpp: false # Update to match host_vars CNI configuration
133 sriov_net_dp: {{ bmra.features.sriov_net_dp }} # Update to match host_vars CNI configuration
135 ## Proxy configuration ##
136 #http_proxy: "http://proxy.example.com:1080"
137 #https_proxy: "http://proxy.example.com:1080"
138 #additional_no_proxy: ".example.com,mirror_ip"
140 # (Ubuntu only) disables DNS stub listener which may cause issues on Ubuntu
141 dns_disable_stub_listener: false
143 # Kubernetes cluster name, also will be used as DNS domain
144 cluster_name: cluster.local
146 ## Kubespray variables ##
148 # default network plugins and kube-proxy configuration
149 kube_network_plugin_multus: true
150 multus_version: v3.4.2
151 kube_network_plugin: flannel
152 kube_pods_subnet: 10.244.0.0/16
153 kube_service_addresses: 10.233.0.0/18
154 kube_proxy_mode: iptables
156 # comment this line out if you want to expose k8s services of type nodePort externally.
157 kube_proxy_nodeport_addresses_cidr: 127.0.0.0/8
159 # please leave it set to "true", otherwise Intel BMRA features deployed as Helm charts won't be installed
162 # local Docker Hub mirror, if it exists
163 #docker_registry_mirrors:
164 # - http://mirror_ip:mirror_port
166 # Docker registry running on the cluster allows us to store images not avaialble on Docker Hub, e.g. CMK
167 registry_local_address: "localhost:30500"
169 # Enable Pod Security Policy. This option enables PSP admission controller and creates minimal set of rules.
170 psp_enabled: {{ bmra.features.psp }}
172 # Set image pull policy to Always. Pulls images prior to starting containers. Valid credentials must be configured.
173 always_pull_enabled: true
175 # Telemetry configuration
176 collectd_scrap_interval: 30