Helm v3.5 发布

Helm 是 Kubernetes 的包管理器。近日,Helm v3.5 正式发布,该版本是一个功能版本,重点关注 OCI 支持和模板功能。以下是该版本更新的几个重点:

  • 新增 20 多个新的模板函数。
  • oci:// 现在可以用作从 OCI 注册中心提取依赖关系的方案,并用于在依赖关系列表中指定存储库。
  • 在 helm dep build 命令中添加了 --skip-refresh flag。
  • 添加了 --kube-cafile 和环境变量 HELM_KUBECAFILE 以覆盖系统范围的证书颁发机构。
详细信息详见:https://github.com/helm/helm/releases/tag/v3.5.0

Grafana v7.4.0-beta1 发布

Grafana 是一个跨平台的开源的度量分析和可视化工具,可以通过将采集的查询数据,进行可视化的展示,并及时通知。近日,Grafana v7.4.0-beta1 发布,以下是该版本更新的几个重点:

时间序列面板可视化(beta)

Grafana v7.4 增加了下一代图形可视化的 beta 版。新的图形面板、时间序列可视化,是基于 uPlot 库的高性能可视化。时间序列 beta 版实现了当前图形面板中的大部分功能。计划在今年晚些时候会近全面地覆盖 Grafana v8.0 中的功能。

节点图面板可视化(beta)

节点图是一种新的面板类型,可以在仪表板中可视化有向图或网络。它可以帮助显示复杂的基础架构图、层次结构和执行图。

追踪日志

现在,我们可以从跟踪视图中的跨度直接导航到与该跨度相关的日志。此功能可用于 Tempo、Jaeger 和 Zipkin 数据源。

详细信息详见:https://grafana.com/docs/grafana/latest/whatsnew/whats-new-in-v7-4/

CoreDNS v1.8.1 发布

CoreDNS 插件是一款通过链式插件的方式为 Kubernetes 提供域名解析服务的 DNS 服务器。近日,CoreDNS v1.8.1 正式发布,该版本修复了很多错误,并添加了一个新插件 “local” 以回复本地查询。以下是该版本的一些重点内容:

  • core:自定义 DoH 请求验证。
  • plugin/azure:迭代所有 RecordSetListResultPage 页面。
  • plugin/local:添加 “local” 插件。
  • plugin/health:修复运行状况检查端点。
  • plugin/kubernetes:增加对双栈 ClusterIP 服务的支持。
详情详见:https://coredns.io/2021/01/20/coredns-1.8.1-release/

Kubernetes 将弃用 PSP

Kubernetes 将在 v1.21 中弃用 PSP(PodSecurityPolicy),并将在 v1.25 中移除该 API。PodSecurityPolicy 是集群级别的 Pod 安全策略,其对 Pod 的操作进行细粒度的授权,在 Kubernetes 架构中为 Admission Controller(准入控制,类似 LimitRange、ResourceQuota 等),通俗来讲就是一种写入前检查插件。当前 PodSecurityPolicy 特性存在以下问题:

  • 授权模型存在缺陷
  • 功能易开难关
  • API 接口缺乏一致性及扩展性,如 MustRunAsNonRoot、AllowPrivilegeEscalation 此类配置
  • 无法处理动态注入的 sidecar(如 Knative)
  • 在 CI/CD 场景难以落地等

当前 CNCF 生态有两个具有类似能力的项目:Kyverno 与 Open Policy Agent(OPA)

Kyverno

Kyverno 是为 Kubernetes 设计的策略引擎(CNCF sandbox 项目),具备以下功能:

  • 为 Kubernetes 资源的策略进行声明式验证、更改和生成资源配置。
  • 在 Kubernetes 集群中作为动态准入控制器运行。
  • 可以使用资源种类、名称和标签选择器来匹配资源。

OPA

