乐趣区

关于github:K8S-生态周报-Helm-v35-正式发布带来完备的-OCI-支持

「K8S 生态周报」内容次要蕴含我所接触到的 K8S 生态相干的每周值得举荐的一些信息。欢送订阅知乎专栏「k8s 生态」。

KIND v0.10 正式公布

KIND(Kubernetes In Docker)是我很喜爱也始终在参加奉献的 Kubernetes SIG 子项目,本周 KIND 公布了 v0.10 版本,间隔上次 v0.9 版本已过来了 4 个多月,在此期间,咱们做了很多的优化和改良。上面我来具体介绍下:

破坏性变更

这个局部显然是大家最为关怀的,这里有三个须要留神的点:

  • 默认的 Node 镜像版本曾经更新为了 Kubernetes v1.20.2 版本,所以个别无关 Kubernetes 本身个性变更的方面须要留神下;
  • IPv6 Pod 子网默认从 /64 批改成了 /56,这里的批改参考了 RIPE 的一篇对于 IPv6 子网布局的最佳实际,有趣味的敌人能够理解下;
  • 咱们目前能保障 KIND 与 v1.14.0+ 的 Kubernetes 齐备的兼容,但对于 v1.13.x 版本咱们只能尽量做到最好;

新个性

  • 当构建 v1.19+ 版本的 Kubernetes 镜像时,能够不构建 dockershim 组件,以便减小镜像的体积;
  • 通过优化编译参数,显著的缩小了 KIND 二进制文件的体积(~7MB);
  • kind export logs 导出的 log 中将蕴含 KIND 的版本信息,以便于更好的定位问题;
  • 实验性应用 GitHub Action CI 提供 docker/podman/cgroup v2 等环境的反对;
  • 文档内容的优化和欠缺,包含 WSL2,负载平衡等方面;

修改

  • 优化了 cgroups 相干的解决逻辑;
  • 优化了一些错误信息的内容;

大家能够间接在 KIND v0.10.0 版本的 Release 页面下载预编译好的二进制文件进行体验,有任何问题欢送随时反馈。

Helm v3.5 正式公布

Helm v3.5 是 Helm 的一个个性版本,此版本的个性次要集中在 OCI 反对和模板函数,以下是我认为值得关注的一些变更:

  • #9126 Helm 的 template 中新减少了超过 20 个的函数反对,具体函数列表可参考 sprig 的列表;
  • #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 减少 certificate-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_KUBECAFILE 的环境变量:
    HELM_NAMESPACE=myns HELM_KUBEAPISERVER=https://internal.company:443 HELM_KUBECAFILE=/tmp/ca.crt helm install some-app company/some-app

    能够看到,不便了很多。

  • #8626 用 Artifact Hub 代替了 Helm Hub。我在去年的 K8S 生态周报 | Helm 五周岁啦!中曾具体介绍过此事,感兴趣的小伙伴能够看看具体内容;

更多对于此版本的变更,请参考其 ReleaseNote

事件

  • Docker 把 Distribution 捐给了 CNCF,Docker Distribution 是 Docker Hub 及泛滥镜像仓库的底层实现,捐给 CNCF 无望为其带来更弱小的生命力;
  • Docker Hub Tool 开源啦 能够在我之前的 Docker Hub Tool 文章中理解其具体个性;

上游停顿

  • #96021 当往 CSI 卷上创立卷数据文件期间如果产生异样,不会再主动删除全副数据了,当初仅删除数据文件和卷门路;
  • #98678 TTLAfterFinished 个性将默认启用,并且降级至 beta。此个性是用于管制 Job 和 Pod 实现后的清理工夫,通过 .spec.ttlSecondsAfterFinished 进行设置,在资源创立或实现后都能够批改这个值,然而一旦超过 TTL,并且 K8S 认为可删除资源的时候,再批改这个 TTL 也没有成果了;

欢送订阅我的文章公众号【MoeLove】

退出移动版