knative revison创建pod报错x509问题记录

前言

今天遇到一个问题,那就是knative创建的revision报错,x509,不信任的证书,但是在主机上,docker pull是没有问题的。

现状

目前应用的创建过程:

  • 用户上传含Dockerfile的源码
  • 将源码上传到到三方存储
  • 创建Tokton的TaskRun资源
  • Tekton的Task模版应用TaskRun携带的参数,创建Pod执行任务
  • Pod中使用step kaniko构建镜像
  • 构建完成push镜像到私有registry仓库
  • 创建knative的Revision资源(类似k8s中的deployment)
  • revision创建Pod

由于使用了自建的dns,导致ssl的证书不能使用公有云的ssl证书,所以自己签发了一个https的证书,
已经在kaniko的insure-registry配置了私有仓地址,kaniko可以push镜像到私有仓库。但是使用knative创建revision,revision创建pod的时候,报错x509,不信任的证书,每一台node上已经加载了该https的证书,并且手动docker pull也是可以pull下来的。但是使用revision就是不行。

分析

可能的原因一:使用程序创建的Revision有问题

尝试将Revision的yaml保存起来

kubectl get revision revisionName -n namespaceName -o yaml > revision.yaml

删除其中无关的标签,然后手动创建revision,还是报错x509,说明不是调用revsion操作的锅

可能的原因二:是不是拉取不到镜像

尝试将revision.yaml的apiVersion和kind改为pod类型

kubectl apply -f revision.yaml

pod运行正常,说明镜像是好的。

得出结论

这就说明是revision这个类型,在创建这个实例的时候,对这个镜像做了什么检查或者操作,导致revision报错了。

但是就没有接着追下去了,请教了大佬,然后大佬,说让改个configmap配置看看可行吗?

apiVersion: v1
kind: ConfigMap
metadata:
  name: config-deployment
  namespace: knative-serving
data:
  # List of repositories for which tag to digest resolving should be skipped
  registriesSkippingTagResolving: registry.example.com,registry.naison.com

registriesSkippingTagResolving这个标签增加了自己的私有仓就好了。
knative官方的说明是这个标签指明了哪些registry仓库的数字摘要不用验证。

总结

还需要对整个knative有更加全面的认知,遇到问题可以先找google问下,就比如这个问题,后来通过google简单搜索了一下关键字,就有有人遇到过类似的问题,并且也给出了正确答案。链接

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值