Support Single huge page size for openstack worker node
Kubernetes only supports a single huge page size per worker node. Prior to kubernetes 1.15, the huge page feature could be disabled via a feature gate. In kubernetes 1.15, the feature gate has been removed so huge page support is always on in k8s. This update removes the conditional disabling of the hugepage feature and enforces the provisioning of a single page size per worker. When vswitch type is set to ovs-dpdk or avs, the application huge pages size goes with the vswitch huge pages size. This update also changes the auto-provisioning of VM huge pages to 1G as there is no auto-provisioning in virtual environment. Story: 2006295 Task: 36006 Change-Id: I84d4959b420584fdcdf8a8664a6f4855c08ec989 Signed-off-by: Tao Liu <tao.liu@windriver.com>
This commit is contained in:
parent
af1d792ae2
commit
2265ba2a65
puppet-manifests/src/modules/platform
@ -115,11 +115,10 @@ class platform::kubernetes::kubeadm {
|
||||
$k8s_registry = 'k8s.gcr.io'
|
||||
}
|
||||
|
||||
# Configure kubelet hugepage and cpumanager options
|
||||
# Configure kubelet cpumanager options
|
||||
if str2bool($::is_worker_subfunction)
|
||||
and !('openstack-compute-node'
|
||||
in $host_labels) {
|
||||
$k8s_hugepage = true
|
||||
$k8s_cpu_manager_opts = join([
|
||||
'--cpu-manager-policy=static',
|
||||
'--system-reserved-cgroup=/system.slice',
|
||||
@ -129,12 +128,11 @@ class platform::kubernetes::kubeadm {
|
||||
"memory=${k8s_reserved_mem}Mi"])
|
||||
], ' ')
|
||||
} else {
|
||||
$k8s_hugepage = false
|
||||
$k8s_cpu_manager_opts = '--cpu-manager-policy=none'
|
||||
}
|
||||
|
||||
# Enable kubelet extra parameters that are node specific such as
|
||||
# hugepages and cpumanager
|
||||
# cpumanager
|
||||
file { '/etc/sysconfig/kubelet':
|
||||
ensure => file,
|
||||
content => template('platform/kubelet.conf.erb'),
|
||||
|
@ -41,8 +41,6 @@ apiVersion: kubelet.config.k8s.io/v1beta1
|
||||
configMapAndSecretChangeDetectionStrategy: Cache
|
||||
nodeStatusUpdateFrequency: "4s"
|
||||
failSwapOn: false
|
||||
featureGates:
|
||||
HugePages: false
|
||||
cgroupRoot: "/k8s-infra"
|
||||
---
|
||||
kind: KubeProxyConfiguration
|
||||
|
@ -1,2 +1,2 @@
|
||||
# Overrides config file for kubelet
|
||||
KUBELET_EXTRA_ARGS=--node-ip=<%= @node_ip %> --feature-gates=HugePages=<%= @k8s_hugepage %> <%= @k8s_cpu_manager_opts %>
|
||||
KUBELET_EXTRA_ARGS=--node-ip=<%= @node_ip %> <%= @k8s_cpu_manager_opts %>
|
||||
|
Loading…
x
Reference in New Issue
Block a user