Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge nvidia-gpu-device-plugin and nvidia-device-plugin. #19545

Merged
Show file tree
Hide file tree
Changes from 6 commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
6319af2
Initial Commit.
RamBITS-AI Aug 30, 2024
cd8327c
Update validations.go
RamBITS-AI Aug 30, 2024
938f6f0
Removing isKVMDriverForNVIDIA from validations for nvidia-gpu-device-…
RamBITS-AI Aug 31, 2024
b282913
Messages, Warnings and In-line Code Comments w.r.t the merger.
RamBITS-AI Aug 31, 2024
9491f8d
Update addons.go
RamBITS-AI Aug 31, 2024
7ee5901
Merged nvidia-device-plugin addon into nvidia-gpu-device-plugin addon.
RamBITS-AI Sep 6, 2024
28e7805
Merge branch 'master' into merge_nvidia-gpu-device-plugin__and__nvidi…
RamBITS-AI Oct 4, 2024
1a0ef3c
Reverting nvidia-gpu-device-plugin to nvidia-device-plugin.
RamBITS-AI Oct 4, 2024
a98eefe
Reverting nvidia-gpu-device-plugin to nvidia-device-plugin.
RamBITS-AI Oct 4, 2024
f5c192e
Reverting nvidia-gpu-device-plugin to nvidia-device-plugin.
RamBITS-AI Oct 4, 2024
d6e4419
Reverting nvidia-gpu-device-plugin to nvidia-device-plugin.
RamBITS-AI Oct 4, 2024
d4d2a46
Reverting nvidia-gpu-device-plugin to nvidia-device-plugin.
RamBITS-AI Oct 4, 2024
b1ab86b
Reverting nvidia-gpu-device-plugin to nvidia-device-plugin.
RamBITS-AI Oct 4, 2024
a0f915e
Merging deploy\addons\gpu\nvidia-gpu-device-plugin.yaml.tmpl into dep…
RamBITS-AI Oct 4, 2024
4be65dc
Update nvidia-device-plugin.yaml.tmpl
RamBITS-AI Oct 4, 2024
8db684b
Revert "Update nvidia-device-plugin.yaml.tmpl"
RamBITS-AI Oct 4, 2024
e7141bc
dev volume added.
RamBITS-AI Oct 4, 2024
69bab32
Update nvidia-device-plugin.yaml.tmpl
RamBITS-AI Dec 16, 2024
6aec15c
Update nvidia-device-plugin.yaml.tmpl
RamBITS-AI Dec 18, 2024
9ade6fe
Update nvidia-device-plugin.yaml.tmpl
RamBITS-AI Dec 18, 2024
72b1672
Update nvidia-device-plugin.yaml.tmpl
RamBITS-AI Dec 18, 2024
51859e4
Update addons.go
RamBITS-AI Dec 18, 2024
2741016
Update addons.go
RamBITS-AI Dec 18, 2024
a88b4b4
Update config.go
RamBITS-AI Dec 18, 2024
aced019
Update config.go
RamBITS-AI Dec 18, 2024
d779481
Update config.go
RamBITS-AI Dec 18, 2024
cf3c03f
Update config.go
RamBITS-AI Dec 18, 2024
7debb54
Update Makefile
RamBITS-AI Dec 19, 2024
1db9a87
Update Makefile
RamBITS-AI Dec 19, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions deploy/addons/gpu/nvidia-gpu-device-plugin.yaml.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,9 @@ spec:
- image: {{.CustomRegistries.NvidiaDevicePlugin | default .ImageRepository | default .Registries.NvidiaDevicePlugin }}{{.Images.NvidiaDevicePlugin}}
command: ["/usr/bin/nvidia-gpu-device-plugin", "-logtostderr"]
name: nvidia-gpu-device-plugin
env:
- name: FAIL_ON_INIT_ERROR
value: "false"
resources:
requests:
cpu: 50m
Expand Down
4 changes: 4 additions & 0 deletions pkg/addons/addons.go
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,8 @@ func preStartMessages(name, value string) {
out.Styled(style.Warning, "The ambassador addon has stopped working as of v1.23.0, for more details visit: https://github.com/datawire/ambassador-operator/issues/73")
case "olm":
out.Styled(style.Warning, "The OLM addon has stopped working, for more details visit: https://github.com/operator-framework/operator-lifecycle-manager/issues/2534")
case "nvidia-device-plugin":
out.Styled(style.Warning, "The nvidia-device-plugin addon is deprecated and it's functionality is merged inside of nvidia-gpu-device-plugin addon. It will be removed in a future release. Please use the nvidia-gpu-device-plugin addon instead. For more details, visit: https://github.com/kubernetes/minikube/issues/19114.")
}
}

