aboutsummaryrefslogtreecommitdiffstats
path: root/tools/ebpfautomation/afxdp-deploy/daemonset.yml
diff options
context:
space:
mode:
Diffstat (limited to 'tools/ebpfautomation/afxdp-deploy/daemonset.yml')
-rw-r--r--tools/ebpfautomation/afxdp-deploy/daemonset.yml135
1 files changed, 135 insertions, 0 deletions
diff --git a/tools/ebpfautomation/afxdp-deploy/daemonset.yml b/tools/ebpfautomation/afxdp-deploy/daemonset.yml
new file mode 100644
index 00000000..c2979703
--- /dev/null
+++ b/tools/ebpfautomation/afxdp-deploy/daemonset.yml
@@ -0,0 +1,135 @@
+# Copyright 2022 The Linux Foundation.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: afxdp-dp-config
+ namespace: kube-system
+data:
+ config.json: |
+ {
+ "logLevel":"debug",
+ "logFile":"afxdp-dp.log",
+ "pools":[
+ {
+ "name":"eastPool",
+ "mode":"cdq",
+ "devices":[
+ {
+ "name":"ens801f0",
+ "secondary":10
+ }
+ ]
+ },
+ {
+ "name":"westPool",
+ "mode":"cdq",
+ "devices":[
+ {
+ "name":"ens801f1"
+ "secondary":10
+
+ },
+ ]
+ }
+ ]
+ }
+---
+apiVersion: v1
+kind: ServiceAccount
+metadata:
+ name: afxdp-device-plugin
+ namespace: kube-system
+---
+apiVersion: apps/v1
+kind: DaemonSet
+metadata:
+ name: kube-afxdp-device-plugin
+ namespace: kube-system
+ labels:
+ tier: node
+ app: afxdp
+spec:
+ selector:
+ matchLabels:
+ name: afxdp-device-plugin
+ template:
+ metadata:
+ labels:
+ name: afxdp-device-plugin
+ tier: node
+ app: afxdp
+ spec:
+ hostNetwork: true
+ nodeSelector:
+ kubernetes.io/arch: amd64
+ tolerations:
+ - key: node-role.kubernetes.io/master
+ operator: Exists
+ effect: NoSchedule
+ serviceAccountName: afxdp-device-plugin
+ containers:
+ - name: kube-afxdp
+ image: afxdp-device-plugin:latest
+ imagePullPolicy: IfNotPresent
+ securityContext:
+ capabilities:
+ drop:
+ - all
+ add:
+ - SYS_ADMIN
+ - NET_ADMIN
+ resources:
+ requests:
+ cpu: "250m"
+ memory: "40Mi"
+ limits:
+ cpu: "1"
+ memory: "200Mi"
+ volumeMounts:
+ - name: unixsock
+ mountPath: /tmp/afxdp_dp/
+ - name: devicesock
+ mountPath: /var/lib/kubelet/device-plugins/
+ - name: resources
+ mountPath: /var/lib/kubelet/pod-resources/
+ - name: config-volume
+ mountPath: /afxdp/config
+ - name: log
+ mountPath: /var/log/afxdp-k8s-plugins/
+ - name: cnibin
+ mountPath: /opt/cni/bin/
+ volumes:
+ - name: unixsock
+ hostPath:
+ path: /tmp/afxdp_dp/
+ - name: devicesock
+ hostPath:
+ path: /var/lib/kubelet/device-plugins/
+ - name: resources
+ hostPath:
+ path: /var/lib/kubelet/pod-resources/
+ - name: config-volume
+ configMap:
+ name: afxdp-dp-config
+ items:
+ - key: config.json
+ path: config.json
+ - name: log
+ hostPath:
+ path: /var/log/afxdp-k8s-plugins/
+ - name: cnibin
+ hostPath:
+ path: /opt/cni/bin/