Linkerd v2.9 发布

近日,Linkerd v2.9 正式发布,此版本将 Linkerd 的零配置双向 TLS(mTLS)支持扩展到所有 TCP 连接当中,使得 Linkerd 在集群安装完成之后即可透明加密并验证集群中的全部 TCP 连接。另外,v2.9 还增加了对 ARM 架构的支持,包括引入新的多核代理运行时以提高吞吐量,同时支持 Kubernetes 服务拓扑等

Linkerd 是一个提供弹性云端原生应用服务网格(service mesh)的开源项目,也是面向微服务的开源 RPC 代理,现由 CNCF 负责托管。它的核心是一个透明代理。linkerd 是一个透明的服务网格,旨在通过透明地将服务发现、负载均衡、故障处理,插桩(instrumentation)和路由添加到所有的服务间通信中,使现代应用程序安全可靠,而无需侵入应用内部本身的实现。Linkerd v2.9 还迎来了大量其他改进、性能增强与错误修复,具体包括:

  • 新增“自带 Prometheus”选项,用户可以借此跳过 Linkerd 的 Prometheus 集群,直接使用自己的 Prometheus 集群。
  • 支持Kubernetes v1.19。
  • 支持经过身份验证的Docker注册表
  • 支持入口层级上的负载均衡决策。
  • 可为 CLI 提供fish shell。

关于新版本的完整细节,请参阅发行版说明:github.com/linkerd/linkerd2/releases/tag/stable-2.9.0

渣打银行 167 年银行业务上云

金融世界瞬息万变。为了在新的竞争环境中竞争,现有企业必须对他们的产品进行现代化,对于他们中的许多人来说,这涉及对 IT 体系结构进行现代化,从本地数据中心和整体式应用程序转向更加敏捷的开发流程和基于云的基础架构。

渣打银行就是其中之一。这家总部位于英国的跨国公司成立于 1853 年,前身是印度、澳大利亚和中国的特许银行,尽管缺乏在英国的零售银行业务,但仍在亚太地区和 EMEA 地区处理大量的公司和消费者银行业务。近日,该公司正寻求将其应用程序和服务转移到云中,以利用其提供的敏捷性,渣打银行云转型首席技术官布彭·沃拉特(Bhupen Warathe)就负责此事。其实这并不是该公司首次使用云。实际上,渣打银行在过去三年中一直在使用公共云,已经有六个应用程序作为试点测试。

与许多云迁移一样,作为该项目的一部分,该银行的目标是提高其服务的可伸缩性。Warathe 表示,在其一些较大的亚洲市场中,渣打银行正在处理的付款和交易量有了巨大的增长。因此,在某些市场中,特定日期的交易量是另一天的 10 倍。 Kubernetes 提供了业界前所未有的最佳可扩展性。

CNCF 7 个新沙箱项目

近日,CNCF 迎来了一批新的沙箱项目:

cert-manager

  • cert-manager 是 Kubernetes 的附加组件,用于自动管理和颁发各种发行来源的 TLS 证书。它将确保证书有效并定期更新,并在到期前的适当时间更新证书。
  • cert-manager.io
  • github.com/jetstack/cert-manager

cdk8s

  • cdk8s 是一个软件开发框架,使用编程语言和面向对象的 API 定义 Kubernetes 应用程序和可重用抽象。我们可以使用 cdk8s 为在任何地方运行的任何 Kubernetes 集群定义应用程序。
  • cdk8s.io
  • github.com/awslabs/cdk8s

Kyverno

  • Kyverno 是为 Kubernetes 设计的策略引擎。它可以使用准入控制和背景扫描来验证、修改和生成配置。
  • kyverno.io
  • github.com/kyverno/kyverno

OpenKruise

  • OpenKruise 是用于工作负载管理的 Kubernetes 自动化套件。Kruise 是 OpenKruise 的核心项目之一,它提供了一套在 Kubernetes 核心控制器之外的扩展 workload 管理和实现。
  • openkruise.io
  • github.com/openkruise/kruise

Pravega

  • Pravega 是实现 Streams 的开源分布式存储服务。它提供 Stream 作为可靠存储系统基础的主要原语。
  • pravega.io
  • github.com/pravega/pravega