Open Policy Agent(OPA,CNCF 孵化项目)为策略决策需求提供了一个统一的框架。它将策略决策从软件业务逻辑中解耦剥离,将策略定义、决策过程抽象为通用模型,可用于微服务、Kubernetes、CI/CD、API 网关等应用场景。OPA 可以通过 sidecar、外部服务或是依赖库的方式与已有的软件系统进行集成。OPA 可以接受任何类型的结构化数据,决策流程如下图所示:

原文链接:https://mp.weixin.qq.com/s/p0HRyGRLncDIgN_MEE07MA

CNCF:回顾 2020 展望 2021

2020 年 6 月,CNCF 宣布,社区长期贡献者、云原生计算专家 Priyanka Sharma 担任 CNCF 总经理。近日,Priyanka Sharma 分享了其对 CNCF 2020 年的一些思考以及 2021 年发展的看法:

2020 技术思考

CNCF 的使命是使云原生无处不在。在过去的六个月中,我花费了大量时间探索云原生计算的下一步发展方向,包括电信、边缘计算、开放式网络等。云原生是实现 5G、边缘计算、物联网和 AI 融合的关键。跨社区协作对于我们实现这些技术的全部潜力至关重要。因此,我们成立了云原生网络功能(CNF)工作组,以帮助电信行业定义云原生。社区也正在为大家提供必要的技能,以跨行业构建云原生技术。

  • 边缘计算可能比云计算具有更大的机遇,它将成为下一代创新平台,涵盖远程医疗保健、工业物联网、AR/VR 等领域。
  • 云原生从业者在边缘计算上有先天优势,因为他们已经掌握了如何构建分离的、有弹性的系统。推进云原生社区与边缘计算的融合,将为成千上万的开发人员创造就业机会,并极大地加快云原生技术的采用和创新速度。
  • Kubernetes 技术实践经验已经成为企业雇主关注的领域,过去一年中很多企业已经通过托管发行版、集成等方式赶上了云原生潮流,并显示出一种向 GitOps、基础设施即代码(IaC)方向发展的趋势。
  • 随着 Kubernetes 的成熟,我们现在正经历着云原生技术的爆炸式发展。由于开发者对知识和学习的需求不断增加,云原生技术教育正变得至关重要,尤其是疫情使得很多开发人员需要在家办公。
  • 随着云原生落地越来越普及,安全仍然是重中之重。去年 BlueKai、Seina Weibo 等公司的违规事件都昭示着一个趋势:除了传统的 AppSec 之外,零信任安全和 DevSecOps 对于企业保持线上安全至关重要。

2021 年愿景

通过建立最终用户驱动的开源,CNCF 将继续为开源代码和社区发展设定标准。我们旨在通过资源和计划来支持项目,并使其与技术使用者之间的联系更加紧密。在毁灭性的 2020 年之后,2021 年将是新挑战的一年。去年,CNCF 已证明了其韧性。今年我们必须再来一次,并创建另一个“新常态”。CNCF 将成长为一个日益多样化的社区,以推动多元化的弹性。

原文链接:https://thenewstack.io/the-first-six-months-cncf-observations-and-2021-vision/

本周 K8s 开源项目推荐

dyff

  • 它是用于 YAML 文件(或者 JSON)的差异工具。
  • github.com/homeport/dyff

kfilt

  • 它可以从 Kubernetes YAML 中过滤出特定资源。
  • github.com/ryane/kfilt

kubectl-sudo

  • 该插件允许用户使用其他用户的安全特权运行 kubernetes 命令
  • github.com/postfinance/kubectl-sudo

kalm

  • 它提供了一个 Web 界面,可以轻松执行常见的 Kubernetes 工作流程。
  • github.com/kalmhq/kalm

KubeLibrary

  • 用于测试 Kubernetes 集群的 RobotFramework 库。
  • github.com/devopsspiral/KubeLibrary

kubectl-reap

  • 这是一个 kubectl 插件,可删除未使用的 Kubernetes 资源。
  • github.com/micnncim/kubectl-reap