K8S 生态周报| Docker 开源 Compose 规范

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

Docker 开源 Compose 规范, 助力云原生应用开发

本周 Docker 宣布将 Compose 规范开源,并做为独立组织进行治理。node

因为 Compose 能够简单的定义基于多容器的应用程序堆栈的工做方式,而且能够经过一条命令启动应用程序,而不须要手动构建镜像和逐个启动容器,这能够大大节省开发团队的时间。git

当前 Compose 已经被数百万开发人员使用,在 GitHub 上有超过 650,000 个 Compose 配置文件。github

Docker 也在 GitHub 上建立了一个 awesome-compose 的仓库,其中包含了 Compose 在多种应用场景下的使用示例。docker

本次开源 Compose 规范,旨在能利用开源社区的力量,并与微软等合做伙伴,共同进行协做创新,为 Compose 规范提供更多活力,并以此帮助创建从桌面到云构建和部署容器应用程序通用开放标准。bootstrap

另外,Compose 规范计划是捐助给中立的基金会,我我的认为大几率是捐给 CNCF 了(目前没看到正式消息)。扩展后的 Compose 规范必将会大大提高开发者体验。app

同时,社区在计划使用 Go 对 docker-compose 工具进行重写(或者是从新实现 Compose 规范),总体而言也是好事儿,值得关注。工具

详情可查看:http://www.compose-spec.io/ui

SMI 正式加入 CNCF

SMI(Service Mesh Interface)于本周正式加入 CNCF ,成为其 sandbox 级别的项目。spa

我在去年 5 月份的 K8S 生态周报| 2019-05-20~2019-05-26 中曾介绍过微软宣布推出的 SMI,本质是为了能为服务网格提供通用接口,以便能让 Service Mesh 有更加通用的规范 (就像当初 CNI/CRI 那样子)。code

通过了将近一年时间的发展,SMI 的社区有了显著的发展,当前社区列出的生态信息以下:

  • Consul Connect*: service segmentation (consul.io/docs/connect)
  • Flagger: progressive delivery operator (flagger.app)
  • Istio*: connect, secure, control, observe (servicemeshinterface/smi-adapter-istio)
  • Linkerd: ultralight service mesh (linkerd.io)
  • Maesh: simpler service mesh (mae.sh)
  • Meshery: the service mesh management plane (layer5.io/meshery)
  • Rio: application deployment engine (rio.io)
  • Service Mesh Hub: unified dashboard (solo.io/products/service-mesh-hub)

我印象中最先跟进 SMI 的大概是 19 年 6 月份 Linkerd 增长了对 SMI 的支持。

不过也能够看到,对于 Istio 而言,是社区提供了一个对 Istio 的适配(这里就不展开了)。

详情可查看:https://smi-spec.io/blog/smi-...

Kubernetes v1.18.1 发布

Kubernetes v1.18.1 发布,带来了一些 bugfix,这里主要就介绍一个关于使用 kubeadm 升级的问题。

#89537 修复了在使用 kubeadm 从 v1.17 升级至 v1.18 时,node 没法加入集群的问题。主要是由于以前在 node 加入集群时,增长了对是否有同名节点存在的检查。而 kubeadm 中漏掉了相应的 RBAC 规则。

修正代码以下:

// Create RBAC rules that makes the bootstrap tokens able to get nodes
if err := nodebootstraptoken.AllowBoostrapTokensToGetNodes(client); err != nil {
    errs = append(errs, err)
}

上游进展

  • #89151 新增了一个 etcd_db_total_size_in_bytes 的 metric ,可用于暴露 etcd 文件大小;
  • #89848 kubectl apply 即便 build 异常,也会应用其余已验证资源。

欢迎订阅个人文章公众号【MoeLove】

TheMoeLove

相关文章
相关标签/搜索