71 lines
1.8 KiB
Django/Jinja
71 lines
1.8 KiB
Django/Jinja
# SRIOV device CNI plugin
|
|
# Based on:
|
|
# https://github.com/intel/sriov-cni/blob/master/images/sriov-cni-daemonset.yaml
|
|
#
|
|
# The following modifications have been made:
|
|
#
|
|
# - A nodeSelector of 'sriovdp' has been added to ensure the sriov device plugin
|
|
# pods only run on appropriately labelled nodes.
|
|
# - The config hostPath is explicitly set to 'File'
|
|
# - The daemonset is modified to tolerate all NoSchedule taints
|
|
---
|
|
apiVersion: v1
|
|
kind: ServiceAccount
|
|
metadata:
|
|
name: sriov-device-plugin
|
|
namespace: kube-system
|
|
|
|
---
|
|
apiVersion: extensions/v1beta1
|
|
kind: DaemonSet
|
|
metadata:
|
|
name: kube-sriov-device-plugin-amd64
|
|
namespace: kube-system
|
|
labels:
|
|
tier: node
|
|
app: sriovdp
|
|
spec:
|
|
template:
|
|
metadata:
|
|
labels:
|
|
tier: node
|
|
app: sriovdp
|
|
spec:
|
|
nodeSelector:
|
|
beta.kubernetes.io/arch: amd64
|
|
sriovdp: enabled
|
|
tolerations:
|
|
- operator: Exists
|
|
effect: NoSchedule
|
|
serviceAccountName: sriov-device-plugin
|
|
imagePullSecrets:
|
|
- name: docker-registry-secret
|
|
containers:
|
|
- name: kube-sriovdp
|
|
image: "{{ docker_registry.url }}/starlingx/k8s-plugins-sriov-network-device:master-centos-stable-latest"
|
|
args:
|
|
- --log-level=10
|
|
securityContext:
|
|
privileged: false
|
|
volumeMounts:
|
|
- name: devicesock
|
|
mountPath: /var/lib/kubelet/device-plugins/
|
|
readOnly: false
|
|
- name: sysfs
|
|
mountPath: /sys
|
|
readOnly: true
|
|
- name: config
|
|
mountPath: /etc/pcidp/config.json
|
|
readOnly: true
|
|
volumes:
|
|
- name: devicesock
|
|
hostPath:
|
|
path: /var/lib/kubelet/device-plugins/
|
|
- name: sysfs
|
|
hostPath:
|
|
path: /sys
|
|
- name: config
|
|
hostPath:
|
|
path: /etc/pcidp/config.json
|
|
type: File
|