Update BMRA to v21.03
[kuberef.git] / playbooks / roles / bmra-config / templates / all.j2
1 ##
2 ##   Copyright (c) 2020-2021 Intel Corporation.
3 ##
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
7 ##
8 ##       http://www.apache.org/licenses/LICENSE-2.0
9 ##
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.
15 ##
16 ---
17 ## BMRA primary playbook variables ##
18
19 # Kubernetes version
20 kubernetes: true
21 #kube_version: v1.20.4
22 kube_version: v1.19.8
23 #kube_version: v1.18.16
24
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
29 update_kernel: true
30
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
36
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 }}
47
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
53
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 }}"
58
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: |
67     {
68         "resourceList": [{
69                 "resourceName": "intel_sriov_netdevice",
70                 "selectors": {
71                     "vendors": ["8086"],
72                     "devices": ["154c", "10ed", "1889"],
73                     "drivers": ["iavf", "ixgbevf"]
74                 }
75             },
76             {
77                 "resourceName": "intel_sriov_dpdk_700_series",
78                 "selectors": {
79                     "vendors": ["8086"],
80                     "devices": ["154c", "10ed"],
81                     "drivers": ["vfio-pci"]
82                 }
83             },
84             {
85                 "resourceName": "intel_sriov_dpdk_800_series",
86                 "selectors": {
87                     "vendors": ["8086"],
88                     "devices": ["1889"],
89                     "drivers": ["vfio-pci"]
90                 }
91             },
92             {
93                 "resourceName": "intel_fpga",
94                 "deviceType": "accelerator",
95                 "selectors": {
96                     "vendors": ["8086"],
97                     "devices": ["0d90"]
98                 }
99             }
100         ]
101     }
102
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
107
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
112
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
122
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 }}
128
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
134
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"
139
140 # (Ubuntu only) disables DNS stub listener which may cause issues on Ubuntu
141 dns_disable_stub_listener: false
142
143 # Kubernetes cluster name, also will be used as DNS domain
144 cluster_name: cluster.local
145
146 ## Kubespray variables ##
147
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
155
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
158
159 # please leave it set to "true", otherwise Intel BMRA features deployed as Helm charts won't be installed
160 helm_enabled: true
161
162 # local Docker Hub mirror, if it exists
163 #docker_registry_mirrors:
164 #  - http://mirror_ip:mirror_port
165
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"
168
169 # Enable Pod Security Policy. This option enables PSP admission controller and creates minimal set of rules.
170 psp_enabled: {{ bmra.features.psp }}
171
172 # Set image pull policy to Always. Pulls images prior to starting containers. Valid credentials must be configured.
173 always_pull_enabled: true
174
175 # Telemetry configuration
176 collectd_scrap_interval: 30