Skip to content

Instantly share code, notes, and snippets.

@munnerz
Last active June 20, 2019 10:30
Show Gist options
  • Select an option

  • Save munnerz/ae78c9b4a83c8c111365984ba23c71c9 to your computer and use it in GitHub Desktop.

Select an option

Save munnerz/ae78c9b4a83c8c111365984ba23c71c9 to your computer and use it in GitHub Desktop.
apiVersion: extensions/v1beta1
kind: DaemonSet
metadata:
name: nvidia-device-plugin-daemonset
spec:
updateStrategy:
type: RollingUpdate
template:
metadata:
# Mark this pod as a critical add-on; when enabled, the critical add-on scheduler
# reserves resources for critical add-on pods so that they can be rescheduled after
# a failure. This annotation works in tandem with the toleration below.
annotations:
scheduler.alpha.kubernetes.io/critical-pod: ""
labels:
name: nvidia-device-plugin-ds
spec:
tolerations:
# Allow this pod to be rescheduled while the node is in "critical add-ons only" mode.
# This, along with the annotation above marks this pod as a critical add-on.
- key: CriticalAddonsOnly
operator: Exists
- key: nvidia.com/gpu
operator: Exists
effect: NoSchedule
containers:
- image: nvidia/k8s-device-plugin:1.0.0-beta
name: nvidia-device-plugin-ctr
env:
# Disable healthchecking as GTX 660 does not support NVML for monitoring
- name: DP_DISABLE_HEALTHCHECKS
value: xids
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop: ["ALL"]
volumeMounts:
- name: device-plugin
mountPath: /var/lib/kubelet/device-plugins
volumes:
- name: device-plugin
hostPath:
path: /var/lib/kubelet/device-plugins
---
# Source: loki-stack/charts/promtail/templates/daemonset.yaml
apiVersion: apps/v1
kind: DaemonSet
metadata:
name: loki-promtail
labels:
app: promtail
chart: promtail-0.8.0
release: loki
heritage: Tiller
annotations:
{}
spec:
selector:
matchLabels:
app: promtail
release: loki
updateStrategy:
type: RollingUpdate
template:
metadata:
labels:
app: promtail
release: loki
annotations:
checksum/config: 5a6e52debf233e73d6641c660ff09b8d41c712b4d4d4821f2314b55922cb1768
prometheus.io/port: http-metrics
prometheus.io/scrape: "true"
spec:
serviceAccountName: loki-promtail
containers:
- name: promtail
image: "grafana/promtail:v0.1.0"
imagePullPolicy: IfNotPresent
args:
- "-config.file=/etc/promtail/promtail.yaml"
- "-client.url=http://loki:3100/api/prom/push"
volumeMounts:
- name: config
mountPath: /etc/promtail
- name: run
mountPath: /run/promtail
- mountPath: /var/lib/docker/containers
name: docker
readOnly: true
- mountPath: /var/log/pods
name: pods
readOnly: true
env:
- name: HOSTNAME
valueFrom:
fieldRef:
fieldPath: spec.nodeName
ports:
- containerPort: 3101
name: http-metrics
securityContext:
readOnlyRootFilesystem: true
runAsGroup: 0
runAsUser: 0
readinessProbe:
failureThreshold: 5
httpGet:
path: /ready
port: http-metrics
initialDelaySeconds: 10
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 1
resources:
{}
nodeSelector:
{}
affinity:
{}
tolerations:
- effect: NoSchedule
key: node-role.kubernetes.io/master
volumes:
- name: config
configMap:
name: loki-promtail
- name: run
hostPath:
path: /run/promtail
- hostPath:
path: /var/lib/docker/containers
name: docker
- hostPath:
path: /var/log/pods
name: pods
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment