K8S-生态周报-2019070120190707

38次阅读

共计 3368 个字符,预计需要花费 9 分钟才能阅读完成。

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

Kubernetes v1.16 发布周期开始

随着前段时间 Kubernetes v1.15 的发布,v1.16 的发布周期开始了。本次的发布周期一如往常,本月底增强功能冻结,下月底代码冻结,9 月初完善文档,计划在 9 月中发布 v1.16 版本。

其实按这个节奏看得话,大家如果需要维护生产中的 Kubernetes 集群的话,还是尽快测试验证并完成升级,以免所用版本 EOL,带来一些其他的问题。

Knative Serving v0.7.x 发布

本周 Knative Serving 发布了 v0.7.1 版本,Knative 近期的开发还是比较活跃的。

需要注意的是若使用 v0.7.x 版本中新增的 serving.knative.dev/v1beta1 API 的话,则需要 Kubernetes v1.14 版本以上。具体原因请参考 #4533

Non-root 容器:在这个版本中所有发布的容器均以非 root 用户运行,这使得我们可以使用更严格的 PSP。

当然此版本中也包含一些破坏性变更,比如 status 字段废弃。

关于此版本更多的细节请参考 ReleaseNote

Debian 10 buster 正式发布

Debian 10 正式发布了,其实按一般的角度来看,Linux 的一个发行版发布不会出现在 K8S 生态周报中的。

但这里有个需要注意的点,对于使用此版本部署 Kubernetes 时,需要注意一下。此版本中使用的 systemd 版本是 241.5 而这个版本中有个对于使用 Kubernetes 而言值得注意的点。

这个版本的 systemd 可能会破坏 LXD 容器的网络,表现在可能无法生成 MAC 地址上。(我猜测现在关注 LXD 的用户没有那么多了,这里我也就不过多解释了。)当然这个问题同样也可能会出现在使用 Docker/runc/cri-o 等容器运行时的场景中。

最后,还是庆祝一下 Debian 10 的正式发布,此版本内核也已经升级到了 4.19。并且这个版本也有很多的改善和升级。具体内容可参考其 ReleaseNote

NGINX Ingress Controller 1.5.1 发布

NGINX Ingress Controller 是由 NGINX 社区开发的 Ingress Controller 相比于 Kubernetes 的 Nginx Ingress Controller 而言主要区别如下:

Aspect or Featurekubernetes/ingress-nginxnginxinc/kubernetes-ingress with NGINXnginxinc/kubernetes-ingress with NGINX Plus
Fundamental
AuthorsKubernetes communityNGINX Inc and communityNGINX Inc and community
NGINX versionCustom NGINX build that includes several third-party modulesNGINX official mainline buildNGINX Plus
Commercial supportN/AN/AIncluded
Load balancing configuration via the Ingress resource
Merging Ingress rules with the same hostSupportedSupported via Mergeable IngressesSupported via Mergeable Ingresses
HTTP load balancing extensions – AnnotationsSee the supported annotationsSee the supported annotationsSee the supported annotations
HTTP load balancing extensions — ConfigMapSee the supported ConfigMap keysSee the supported ConfigMap keysSee the supported ConfigMap keys
TCP/UDPSupported via a ConfigMapSupported via a ConfigMap with native NGINX configurationSupported via a ConfigMap with native NGINX configuration
WebsocketSupportedSupported via an annotationSupported via an annotation
TCP SSL PassthroughSupported via a ConfigMapNot supportedNot supported
JWT validationNot supportedNot supportedSupported
Session persistenceSupported via a third-party moduleNot supportedSupported
Canary testing (by header, cookie, weight)Supported via annotationsSupported via custom resourcesSupported via custom resources
Configuration templates *1See the templateSee the templatesSee the templates
Load balancing configuration via Custom Resources
HTTP load balancingNot supportedSee VirtualServer and VirtualServerRoute resources.See VirtualServer and VirtualServerRoute resources.
Deployment
Command-line arguments *2See the argumentsSee the argumentsSee the arguments
TLS certificate and key for the default serverRequired as a command-line argument/ auto-generatedRequired as a command-line argumentRequired as a command-line argument
Helm chartSupportedSupportedSupported
Operational
Reporting the IP address(es) of the Ingress controller into Ingress resourcesSupportedSupportedSupported
Extended StatusSupported via a third-party moduleNot supportedSupported
Prometheus IntegrationSupportedSupportedSupported
Dynamic reconfiguration of endpoints (no configuration reloading)Supported with a third-party Lua moduleNot supportedSupported

内容来源:NGINX Ingress Controller 文档

本次发布的 1.5.1 将 NGINX 版本更新到了 1.17.1,升级时可直接使用 nginx/nginx-ingress:1.5.1nginx/nginx-ingress:1.5.1-alpine 也可直接使用 0.3.1 的 Helm Chart

更多信息请参考 ReleaseNote

Kubernetes 上游进展

来说一点上游开发的进展吧

  • 新增了 Runtimeclass 的准入控制,通过这个新的特性,我们可以计算和 Pod 的 sanbox 绑定的资源了, 参见 78484
  • 新增了对在每个节点上可部署的每个卷类型的数量的限制, 参见 77595
  • kubeadm 修复了一个 reset 命令时候使用错误的函数, 参见 79326

可以通过下面二维码订阅我的文章公众号【MoeLove】

正文完
 0