From dbb9385ce7bf0ccc53ecc179d20771ed2d16fe8f Mon Sep 17 00:00:00 2001 From: SeanOMik Date: Wed, 14 Aug 2024 16:23:36 -0400 Subject: [PATCH] feat: add NFD and intel-gpu --- cluster/core/intel-gpu/files/gpu-plugin.yaml | 25 +++++++++++++++++++ cluster/core/intel-gpu/files/helm-repos.yaml | 8 ++++++ .../files/intel-device-plugins-operator.yaml | 23 +++++++++++++++++ .../core/intel-gpu/files/kustomization.yaml | 7 ++++++ cluster/core/intel-gpu/files/namespace.yaml | 4 +++ cluster/core/intel-gpu/ks.yaml | 21 ++++++++++++++++ cluster/core/kustomization.yaml | 4 ++- cluster/core/nfd/files/helm-repos.yaml | 8 ++++++ cluster/core/nfd/files/kustomization.yaml | 5 ++++ cluster/core/nfd/files/nfd.yaml | 19 ++++++++++++++ cluster/core/nfd/ks.yaml | 18 +++++++++++++ 11 files changed, 141 insertions(+), 1 deletion(-) create mode 100644 cluster/core/intel-gpu/files/gpu-plugin.yaml create mode 100644 cluster/core/intel-gpu/files/helm-repos.yaml create mode 100644 cluster/core/intel-gpu/files/intel-device-plugins-operator.yaml create mode 100644 cluster/core/intel-gpu/files/kustomization.yaml create mode 100644 cluster/core/intel-gpu/files/namespace.yaml create mode 100644 cluster/core/intel-gpu/ks.yaml create mode 100644 cluster/core/nfd/files/helm-repos.yaml create mode 100644 cluster/core/nfd/files/kustomization.yaml create mode 100644 cluster/core/nfd/files/nfd.yaml create mode 100644 cluster/core/nfd/ks.yaml diff --git a/cluster/core/intel-gpu/files/gpu-plugin.yaml b/cluster/core/intel-gpu/files/gpu-plugin.yaml new file mode 100644 index 0000000..f0927e6 --- /dev/null +++ b/cluster/core/intel-gpu/files/gpu-plugin.yaml @@ -0,0 +1,25 @@ +# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/helm.toolkit.fluxcd.io/helmrelease_v2.json +apiVersion: helm.toolkit.fluxcd.io/v2 +kind: HelmRelease +metadata: + name: intel-gpu-plugin + namespace: intel-gpu +spec: + interval: 5m + chart: + spec: + chart: intel-device-plugins-gpu + version: 0.30.0 + sourceRef: + kind: HelmRepository + name: intel + namespace: flux-system + + dependsOn: + - name: intel-device-operator + namespace: intel-gpu + + values: + name: intel-gpu-plugin + sharedDevNum: 3 + nodeFeatureRule: true \ No newline at end of file diff --git a/cluster/core/intel-gpu/files/helm-repos.yaml b/cluster/core/intel-gpu/files/helm-repos.yaml new file mode 100644 index 0000000..5951981 --- /dev/null +++ b/cluster/core/intel-gpu/files/helm-repos.yaml @@ -0,0 +1,8 @@ +apiVersion: source.toolkit.fluxcd.io/v1 +kind: HelmRepository +metadata: + name: intel + namespace: flux-system +spec: + interval: 1m + url: https://intel.github.io/helm-charts \ No newline at end of file diff --git a/cluster/core/intel-gpu/files/intel-device-plugins-operator.yaml b/cluster/core/intel-gpu/files/intel-device-plugins-operator.yaml new file mode 100644 index 0000000..94269c1 --- /dev/null +++ b/cluster/core/intel-gpu/files/intel-device-plugins-operator.yaml @@ -0,0 +1,23 @@ +# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/helm.toolkit.fluxcd.io/helmrelease_v2.json +apiVersion: helm.toolkit.fluxcd.io/v2 +kind: HelmRelease +metadata: + name: intel-device-operator + namespace: intel-gpu +spec: + interval: 5m + chart: + spec: + chart: intel-device-plugins-operator + version: 0.30.0 + sourceRef: + kind: HelmRepository + name: intel + namespace: flux-system + + dependsOn: + - name: nfd + namespace: kube-system + + values: + \ No newline at end of file diff --git a/cluster/core/intel-gpu/files/kustomization.yaml b/cluster/core/intel-gpu/files/kustomization.yaml new file mode 100644 index 0000000..ed55e76 --- /dev/null +++ b/cluster/core/intel-gpu/files/kustomization.yaml @@ -0,0 +1,7 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: +- helm-repos.yaml +- namespace.yaml +- intel-device-plugins-operator.yaml +- gpu-plugin.yaml \ No newline at end of file diff --git a/cluster/core/intel-gpu/files/namespace.yaml b/cluster/core/intel-gpu/files/namespace.yaml new file mode 100644 index 0000000..691ccb6 --- /dev/null +++ b/cluster/core/intel-gpu/files/namespace.yaml @@ -0,0 +1,4 @@ +apiVersion: v1 +kind: Namespace +metadata: + name: intel-gpu \ No newline at end of file diff --git a/cluster/core/intel-gpu/ks.yaml b/cluster/core/intel-gpu/ks.yaml new file mode 100644 index 0000000..17914a7 --- /dev/null +++ b/cluster/core/intel-gpu/ks.yaml @@ -0,0 +1,21 @@ +# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json +apiVersion: kustomize.toolkit.fluxcd.io/v1 +kind: Kustomization +metadata: + name: cluster-secrets + namespace: flux-system +spec: + timeout: 5m + interval: 10m + path: ./cluster/core/intel-gpu + prune: true + sourceRef: + kind: GitRepository + name: home-cluster + decryption: + provider: sops + secretRef: + name: sops-gpg + dependsOn: + - name: nfd + namespace: flux-system \ No newline at end of file diff --git a/cluster/core/kustomization.yaml b/cluster/core/kustomization.yaml index ac10ea5..9b95d87 100644 --- a/cluster/core/kustomization.yaml +++ b/cluster/core/kustomization.yaml @@ -6,4 +6,6 @@ resources: - ./cert-manager - ./networking - ./storage -- ./kube-replicator \ No newline at end of file +- ./kube-replicator +- ./nfd +- ./intel-gpu \ No newline at end of file diff --git a/cluster/core/nfd/files/helm-repos.yaml b/cluster/core/nfd/files/helm-repos.yaml new file mode 100644 index 0000000..d2ad852 --- /dev/null +++ b/cluster/core/nfd/files/helm-repos.yaml @@ -0,0 +1,8 @@ +apiVersion: source.toolkit.fluxcd.io/v1 +kind: HelmRepository +metadata: + name: nfd-charts + namespace: flux-system +spec: + interval: 1m + url: https://kubernetes-sigs.github.io/node-feature-discovery/charts \ No newline at end of file diff --git a/cluster/core/nfd/files/kustomization.yaml b/cluster/core/nfd/files/kustomization.yaml new file mode 100644 index 0000000..93d6304 --- /dev/null +++ b/cluster/core/nfd/files/kustomization.yaml @@ -0,0 +1,5 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: +- helm-repos.yaml +- nfd.yaml \ No newline at end of file diff --git a/cluster/core/nfd/files/nfd.yaml b/cluster/core/nfd/files/nfd.yaml new file mode 100644 index 0000000..432fbe3 --- /dev/null +++ b/cluster/core/nfd/files/nfd.yaml @@ -0,0 +1,19 @@ +# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/helm.toolkit.fluxcd.io/helmrelease_v2.json +apiVersion: helm.toolkit.fluxcd.io/v2 +kind: HelmRelease +metadata: + name: nfd + namespace: kube-system +spec: + interval: 5m + chart: + spec: + chart: node-feature-discovery + version: v0.16.3 + sourceRef: + kind: HelmRepository + name: nfd-charts + namespace: flux-system + + values: + \ No newline at end of file diff --git a/cluster/core/nfd/ks.yaml b/cluster/core/nfd/ks.yaml new file mode 100644 index 0000000..ad2ae9e --- /dev/null +++ b/cluster/core/nfd/ks.yaml @@ -0,0 +1,18 @@ +# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json +apiVersion: kustomize.toolkit.fluxcd.io/v1 +kind: Kustomization +metadata: + name: nfd + namespace: flux-system +spec: + timeout: 5m + interval: 10m + path: ./cluster/nfd/files + prune: true + sourceRef: + kind: GitRepository + name: home-cluster + decryption: + provider: sops + secretRef: + name: sops-gpg \ No newline at end of file