github.com/sentienttechnologies/studio-go-runner@v0.0.0-20201118202441-6d21f2ced8ee/examples/azure/nvidia-device-plugin-ds-1.11.yaml (about)

     1  # Copyright (c) 2019-2020 Cognizant Digital Business, Evolutionary AI. All rights reserved. Issued under the Apache 2.0 License.
     2  apiVersion: extensions/v1beta1
     3  kind: DaemonSet
     4  metadata:
     5    name: nvidia-device-plugin-daemonset
     6    namespace: gpu-resources
     7  spec:
     8    updateStrategy:
     9      type: RollingUpdate
    10    template:
    11      metadata:
    12        # Mark this pod as a critical add-on; when enabled, the critical add-on scheduler
    13        # reserves resources for critical add-on pods so that they can be rescheduled after
    14        # a failure.  This annotation works in tandem with the toleration below.
    15        annotations:
    16          scheduler.alpha.kubernetes.io/critical-pod: ""
    17        labels:
    18          name: nvidia-device-plugin-ds
    19      spec:
    20        tolerations:
    21        # Allow this pod to be rescheduled while the node is in "critical add-ons only" mode.
    22        # This, along with the annotation above marks this pod as a critical add-on.
    23        - key: CriticalAddonsOnly
    24          operator: Exists
    25        - key: nvidia.com/gpu
    26          operator: Exists
    27          effect: NoSchedule
    28        containers:
    29        - image: nvidia/k8s-device-plugin:1.11
    30          name: nvidia-device-plugin-ctr
    31          securityContext:
    32            allowPrivilegeEscalation: false
    33            capabilities:
    34              drop: ["ALL"]
    35          volumeMounts:
    36            - name: device-plugin
    37              mountPath: /var/lib/kubelet/device-plugins
    38        volumes:
    39          - name: device-plugin
    40            hostPath:
    41              path: /var/lib/kubelet/device-plugins