4

K8S 生态周报| Helm 新版本发布,解决了内存泄漏的问题

 2 years ago
source link: https://zhuanlan.zhihu.com/p/450239877
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

K8S 生态周报| Helm 新版本发布,解决了内存泄漏的问题

“ 「K8S 生态周报」内容主要包含我所接触到的 K8S 生态相关的每周值得推荐的一些信息。欢迎订阅知乎专栏「k8s生态」[1]。

Trivy v0.22.0 正式发布

Trivy 是一款轻量级的漏洞扫描工具,支持包括容器镜像,文件系统,IaC 配置文件等。在我之前的 『K8s生态周报』文章中已经介绍过多次,此处就不再展开了。我们一起来看看这个版本中有哪些值得关注的变更。

  • 新增了一个 --offline-scan 的选项,在对 pom.xmlJAR 文件进行扫描的时候,可以通过同时指定 --skip-update--offline-scan 参数来避免 Trivy 去发起更新漏洞库的请求。在离线环境或者网络不好的场景下会比较有用;
  • 优化了内存的使用,在之前版本的逻辑中,如果对于大文件也会直接进行读取,有可能会造成 OOM 。本次修正了该问题,加入了一定的缓存。如果你正在使用 Trivy ,我建议你进行更新;
  • 再对 rpm 包扫描的时候, 支持了 NDB 格式 , 对此格式感兴趣的小伙伴可以去看看 rpm 项目的发版说明。

你可以直接去它的 Release 页面下载最新的二进制,也可以直接使用其容器镜像。

(MoeLove) ➜ docker pull aquasec/trivy:0.22.0

对于此版本的其他变更,可参考其 ReleaseNote

Helm v3.7.2 发布

Helm 最新一个大版本是 v3.7.0,但如果你去关注这个项目实际的变更,你会发现即使是大版本更新,也没有携带特别值得有价值的内容。反倒是这个小版本中还带来了一些值得注意的内容:

至于之前版本中的变更,感兴趣的小伙伴可以自行去看看其 ReleaseNote

Rook 发布 v1.8 版本

Rook 是一个开源的,专用于 Kubernetes 平台上存储编排的组件。目前是 CNCF 毕业项目。在之前的 『K8s生态周报』中我也一直都有介绍,这里就不展开了,大家有兴趣的可以看看历史文章。现在我们一起来看它的新版本中有哪些值得关注的内容吧。

首先是一些 Breaking Change:

  • Rook 可以与 Kubernetes v1.16 或更高版本兼容。这主要是由于其使用 CRD 的方式进行实现,而 Kubernetes 在 v1.22 版本中将旧的 API 已经移除,所以 Rook 将它使用的 API version 也已经升级到了 v1。在进 rook 升级操作的时候,如果当前的 Kubernetes 版本较低,则建议先升级 Kubernetes 集群再升级 Rook。
  • 在 v1.8 中对于 Ceph Nautilus 版本的支持已经移除,如果你之前有通过 Rook 部署的 Ceph Nautilus 版本的集群,那么建议先升级到 Octopus 或者 Pacific 版本,以便保证 Rook 可以正常的处理其版本。
  • 现在已经完全使用 CSI 接口进行存储管理了,之前 Rook 支持的 Flex 驱动已经彻底废弃,如果想要进行迁移的小伙伴,可以参考 https://rook.github.io/docs/rook/v1.7/flex-to-csi-migration.html

此外还带来了很多新的功能:

  • 支持使用 HashiCorp Vault 时进行 Kubernetes 身份验证;
  • 为了提供更好的安全性,当前的 Rook operator 和 toolbox 容器都运行在 rook 用户下,而非原先的 root 用户下;
  • Rook 镜像中默认安装了 s5cmd 工具,这是一个可以提供快速 S3 操作的工具,你可以在 https://github.com/peak/s5cmd 找到它。默认提供的 s5cmd 可以方便我们在 toolbox 中快速的验证 S3 gateway 的功能;
  • Rook 当前添加了一个 ceph.rook.io/disaster-protection finalizer 可用于阻止重要资源被意外删除,如果想要删除这些重要资源的话,需要如下步骤:
kubectl -n rook-ceph patch configmap rook-ceph-mon-endpoints --type merge -p '{"metadata":{"finalizers": [null]}}'
kubectl -n rook-ceph patch secrets rook-ceph-mon --type merge -p '{"metadata":{"finalizers": [null]}}'

以上就是关于 Rook v1.8 版本中值得关注的内容了,如果对其他变更感兴趣,可以查看其 ReleaseNote

上游进展

题外话

整体而言,近两周没有特别大的变更,一方面是由于已经到年底了,社区中大多数海外贡献者基本已经休假。另一方面是由于基本上今年的目标已经完成,接下来的迭代重点会放在年后。

近期我会发布一篇内容,基于 2021 年 K8s 生态中值得关注的内容,以及整体的一些技术趋势,进行 2021 年 K8s 生态的总结,以及对 2022 年 K8s 生态发展的预测,敬请期待!


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

参考资料

k8s生态: https://zhuanlan.zhihu.com/container


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK