Skip to content

Instantly share code, notes, and snippets.

@hatamiarash7
Created March 11, 2020 10:10
Show Gist options
  • Save hatamiarash7/ae7fcc9c7155722df77ebbf459d467f5 to your computer and use it in GitHub Desktop.
Save hatamiarash7/ae7fcc9c7155722df77ebbf459d467f5 to your computer and use it in GitHub Desktop.

Revisions

  1. hatamiarash7 created this gist Mar 11, 2020.
    46 changes: 46 additions & 0 deletions daemon.yml
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,46 @@
    apiVersion: apps/v1
    kind: DaemonSet
    metadata:
    namespace: kube-system
    name: sysctl
    spec:
    selector:
    matchLabels:
    app: sysctl
    template:
    metadata:
    labels:
    app: sysctl
    spec:
    volumes:
    - name: sys
    hostPath:
    path: /sys
    initContainers:
    - name: disable-thp
    image: busybox
    command: ["sh", "-c"]
    args:
    - |-
    set -e
    set -o pipefail
    echo never > /rootfs/sys/kernel/mm/transparent_hugepage/enabled
    echo never > /rootfs/sys/kernel/mm/transparent_hugepage/defrag
    grep -q -F [never] /sys/kernel/mm/transparent_hugepage/enabled
    grep -q -F [never] /sys/kernel/mm/transparent_hugepage/defrag
    volumeMounts:
    - name: sys
    mountPath: /rootfs/sys
    - name: label-node
    image: wardsco/kubectl:1.11
    command: ["kubectl"]
    args: ["label", "node", "--overwrite", "$(NODE_NAME)", "sysctl/mm.transparent_hugepage.enabled=never", "sysctl/mm.transparent_hugepage.defrag=never"]
    env:
    - name: NODE_NAME
    valueFrom:
    fieldRef:
    fieldPath: spec.nodeName
    containers:
    - name: sleep
    image: wardsco/sleep
    imagePullPolicy: IfNotPresent