canonical / microk8s-core-addons

Core MicroK8s addons
Apache License 2.0
43 stars 34 forks source link

GPU addon is not available on ARM Microk8s #254

Open gustavosr98 opened 10 months ago

gustavosr98 commented 10 months ago

Summary

GPU addon is not available on ARM Microk8s

What Should Happen Instead?

Be able to install GPU add-on

Reproduction Steps

Ubuntu amd64

$ uname -p
x86_64

$ microk8s status | grep gpu
    gpu                  # (core) Automatic enablement of Nvidia CUDA

Ubuntu arm (Same result on Nvidia DPU BFB and standard Ubuntu arm)

$ uname -p
aarch64

$ microk8s enable gpu
Addon gpu was not found in any repository

$ microk8s status
microk8s is running
high-availability: no
  datastore master nodes: 127.0.0.1:19001
  datastore standby nodes: none
addons:
  enabled:
    dns                  # (core) CoreDNS
    ha-cluster           # (core) Configure high availability on the current node
    helm                 # (core) Helm - the package manager for Kubernetes
    helm3                # (core) Helm 3 - the package manager for Kubernetes
    hostpath-storage     # (core) Storage class; allocates storage from host directory
    ingress              # (core) Ingress controller for external access
    metallb              # (core) Loadbalancer for your Kubernetes cluster
    storage              # (core) Alias to hostpath-storage add-on, deprecated
  disabled:
    cert-manager         # (core) Cloud native certificate management
    community            # (core) The community addons repository
    dashboard            # (core) The Kubernetes dashboard
    host-access          # (core) Allow Pods connecting to Host services smoothly
    kube-ovn             # (core) An advanced network fabric for Kubernetes
    mayastor             # (core) OpenEBS MayaStor
    metrics-server       # (core) K8s Metrics Server for API access to service metrics
    minio                # (core) MinIO object storage
    observability        # (core) A lightweight observability stack for logs, traces and metrics
    prometheus           # (core) Prometheus operator for monitoring and logging
    rbac                 # (core) Role-Based Access Control for authorisation
    registry             # (core) Private image registry exposed on localhost:32000
gustavosr98 commented 10 months ago

Workaround for the add-on not being available This worked for Ubuntu Server ARM https://microk8s.io/docs/addon-gpu#microk8s-121-12 https://gist.github.com/neoaggelos/a4244cc92f76599b0d8febfeae3a28a8

However, there is a customer that requires this on Ubuntu Core ARM I would believe these manual steps will not work on Core that needs everything to be a snap