Skip to content

Commit bc57200

Browse files
committed
Merge branch 'upstream-bump-version' into 'master'
Bump version to 1.0.0-beta5 See merge request nvidia/kubernetes/device-plugin!23
2 parents 5a9f3c3 + c4be4be commit bc57200

File tree

5 files changed

+80
-8
lines changed

5 files changed

+80
-8
lines changed

README.md

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ Once you have enabled this option on *all* the GPU nodes you wish to use,
7070
you can then enable GPU support in your cluster by deploying the following Daemonset:
7171

7272
```shell
73-
$ kubectl create -f https://raw.githubusercontent.com/NVIDIA/k8s-device-plugin/1.0.0-beta4/nvidia-device-plugin.yml
73+
$ kubectl create -f https://raw.githubusercontent.com/NVIDIA/k8s-device-plugin/1.0.0-beta5/nvidia-device-plugin.yml
7474
```
7575

7676
### Running GPU Jobs
@@ -115,24 +115,24 @@ The next sections are focused on building the device plugin and running it.
115115
#### Build
116116
Option 1, pull the prebuilt image from [Docker Hub](https://hub.docker.com/r/nvidia/k8s-device-plugin):
117117
```shell
118-
$ docker pull nvidia/k8s-device-plugin:1.0.0-beta4
118+
$ docker pull nvidia/k8s-device-plugin:1.0.0-beta5
119119
```
120120

121121
Option 2, build without cloning the repository:
122122
```shell
123-
$ docker build -t nvidia/k8s-device-plugin:1.0.0-beta4 https://github.com/NVIDIA/k8s-device-plugin.git#1.0.0-beta4
123+
$ docker build -t nvidia/k8s-device-plugin:1.0.0-beta5 https://github.com/NVIDIA/k8s-device-plugin.git#1.0.0-beta5
124124
```
125125

126126
Option 3, if you want to modify the code:
127127
```shell
128128
$ git clone https://github.com/NVIDIA/k8s-device-plugin.git && cd k8s-device-plugin
129-
$ git checkout 1.0.0-beta4
130-
$ docker build -t nvidia/k8s-device-plugin:1.0.0-beta4 .
129+
$ git checkout 1.0.0-beta5
130+
$ docker build -t nvidia/k8s-device-plugin:1.0.0-beta5 .
131131
```
132132

133133
#### Run locally
134134
```shell
135-
$ docker run --security-opt=no-new-privileges --cap-drop=ALL --network=none -it -v /var/lib/kubelet/device-plugins:/var/lib/kubelet/device-plugins nvidia/k8s-device-plugin:1.0.0-beta4
135+
$ docker run --security-opt=no-new-privileges --cap-drop=ALL --network=none -it -v /var/lib/kubelet/device-plugins:/var/lib/kubelet/device-plugins nvidia/k8s-device-plugin:1.0.0-beta5
136136
```
137137

138138
#### Deploy as Daemon Set:
@@ -154,6 +154,17 @@ $ ./k8s-device-plugin
154154

155155
## Changelog
156156

157+
### Version 1.0.0-beta5
158+
159+
- Add a new plugin.yml variant that is compatible with the CPUManager
160+
- Change CMD in Dockerfile to ENTRYPOINT
161+
- Add flag to optionally return list of device nodes in Allocate() call
162+
- Refactor device plugin to eventually handle multiple resource types
163+
- Move plugin error retry to event loop so we can exit with a signal
164+
- Update all vendored dependencies to their latest versions
165+
- Fix bug that was inadvertently *always* disabling health checks
166+
- Update minimal driver version to 384.81
167+
157168
### Version 1.0.0-beta4
158169

159170
- Fixes a bug with a nil pointer dereference around `getDevices:CPUAffinity`

RELEASE.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ Publishing the container is automated through gitlab-ci and only requires on to
1111
- [ ] Update the README changelog
1212

1313
- [ ] Update the device plugin (1.16+) to use the new container version (nvidia-device-plugin.yml)
14+
- [ ] Update the device plugin compatible with the CPUManager (1.16+) to use the new container version (nvidia-device-plugin-compat-with-cpumanager.yml)
1415
- [ ] Update the legacy device plugin (pre 1.16) to use the new container version (extensions-v1beta1-nvidia-device-plugin.yml)
1516
- [ ] Commit, Tag and Push to Gitlab
1617
- [ ] Trigger the [multi arch manifest CI](https://gitlab.com/nvidia/container-images/dockerhub-manifests)

extensions-v1beta1-nvidia-device-plugin.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ spec:
4343
# See https://kubernetes.io/docs/tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods/
4444
priorityClassName: "system-node-critical"
4545
containers:
46-
- image: nvidia/k8s-device-plugin:1.0.0-beta4
46+
- image: nvidia/k8s-device-plugin:1.0.0-beta5
4747
name: nvidia-device-plugin-ctr
4848
securityContext:
4949
allowPrivilegeEscalation: false
Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
# Copyright (c) 2019, NVIDIA CORPORATION. All rights reserved.
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
apiVersion: apps/v1
16+
kind: DaemonSet
17+
metadata:
18+
name: nvidia-device-plugin-daemonset
19+
namespace: kube-system
20+
spec:
21+
selector:
22+
matchLabels:
23+
name: nvidia-device-plugin-ds
24+
updateStrategy:
25+
type: RollingUpdate
26+
template:
27+
metadata:
28+
# This annotation is deprecated. Kept here for backward compatibility
29+
# See https://kubernetes.io/docs/tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods/
30+
annotations:
31+
scheduler.alpha.kubernetes.io/critical-pod: ""
32+
labels:
33+
name: nvidia-device-plugin-ds
34+
spec:
35+
tolerations:
36+
# This toleration is deprecated. Kept here for backward compatibility
37+
# See https://kubernetes.io/docs/tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods/
38+
- key: CriticalAddonsOnly
39+
operator: Exists
40+
- key: nvidia.com/gpu
41+
operator: Exists
42+
effect: NoSchedule
43+
# Mark this pod as a critical add-on; when enabled, the critical add-on
44+
# scheduler reserves resources for critical add-on pods so that they can
45+
# be rescheduled after a failure.
46+
# See https://kubernetes.io/docs/tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods/
47+
priorityClassName: "system-node-critical"
48+
containers:
49+
- image: nvidia/k8s-device-plugin:1.0.0-beta5
50+
name: nvidia-device-plugin-ctr
51+
args: ["--pass-device-specs"]
52+
securityContext:
53+
privileged: true
54+
volumeMounts:
55+
- name: device-plugin
56+
mountPath: /var/lib/kubelet/device-plugins
57+
volumes:
58+
- name: device-plugin
59+
hostPath:
60+
path: /var/lib/kubelet/device-plugins

nvidia-device-plugin.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ spec:
4646
# See https://kubernetes.io/docs/tasks/administer-cluster/guaranteed-scheduling-critical-addon-pods/
4747
priorityClassName: "system-node-critical"
4848
containers:
49-
- image: nvidia/k8s-device-plugin:1.0.0-beta4
49+
- image: nvidia/k8s-device-plugin:1.0.0-beta5
5050
name: nvidia-device-plugin-ctr
5151
securityContext:
5252
allowPrivilegeEscalation: false

0 commit comments

Comments
 (0)