diff --git a/build/fietsje/deps_kubernetes.go b/build/fietsje/deps_kubernetes.go
index 13b425d..c6e24d1 100644
--- a/build/fietsje/deps_kubernetes.go
+++ b/build/fietsje/deps_kubernetes.go
@@ -30,6 +30,8 @@
 		),
 		prePatches(
 			"k8s-e2e-tests-providerless.patch",
+			"k8s-fix-paths.patch",
+			"k8s-fix-logs-path.patch",
 		),
 	).inject(
 		// repo infra, not requested by k8s, but used with bazel
diff --git a/metropolis/node/core/localstorage/storage.go b/metropolis/node/core/localstorage/storage.go
index cdf2d7b..0f98209 100644
--- a/metropolis/node/core/localstorage/storage.go
+++ b/metropolis/node/core/localstorage/storage.go
@@ -114,6 +114,15 @@
 	Kubeconfig declarative.File `file:"kubeconfig"`
 	PKI        PKIDirectory     `dir:"pki"`
 
+	DevicePlugins struct {
+		declarative.Directory
+		// Used by Kubelet, hardcoded relative to DataKubernetesKubeletDirectory
+		Kubelet declarative.File `file:"kubelet.sock"`
+	} `dir:"device-plugins"`
+
+	// Pod logs, hardcoded to /data/kubelet/logs in @com_github_kubernetes//pkg/kubelet/kuberuntime:kuberuntime_manager.go
+	Logs declarative.Directory `dir:"logs"`
+
 	Plugins struct {
 		declarative.Directory
 		VFS declarative.File `file:"dev.monogon.metropolis.vfs.sock"`
diff --git a/third_party/go/patches/k8s-fix-logs-path.patch b/third_party/go/patches/k8s-fix-logs-path.patch
new file mode 100644
index 0000000..8b37544
--- /dev/null
+++ b/third_party/go/patches/k8s-fix-logs-path.patch
@@ -0,0 +1,40 @@
+Copyright 2020 The Monogon Project Authors.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+
+From 9b6bdecfd07d026eae2c1b62cc8b7b06d14292ee Mon Sep 17 00:00:00 2001
+From: Lorenz Brun <lorenz@brun.one>
+Date: Mon, 25 Jan 2021 17:20:51 +0100
+Subject: [PATCH] Change hardcoded pod logs root dir
+
+---
+ pkg/kubelet/kuberuntime/kuberuntime_manager.go | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/pkg/kubelet/kuberuntime/kuberuntime_manager.go b/pkg/kubelet/kuberuntime/kuberuntime_manager.go
+index eebba49bbbe..c24b3133bcc 100644
+--- a/pkg/kubelet/kuberuntime/kuberuntime_manager.go
++++ b/pkg/kubelet/kuberuntime/kuberuntime_manager.go
+@@ -57,7 +57,7 @@ const (
+ 	// The api version of kubelet runtime api
+ 	kubeRuntimeAPIVersion = "0.1.0"
+ 	// The root directory for pod logs
+-	podLogsRootDirectory = "/var/log/pods"
++	podLogsRootDirectory = "/data/kubelet/logs"
+ 	// A minimal shutdown window for avoiding unnecessary SIGKILLs
+ 	minimumGracePeriodInSeconds = 2
+ 
+-- 
+2.25.1
+
diff --git a/third_party/go/patches/k8s-fix-paths.patch b/third_party/go/patches/k8s-fix-paths.patch
new file mode 100644
index 0000000..ba39a43
--- /dev/null
+++ b/third_party/go/patches/k8s-fix-paths.patch
@@ -0,0 +1,56 @@
+Copyright 2020 The Monogon Project Authors.
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+
+From db9ab831cd17f9be540917a77bbb3e0551f4fb4f Mon Sep 17 00:00:00 2001
+From: Lorenz Brun <lorenz@brun.one>
+Date: Mon, 25 Jan 2021 15:08:20 +0100
+Subject: [PATCH] Make DeviceManager socket relative to RootDir
+
+---
+ pkg/kubelet/cm/container_manager_linux.go | 2 +-
+ pkg/kubelet/cm/devicemanager/manager.go   | 4 ++--
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/pkg/kubelet/cm/container_manager_linux.go b/pkg/kubelet/cm/container_manager_linux.go
+index 57110ed7745..15cf010074e 100644
+--- a/pkg/kubelet/cm/container_manager_linux.go
++++ b/pkg/kubelet/cm/container_manager_linux.go
+@@ -315,7 +315,7 @@ func NewContainerManager(mountUtil mount.Interface, cadvisorInterface cadvisor.I
+ 
+ 	klog.Infof("Creating device plugin manager: %t", devicePluginEnabled)
+ 	if devicePluginEnabled {
+-		cm.deviceManager, err = devicemanager.NewManagerImpl(numaNodeInfo, cm.topologyManager)
++		cm.deviceManager, err = devicemanager.NewManagerImpl(numaNodeInfo, cm.topologyManager, nodeConfig.KubeletRootDir)
+ 		cm.topologyManager.AddHintProvider(cm.deviceManager)
+ 	} else {
+ 		cm.deviceManager, err = devicemanager.NewManagerStub()
+diff --git a/pkg/kubelet/cm/devicemanager/manager.go b/pkg/kubelet/cm/devicemanager/manager.go
+index 5d1925f9458..bfff3c50fcc 100644
+--- a/pkg/kubelet/cm/devicemanager/manager.go
++++ b/pkg/kubelet/cm/devicemanager/manager.go
+@@ -124,8 +124,8 @@ func (s *sourcesReadyStub) AddSource(source string) {}
+ func (s *sourcesReadyStub) AllReady() bool          { return true }
+ 
+ // NewManagerImpl creates a new manager.
+-func NewManagerImpl(numaNodeInfo cputopology.NUMANodeInfo, topologyAffinityStore topologymanager.Store) (*ManagerImpl, error) {
+-	return newManagerImpl(pluginapi.KubeletSocket, numaNodeInfo, topologyAffinityStore)
++func NewManagerImpl(numaNodeInfo cputopology.NUMANodeInfo, topologyAffinityStore topologymanager.Store, kubeletRootDir string) (*ManagerImpl, error) {
++	return newManagerImpl(filepath.Join(kubeletRootDir, "device-plugins/kubelet.sock"), numaNodeInfo, topologyAffinityStore)
+ }
+ 
+ func newManagerImpl(socketPath string, numaNodeInfo cputopology.NUMANodeInfo, topologyAffinityStore topologymanager.Store) (*ManagerImpl, error) {
+-- 
+2.25.1
+
diff --git a/third_party/go/repositories.bzl b/third_party/go/repositories.bzl
index 92fd615..08c7416 100644
--- a/third_party/go/repositories.bzl
+++ b/third_party/go/repositories.bzl
@@ -2567,6 +2567,8 @@
         ],
         pre_patches = [
             "//third_party/go/patches:k8s-e2e-tests-providerless.patch",
+            "//third_party/go/patches:k8s-fix-paths.patch",
+            "//third_party/go/patches:k8s-fix-logs-path.patch",
         ],
         patch_args = ["-p1"],
         build_extra_args = [
