「K8S 生态周报」内容主要包含我所接触到的 K8S 生态相关的每周值得推荐的一些信息。欢迎订阅知乎专栏「k8s生态」。
Kind (Kubernetes in Docker) 正式发布 v0.7.0
Kind (Kubernetes in Docker) 是我很喜欢也一直在参与的项目,现在在 GitHub 上有 4.3k 的 star ,本周正式发布了 v0.7.0 我们一起来看看在此版本中增加了哪些有用的特性。
重大变更
- Kubernetes 版本升级,现在默认的 Kubernetes 版本升级为 v1.17.0 , 在 kind v0.6+ 时候默认的 Kubernetes 版本是 v1.16.3;
- 使用 kind v0.7.0 构建的镜像有很多改进,需要至少 v0.5+ 版本才能保持兼容,如果是想要使用在 v0.7 版本中新增的全部特性,建议同时升级 kind 二进制文件以及更新 node 镜像;
新特性增加
- 通过集成 rancher.io/localhost-path 提供了开箱即用的动态存储卷的支持;
- 提供了使用 Ingress 暴露部署在 Kind 中服务的多种方式的文档,包括 Contour 和 NGINX Ingress ;
- 更新了相关的依赖,包括修复 CNI portmap 插件以提高稳定性;
修复问题
- 提升日志消息的可读性;
- 修正
kind load
镜像到 node 节点上之后的检查逻辑; - 当默认的
$HOME/.kube/config
文件不存在时,在kind create cluster
之后,会自动根据 kubeadm 的信息补充其他字段,比如kind
和apiVersion
; - 减小镜像的体积;
在我的电脑上如果忽略掉镜像下载耗时,使用 kind v0.6+ 版本,创建一个单节点集群耗时是 52 秒,而升级至 v0.7 后耗时可缩短到 46 秒。
在创建集群后,默认有一个名为 standard
的 StorageClass 可直接使用。
(MoeLove) ➜ ~ kubectl get nodes
NAME STATUS ROLES AGE VERSION
117-control-plane Ready master 66s v1.17.0
(MoeLove) ➜ ~ kubectl get sc
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE
standard (default) rancher.io/local-path Delete WaitForFirstConsumer false 65s
欢迎大家下载使用 https://github.com/kubernetes-sigs/kind/releases/tag/v0.7.0
Rancher 发布 v2.3.4 版本
大致需要注意的内容如下:
- Kubernetes v1.17 成为了默认的版本;
- Istio 升级至 v1.4.3;
- 修复了一些比如 label 无法添加之类的问题;
其实修复的内容还比较多,感兴趣的朋友可以看看其 ReleaseNote
Rook 发布 v1.2.2 版本
Rook 发布的 v1.2.2 主要是进行 bugfix 。这个版本最主要的内容都集中在 Ceph 上,其中有些值得关注的点:
- 支持多个集群设置
useAllDevices
选项,其最主要的需求来自于当创建集群失败,想要重新创建集群时,之前版本中只允许有一个集群能设置为useAllDevices
,所以就会报错了。更新至此 v1.2.2 版本后,就允许多个集群都可以设置useAllDevices
选项了; - 将 example 中 Ceph 版本设置为 v14.2.6;
- 修复了
CephMonHighNumberOfLeaderChanges
中错误的 Pod 名称和主机名;
更多详细的内容请参考其 ReleaseNote
上游进展
Kubernetes 本周相继发布了 v1.15.8,v1.16.5 以及 v1.17.1 ,这其中包含了两个很重要的 bugfix, 需要注意。
可以通过下面二维码订阅我的文章公众号【MoeLove】,在公众号后台回复 k8s 可加入技术圈交流。点击阅读原文有更好的阅读体验。