小编Geo*_*rge的帖子

无法在 google kubernetes 节点 v1.21.4-gke.2300 上查看 docker 镜像

我创建了一个新的 kubernetes 集群 (GKE) 并使用 helm 安装了一个应用程序。

我能够使用以下命令找到部署我的 pod 的 gke-node: kubectl get pod -n namespace -o wide

发布我登录到 kubernetes-node,但是在这个节点上我无法查看 docker 图像。v1.21.4-gke.2300 上就是这种情况

在旧版本 v1.19.13-gke.1200 中,当从存储库中提取节点时,我能够观察节点上的 docker 镜像

我可以使用以下命令查看 v1.21.4-gke.2300 上的 docker-images 列表 kubectl get pods -n geo-test -o jsonpath="{.items[*].spec.containers[*].image}" | tr -s '[[:space:]]' '\n' | sort | uniq -c

但我想知道这些图像存储在集群中的哪个位置以及为什么我无法像在旧版本中那样在节点中观察它们

我问的原因是,因为在版本 v1.19.13-gke.1200 中,我能够在 docker-image 中执行微小的更改,构建自定义映像并使用它进行安装,而不是将映像存储在 gcr 中并拉取关于如何在新的环境中进行操作的任何建议

v1.19.13-gke.1200

docker kubernetes google-kubernetes-engine

2
推荐指数
1
解决办法
1042
查看次数

在 configmap 更改时触发 pod 重新启动

我有一个定义如下的 configmap 文件

apiVersion: v1
kind: ConfigMap
metadata:
  name: {{ .Release.Name }}-dashboard-cm-conf
  namespace: {{ .Release.Namespace }}
data:
{{ (tpl (.Files.Glob "conf/*").AsConfig . ) | indent 2 }}
Run Code Online (Sandbox Code Playgroud)

正如您在上面看到的,它占用了“conf”文件夹的内容作为数据。一切正常,但是当我尝试使用“部署文件中的以下行”实施“注释”以触发“POD 重新启动”时,会观察到问题。

      annotations:
        checksum/config-map: {{ include (print .Template.BasePath "/dashboard-conf-map.yaml") . | sha256sum }}

Run Code Online (Sandbox Code Playgroud)

即使“conf”文件夹的内容发生更改并且执行“helm 升级”,POD 也不会重新启动。

如果我使用一个简单的配置映射,其数据定义如下,参数的更改和“helm 升级”确实会导致 POD 重新启动

data:
  parameter1: testparam1
  parameter2: testparam2
Run Code Online (Sandbox Code Playgroud)

我在这里有以下问题

  1. 有没有办法对文件夹执行校验和。

  2. 有没有办法在 configmap.txt 中获取像下面这样的 linux-command 的输出?

find dashboard/conf/ -type f -exec md5sum {} \; |md5sum

  1. 我们可以对非 YAML 文件执行校验和吗?
      annotations:
        checksum: {{ include (print .Template.BasePath "/logback-spring.xml") . | …
Run Code Online (Sandbox Code Playgroud)

kubernetes-helm configmap

1
推荐指数
1
解决办法
5365
查看次数