SchemaHero

  • SchemaHero 是 Kubernetes Operator ,用于各种数据库的声明式架构管理。
  • schemahero.io
  • github.com/schemahero/schemahero

Tinkerbell

  • Tinkerbell 是一种灵活的裸机配置引擎。
  • tinkerbell.org
  • github.com/tinkerbell

Contour v1.10.0 发布

近日,Contour v1.10.0 发布。Contour 新版本现在包含了对 Envoy xDS v3 的支持,对 v2 版本的支持将在 2021 年初取消。Contour 还增加了对多架构镜像的支持,允许在多个平台上部署,并扩展了对自定义 JSON 日志字段的支持。

Envoy xDS v3支持v1.10.0 中新增了一个 --xds-resource-version 标志,可以在 contour bootstrap 命令中配置,现在将配置文件中的引导 xDS 资源和传输版本更改为 v3。不过,v1.10.0 的默认版本仍然是 v2。这意味着用户可以将 Envoy 实例从 v2 升级到 v3,而不会丢失任何连接,因为 Contour 同时提供 v2 和 v3 两个版本。

自定义日志记录

现在,Contour v1.10.0 增加了对用户自定义访问日志的支持。我们可以在结构化 JSON 日志指南中了解到该特性的更多细节以及如何配置它。

日志指南:https://projectcontour.io/guides/structured-logs/

多架构镜像

与新的访问日志功能类似,用户要求更多的架构来运行 Contour。Envoy 从 v1.16.0 开始支持基于 ARM 的架构,Contour 也提供了多架构的构建。

项目地址:github.com/projectcontour/contour

本周 K8s 开源项目推荐

kdo

  • 这是一个命令行工具,使开发人员可以在实际的部署环境中运行、开发和测试代码更改。
  • github.com/stepro/kdo

version-checker

  • 它可以用于观察集群中运行镜像的当前版本以及上游可用的最新版本。
  • github.com/jetstack/version-checker

kubectl-reap

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

checkov

  • 这是用于基础设施即代码的静态代码分析工具。
  • github.com/bridgecrewio/checkov

illuminatio

  • 它是用于自动测试 kubernetes 网络策略的工具。
  • github.com/inovex/illuminatio

stale-feature-branch-operator

  • 它用于删除 Kubernetes 集群中的陈旧功能分支。
  • github.com/dmytrostriletskyi/stale-feature-branch-operator

5 种管理多云环境的方法

随着越来越多的云平台进入这些企业,组织需要紧密管理各种环境,以便每个机构都能朝着共同的使命迈进,以下是使多云环境更有效的五种方法:

建立治理

多云治理应解决诸如谁有权启动环境等主题;候选人提供者如何经过审查并整合到现有环境中;如何对企业架构和设计进行更改;以及如何在整个企业范围内管理云基础架构成本(例如,容量管理、成本优化、成本透明度和问责制)。组织需要考虑是实施集中式治理还是联合治理。

创建可扩展的基础架构

可扩展的基础架构使组织可以更轻松地将更新的功能集成到环境中。在相同或跨云提供商平台中,通过部署微服务和应用程序编程接口(API)来支持创新,扩展并避免与任何一个 CSP 锁定,使架构师和设计环境开放是很重要的。

使基础架构成为代码(IaC)并成为标准做法

跨云环境使用 IaC 和模板减少了在部署和配置过程中发生人为错误的可能性,允许组织建立可重复的蓝图来配置和保护资源、多云环境。IaC 和模板的使用可以帮助加速环境部署,并在整个云环境中提供自动化的云安全控制。

定义和实施健壮的 DataOps 流程

谈论多云时,经常会忽略数据主题,但这是一个非常关键和复杂的工作。拥有清晰的 DataOps 战略和实施计划将能够实现更好的管理和安全性,从而确保能够更好地利用多云环境中的数据服务。

确定人才和文化需求

评估人才和文化需求将帮助组织确定可以发展的领域,以便更好地利用多云环境带来的好处。组织应该从简单开始,然后构建更高级的多云部署设计。