Expand Down Expand Up @@ -163,6 +165,8 @@ func Deprecations(name string) (bool, string, string) {
return true, "metrics-server", "using metrics-server addon, heapster is deprecated"
case "efk":
return true, "", "The current images used in the efk addon contain Log4j vulnerabilities, the addon will be disabled until images are updated, see: https://github.com/kubernetes/minikube/issues/15280"
case "nvidia-device-plugin":
return true, "nvidia-gpu-device-plugin", "The nvidia-device-plugin addon is deprecated and it's functionality is merged inside of nvidia-gpu-device-plugin addon. It will be removed in a future release. Please use the nvidia-gpu-device-plugin addon instead. For more details, visit: https://github.com/kubernetes/minikube/issues/19114."
}
return false, "", ""
}
Expand Down
8 changes: 4 additions & 4 deletions pkg/addons/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -131,10 +131,9 @@ var Addons = []*Addon{
callbacks: []setFn{EnableOrDisableAddon},
},
{
name: "nvidia-gpu-device-plugin",
set: SetBool,
validations: []setFn{isKVMDriverForNVIDIA},
callbacks: []setFn{EnableOrDisableAddon},
name: "nvidia-gpu-device-plugin",
set: SetBool,
callbacks: []setFn{EnableOrDisableAddon},
},
{
name: "olm",
Expand Down Expand Up @@ -235,6 +234,7 @@ var Addons = []*Addon{
callbacks: []setFn{EnableOrDisableAddon},
},
{
// The nvidia-device-plugin addon is deprecated and it's functionality is merged inside of nvidia-gpu-device-plugin addon.
name: "nvidia-device-plugin",
set: SetBool,
callbacks: []setFn{EnableOrDisableAddon},
Expand Down
2 changes: 1 addition & 1 deletion pkg/minikube/cruntime/docker.go
Original file line number Diff line number Diff line change
Expand Up @@ -581,7 +581,7 @@ func (r *Docker) configureDocker(driver string) error {
StorageDriver: "overlay2",
}
if r.GPUs {
assets.Addons["nvidia-device-plugin"].EnableByDefault()
assets.Addons["nvidia-gpu-device-plugin"].EnableByDefault()
daemonConfig.DefaultRuntime = "nvidia"
runtimes := &dockerDaemonRuntimes{}
runtimes.Nvidia.Path = "/usr/bin/nvidia-container-runtime"
Expand Down
3 changes: 2 additions & 1 deletion site/content/en/docs/tutorials/nvidia.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,8 +59,9 @@ to expose GPUs with `--driver=kvm`. Please don't mix these instructions.

- Install NVIDIA's device plugin:
```shell
minikube addons enable nvidia-device-plugin
minikube addons enable nvidia-gpu-device-plugin
```
NOTE: `nvidia-device-plugin` addon has been deprecated and it's functionality is merged inside of `nvidia-gpu-device-plugin` addon.
{{% /tab %}}
{{% tab kvm %}}
## Using the kvm driver
Expand Down
8 changes: 4 additions & 4 deletions test/integration/addons_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ func TestAddons(t *testing.T) {
// so we override that here to let minikube auto-detect appropriate cgroup driver
os.Setenv(constants.MinikubeForceSystemdEnv, "")

args := append([]string{"start", "-p", profile, "--wait=true", "--memory=4000", "--alsologtostderr", "--addons=registry", "--addons=metrics-server", "--addons=volumesnapshots", "--addons=csi-hostpath-driver", "--addons=gcp-auth", "--addons=cloud-spanner", "--addons=inspektor-gadget", "--addons=storage-provisioner-rancher", "--addons=nvidia-device-plugin", "--addons=yakd", "--addons=volcano"}, StartArgs()...)
args := append([]string{"start", "-p", profile, "--wait=true", "--memory=4000", "--alsologtostderr", "--addons=registry", "--addons=metrics-server", "--addons=volumesnapshots", "--addons=csi-hostpath-driver", "--addons=gcp-auth", "--addons=cloud-spanner", "--addons=inspektor-gadget", "--addons=storage-provisioner-rancher", "--addons=nvidia-gpu-device-plugin", "--addons=yakd", "--addons=volcano"}, StartArgs()...)
if !NoneDriver() { // none driver does not support ingress
args = append(args, "--addons=ingress", "--addons=ingress-dns")
}
Expand Down Expand Up @@ -1054,15 +1054,15 @@ func validateDisablingAddonOnNonExistingCluster(ctx context.Context, t *testing.
}
}

// validateNvidiaDevicePlugin tests the nvidia-device-plugin addon by ensuring the pod comes up and the addon disables
// validateNvidiaDevicePlugin tests the nvidia-gpu-device-plugin addon by ensuring the pod comes up and the addon disables
func validateNvidiaDevicePlugin(ctx context.Context, t *testing.T, profile string) {
defer PostMortemLogs(t, profile)

if _, err := PodWait(ctx, t, profile, "kube-system", "name=nvidia-device-plugin-ds", Minutes(6)); err != nil {
t.Fatalf("failed waiting for nvidia-device-plugin-ds pod: %v", err)
}
if rr, err := Run(t, exec.CommandContext(ctx, Target(), "addons", "disable", "nvidia-device-plugin", "-p", profile)); err != nil {
t.Errorf("failed to disable nvidia-device-plugin: args %q : %v", rr.Command(), err)
if rr, err := Run(t, exec.CommandContext(ctx, Target(), "addons", "disable", "nvidia-gpu-device-plugin", "-p", profile)); err != nil {
t.Errorf("failed to disable nvidia-gpu-device-plugin: args %q : %v", rr.Command(), err)
}
}

Expand Down