我们如何在kubernetes中看到缓存的图像?

问题描述 投票:0回答:1

我正在使用kops作为kubernetes部署。

[我注意到,如果在imagepullpolicy未设置为always的情况下,在部署文件中输入具有相同标签号的图像,则系统将拍摄前一张图像

在kubernetes环境中,有什么方法可以查看容器的所有缓存图像吗?

[假设我有一个正在部署中的映像test:56,并且以前使用过test:1test:55,那么kubernets是否缓存这些映像?如果是的话,在哪里可以找到?

docker kubernetes containers kubernetes-pod docker-image
1个回答
0
投票
  • 对您的环境的评论:

    [我注意到,如果在imagepullpolicy未设置为always的情况下,在部署文件中输入具有相同标签号的图像,则系统将拍摄前一张图像

A pre-pulled image可用于预加载某些图像以提高速度,或作为对私有注册表进行身份验证的替代方法,以优化性能。

码头工人将始终缓存所有在本地使用的图像。

由于您正在使用EKS,请记住,如果您具有节点运行状况管理(这意味着如果某个节点发生故障,它将被替换),新节点将不会从旧节点中缓存图像,因此,始终这样做是一个好主意。将图像存储在your Cloud Provider Registry等注册表或本地注册表中。

  • 让我们解决您的第一个问题:

    在kubernetes环境中,有什么方法可以查看容器的所有缓存图像吗?

是,必须使用docker images列出环境中存储的图像。

  • 第二个问题:

    [假设我有一个映像test:56当前正在部署中运行,并且以前使用过test:1test:55,那么kubernets是否缓存这些映像?如果是的话,在哪里可以找到?

我为您准备了一个示例:

  • 我根据官方的busybox图片部署了多个Pod:
$ kubectl run busy284 --generator=run-pod/v1 --image=busybox:1.28.4
pod/busy284 created
$ kubectl run busy293 --generator=run-pod/v1 --image=busybox:1.29.3
pod/busy284 created
$ kubectl run busy284 --generator=run-pod/v1 --image=busybox:1.28
pod/busy28 created
$ kubectl run busy284 --generator=run-pod/v1 --image=busybox:1.29
pod/busy29 created
$ kubectl run busy284 --generator=run-pod/v1 --image=busybox:1.30
pod/busy284 created
$ kubectl run busybox --generator=run-pod/v1 --image=busybox
pod/busybox created

现在让我们检查存储在docker images中的图像>

$ docker images
REPOSITORY                                TAG                   IMAGE ID            CREATED             SIZE
k8s.gcr.io/kube-proxy                     v1.17.3               ae853e93800d        5 weeks ago         116MB
k8s.gcr.io/kube-controller-manager        v1.17.3               b0f1517c1f4b        5 weeks ago         161MB
k8s.gcr.io/kube-apiserver                 v1.17.3               90d27391b780        5 weeks ago         171MB
k8s.gcr.io/kube-scheduler                 v1.17.3               d109c0821a2b        5 weeks ago         94.4MB
kubernetesui/dashboard                    v2.0.0-beta8          eb51a3597525        3 months ago        90.8MB
k8s.gcr.io/coredns                        1.6.5                 70f311871ae1        4 months ago        41.6MB
k8s.gcr.io/etcd                           3.4.3-0               303ce5db0e90        4 months ago        288MB
kubernetesui/metrics-scraper              v1.0.2                3b08661dc379        4 months ago        40.1MB
busybox                                   latest                83aa35aa1c79        10 days ago         1.22MB
busybox                                   1.30                  64f5d945efcc        10 months ago       1.2MB
busybox                                   1.29                  758ec7f3a1ee        15 months ago       1.15MB
busybox                                   1.29.3                758ec7f3a1ee        15 months ago       1.15MB
busybox                                   1.28                  8c811b4aec35        22 months ago       1.15MB
busybox                                   1.28.4                8c811b4aec35        22 months ago       1.15MB

您可以看到列出的所有推送的图像。

最好使用命令docker system prune从系统中清除旧资源,以不时释放服务器上的空间。

如果有任何疑问,请在评论中告诉我。

© www.soinside.com 2019 - 2024. All rights reserved.