# 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' --- 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: - key: node-role.kubernetes.io/master operator: Exists effect: NoSchedule serviceAccountName: sriov-device-plugin containers: - name: kube-sriovdp image: "{{ docker_registry }}/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