KIND v0.10 正式发布
KIND (Kubernetes In Docker )是我很喜欢也一直在参与贡献的 Kubernetes SIG 子项目,本周 KIND 发布了 v0.10 版本,距离上次 v0.9 版本已过去了 4 个多月,在此期间,我们做了很多的优化和改进。下面我来具体介绍下:
这个部分显然是大家最为关心的,这里有三个需要注意的点:
kind export logs
导出的 log 中将包含 KIND 的版本信息,以便于更好的定位问题;大家可以直接在 KIND v0.10.0 版本的 Release 页面[3]下载预编译好的二进制文件进行体验,有任何问题欢迎随时反馈。
Helm v3.5 是 Helm 的一个特性版本,此版本的特性主要集中在 OCI 支持和模板函数,以下是我认为值得关注的一些变更:
#9126 Helm 的 template 中新增加了超过 20 个的函数支持,具体函数列表可参考 sprig 的列表[4];
#8843 允许在设置了 HELM_EXPERIMENTAL_OCI
环境变量的前提下,通过 helm pull oci://
的方式来下载 OCI 仓库中下载 Chart 和更新依赖;
#8886 为 helm dep build
增加了一个 --skip-refresh
的参数,这样就不会刷新本地仓库中的 cache 了;
#8363 添加了一个 wait-for-jobs
的参数,当同时设置了 --wait
时候,helm install
等命令将会等待所有的 Job 都执行完成后,才会认为本次操作完成。当然,它也会受到 --timeout
参数的影响,最多等待时间不会超过 timeout 设置的时间;
#8958 添加了 --kube-cafile
的参数和等价的 HELM_KUBECAFILE
环境变量,用来指定连接 Kubernetes 时的 CA 。在此变更之前,如果 Kubernetes 集群的证书未在系统层信任的话,就会出现失败的情况,提示 x509: certificate signed by unknown authority
之类的。以下是三种可用的解决方案:
KUBECONFIG=~/.mycustomkubeconfig
kubectl config set-cluster internal.company --server=https://internal.company:443 --certificate-authority=/tmp/ca.crt
kubectl config set-context some-context --cluster=internal.company --namespace=myns
kubectl config use-context some-context
HELM_NAMESPACE=myns HELM_KUBEAPISERVER=https://internal.company:443 helm install --kubeconfig="${KUBECONFIG}" some-app company/some-app
HELM_NAMESPACE=myns HELM_KUBEAPISERVER=https://internal.company:443 HELM_KUBECAFILE=/tmp/ca.crt helm install some-app company/some-app
可以看到,方便了很多。
HELM_KUBECAFILE
的环境变量:#8626 用 Artifact Hub 替代了 Helm Hub 。我在去年的 K8S 生态周报| Helm 五周岁啦![5] 中曾具体介绍过此事,感兴趣的小伙伴可以看看具体内容;
更多关于此版本的变更,请参考其 ReleaseNote[6]
.spec.ttlSecondsAfterFinished
进行设置,在资源创建或完成后都可以修改这个值,但是一旦超过 TTL,并且 K8S 认为可删除资源的时候,再修改这个 TTL 也没有效果了;TheMoeLove
[1]
k8s生态: https://zhuanlan.zhihu.com/container
[2]
终端用户的 IPv6 子网划分最佳实践: https://www.ripe.net/publications/docs/ripe-690#4--size-of-end-user-prefix-assignment---48---56-or-something-else-
[3]
KIND v0.10.0 Release: https://github.com/kubernetes-sigs/kind/releases/tag/v0.10.0
[4]
Helm v3.5 新增函数说明: https://github.com/Masterminds/sprig/releases/tag/v3.2.0
[5]
Helm Hub 迁移到 Artifact Hub: https://zhuanlan.zhihu.com/p/267670759
[6]
Helm v3.5 Release: https://github.com/helm/helm/releases/tag/v3.5.0
[7]
Docker 把 Distribution 捐给了 CNCF: https://www.docker.com/blog/donating-docker-distribution-to-the-cncf/