From 2a28c4477c38ce787996010c56d705e7e4515d22 Mon Sep 17 00:00:00 2001 From: y00841556 Date: Fri, 3 Nov 2023 14:59:56 +0800 Subject: [PATCH] =?UTF-8?q?k8s-mpam-controller=E6=8F=92=E4=BB=B6=E4=BD=BF?= =?UTF-8?q?=E7=94=A8=E4=B8=BE=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../samples/example-config.yaml | 73 +++++++++++++++ k8s-mpam-controller/samples/example-pod.yaml | 15 ++++ .../samples/k8s-mpam-controller.yaml | 89 +++++++++++++++++++ 3 files changed, 177 insertions(+) create mode 100644 k8s-mpam-controller/samples/example-config.yaml create mode 100644 k8s-mpam-controller/samples/example-pod.yaml create mode 100644 k8s-mpam-controller/samples/k8s-mpam-controller.yaml diff --git a/k8s-mpam-controller/samples/example-config.yaml b/k8s-mpam-controller/samples/example-config.yaml new file mode 100644 index 0000000..23ac36b --- /dev/null +++ b/k8s-mpam-controller/samples/example-config.yaml @@ -0,0 +1,73 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: rc-config +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: rc-config.default + namespace: rc-config +data: + rc.conf: | + mpam: + group1: + llc: "L3:0=1ff;1=1ff;2=1ff;3=1ff" + mb: "MB:0=10;1=10;2=10;3=10" + group2: + llc: "L3:0=3ff;1=3ff;2=3ff;3=3ff" + mb: "MB:0=20;1=20;2=20;3=20" + group3: + llc: "L3:0=7ff;1=7ff;2=7ff;3=7ff" + mb: "MB:0=30;1=30;2=30;3=30" +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: rc-config.group.clx + namespace: rc-config +data: + rc.conf: | + mpam: + group1: + llc: "L3:0=1ff;1=1ff;2=1ff;3=1ff" + mb: "MB:0=40;1=40;2=40;3=40" + group2: + llc: "L3:0=3ff;1=3ff;2=3ff;3=3ff" + mb: "MB:0=50;1=50;2=50;3=50" + group3: + llc: "L3:0=7ff;1=7ff;2=7ff;3=7ff" + mb: "MB:0=60;1=60;2=60;3=60" +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: rc-config.group.icx + namespace: rc-config +data: + rc.conf: | + mpam: + group1: + llc: "L3:0=1f;1=1f;2=1f;3=1f" + group2: + llc: "L3:0=3f;1=3f;2=3f;3=3f" + group3: + llc: "L3:0=ff;1=ff;2=ff;3=ff" +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: rc-config.node.master + namespace: rc-config +data: + rc.conf: | + mpam: + group1: + llc: "L3:0=1ff;1=1ff;2=1ff;3=1ff" + mb: "MB:0=70;1=70;2=70;3=70" + group2: + llc: "L3:0=3ff;1=3ff;2=3ff;3=3ff" + mb: "MB:0=80;1=80;2=80;3=80" + group3: + llc: "L3:0=7ff;1=7ff;2=7ff;3=7ff" + mb: "MB:0=90;1=90;2=90;3=90" diff --git a/k8s-mpam-controller/samples/example-pod.yaml b/k8s-mpam-controller/samples/example-pod.yaml new file mode 100644 index 0000000..5f0c9b7 --- /dev/null +++ b/k8s-mpam-controller/samples/example-pod.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Pod +metadata: + name: nginx + labels: + rcgroup: group2 +spec: + containers: + - name: nginx + image: nginx:1.16.1 + ports: + - containerPort: 80 + hostPort: 8088 + nodeSelector: + MPAM: enabled diff --git a/k8s-mpam-controller/samples/k8s-mpam-controller.yaml b/k8s-mpam-controller/samples/k8s-mpam-controller.yaml new file mode 100644 index 0000000..7241df5 --- /dev/null +++ b/k8s-mpam-controller/samples/k8s-mpam-controller.yaml @@ -0,0 +1,89 @@ +apiVersion: v1 +kind: ServiceAccount +metadata: + name: mpam-controller-agent +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: mpam-controller-agent +rules: +- apiGroups: + - "" + resources: + - configmaps + - pods + verbs: + - get + - list + - watch +- apiGroups: + - "" + resources: + - nodes + verbs: + - get + - list + - patch + - update + - watch +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: mpam-controller-agent +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: mpam-controller-agent +subjects: +- kind: ServiceAccount + name: mpam-controller-agent + namespace: default +--- +apiVersion: apps/v1 +kind: DaemonSet +metadata: + name: mpam-controller-daemonset-agent +spec: + selector: + matchLabels: + app: k8s-mpam-controller-agent + template: + metadata: + labels: + app: k8s-mpam-controller-agent + spec: + serviceAccountName: mpam-controller-agent + hostPID: true + hostIPC: true + containers: + - name: k8s-mpam-controller-agent + image: k8s-mpam-controller:0.1 + securityContext: + privileged: true + command: ["/usr/bin/agent"] + args: ["-direct"] + env: + - name: NODE_NAME + valueFrom: + fieldRef: + apiVersion: v1 + fieldPath: spec.nodeName + volumeMounts: + - name: resctrl + mountPath: /sys/fs/resctrl/ + - name: hostname + mountPath: /etc/hostname + - name: sysfs + mountPath: /sys/fs/cgroup/ + volumes: + - name: resctrl + hostPath: + path: /sys/fs/resctrl/ + - name: hostname + hostPath: + path: /etc/hostname + - name: sysfs + hostPath: + path: /sys/fs/cgroup/ -- Gitee