术语库

本页面提供在 Anthos Service Mesh 文档中使用的术语的简要定义,并提供了指向这些术语的详细信息的链接。

A

Anthos Workload Identity
trust domainnamespaceservice accounttuple。它在 Anthos 工作负载 x509 证书中包含 spiffe://<workload_identity_pool>/ns/<namespace>/sa/<serviceaccount> 的 SPIFFE 身份格式。对于其他凭据类型(例如,OIDC 令牌),格式可能会有所不同。

C

Canary 升级
请参阅基于修订版本的升级
规范化服务
应用于 Anthos Service Mesh 中工作负载的标签,允许您将一个或多个工作负载分组为服务网格中的逻辑服务。工作负载可以只属于一项规范服务,但可以属于多个 Kubernetes 服务。规范化服务由名称和命名空间标识,可以进一步划分到一个或多个规范化修订版本。
控制层面

控制层面是一组系统服务,用于配置网格或网格的子集以管理其中的工作负载实例之间的通信。Anthos Service Mesh 1.9 及更高版本提供两个控制层面:

  • Google 管理的控制平面:这是一种全代管式 Google Cloud 服务,您无需配置,但完全可配置。Google 会为您处理其可靠性、升级、扩缩和安全性。代管式 Anthos Service Mesh 包含 Google 管理的控制层面,以及可选的 Google 管理的数据层面(预览版)。

  • 集群内控制层面:这是集群上安装的由 Google 支持的 istiod 发行版。使用 istiod 安装 Anthos Service Mesh 时,您负责升级和配置安全性和扩缩。

虽然控制层面将其配置分发到辅助信息文件代理,但控制层面不会直接处理网格中工作负载的流量。

D

数据层面
数据层面是网格中直接处理工作负载实例之间的通信的部分。Anthos Service Mesh 的数据平面使用部署为 sidecar 的代理来调解和控制网格服务发送和接收的 TCP 流量。代管式 Anthos Service Mesh 提供 Google 管理的数据层面(预览版)。

E

出站网关
出站网关是一个 Envoy 代理,可让您为离开网格的流量配置专用退出节点。您可以使用网关自定义资源来配置代理。通过出站网关,您可以限制哪些服务可以或应该访问外部网络。如需了解详情,请参阅安装和升级网关

F

队列
借助队列(以前称为 Environ),您可以组织集群,以简化多集群管理。在队列中注册集群会引入身份、命名空间和服务的“相同性”概念,从而简化多集群网格的管理。如果您在不同项目中拥有集群,则您需要向队列宿主项目(而不是创建集群的项目)注册集群。如需详细了解队列,请参阅队列简介

H

混合清单
可在目标中部署的清单。如需混合清单,通常使用 Helm、Kustomize 或 kpt 等工具为清单中的变量设置值。

I

identity

身份是一种基本的安全基础架构概念。Anthos Service Mesh 身份模型基于一流的工作负载身份。在服务到服务通信开始时,双方将凭据与其身份信息交换以进行双向身份验证。

客户端会根据其安全命名信息检查服务器的身份,以确定服务器是否有权运行服务。

服务器会检查客户端的身份,以确定客户端可以访问的信息。服务器会根据配置的授权政策决定是否允许访问。

使用身份,服务器可以审核访问信息的时间以及特定客户端访问的信息。客户也可以根据其使用的服务向客户端收费,并拒绝所有未能向其结算服务付费的客户端。

Anthos Service Mesh 身份模型非常灵活,足够精细,用于表示真人用户、一项服务或一组服务。在没有一流的服务身份的平台上,Anthos Service Mesh 可以使用其他可以对服务实例进行分组的身份,例如服务名称。

Anthos Service Mesh 在不同平台上支持以下服务身份:

  • Kubernetes:Kubernetes 服务账号

  • Google Kubernetes Engine:Google Cloud 服务账号

  • Google Cloud:Google Cloud 服务账号

入站网关

入站网关是一个 Envoy 代理,用作处理从网格外部传入的流量的负载均衡器。您可以使用网关自定义资源来配置负载均衡器,并且您可以创建虚拟服务和身份验证政策来控制保护传入流量的安全以及将这些流量路由到您的工作负载的方式。如需了解详情,请参阅安装和升级网关

注入

注入(或自动注入)是指使用更改网络钩子在创建时修改 Pod 规范。您可以使用注入来为网格服务添加 Envoy 代理 Sidecar 配置,或者配置网关的 Envoy 代理。

就地升级

就地升级将现有控制平面替换为新的修订版本。我们建议的最佳做法是执行基于修订版本的升级

istiod

istiod(“d”表示“daemon”)是合并的单体二进制文件,可提供控制层面服务。在 Anthos Service Mesh 1.5 之前,控制层面服务由名为 Pilot、Citadel、Mixer 和 Galley 的单独组件提供。

IstioOperator

用于配置集群内控制层面的自定义资源。如需了解详情,请参阅启用可选功能

M

托管实例组 (MIG)
可让您在多个相同的虚拟机上运行应用,从单个虚拟机的最小 MIG 大小开始。您可以利用自动化 MIG 服务让您的工作负载具有可扩缩性和高可用性,这些服务包括自动扩缩、自动修复、区域(多地区)部署和自动更新。如需了解详情,请参阅代管式实例组 (MIG)

清单

用于创建、修改和删除 Kubernetes 资源(例如 Pod、Deployment、Service 或 Ingress)的 Kubernetes 配置对象。在 Anthos Service Mesh 文档中,用于配置控制层面的清单称为叠加层文件

清单以两种状态之一存在:已渲染(也称为混合)或未渲染。未渲染的清单尚未准备好部署到目标中。渲染流程(包括将特定值填充到清单中)通常由 Helm、Kustomize 和 kpt 等工具执行。

Mesh CA
管理 mTLS 证书的 Google 管理证书授权机构的名称。在 Google Cloud 上的 GKE 集群上安装 Anthos Service Mesh 时,Mesh CA 默认处于启用状态;在 GKE on VMware 或 GKE on Bare Metal 上安装 Anthos Service Mesh 1.10 或更高版本时,您可以视需要启用 Mesh CA。
双向 TLS
Anthos Service Mesh 使用双向 TLS (mTLS) 在网格中的服务之间进行身份验证和加密。mTLS 能够帮助工作负载彼此进行身份验证。您可能熟悉如何在 HTTPS 中使用简单 TLS,以允许浏览器信任 Web 服务器以及加密交换的数据。使用简单 TLS 时,客户端会验证服务器证书,从而信任该服务器。mTLS 是 TLS 的一种实现,在这种协议中,客户端和服务器互相提供证书并验证彼此的身份。

网络
Anthos Service Mesh 会根据通用连接使用简化的网络定义。如果工作负载实例无需使用网关就可以直接通信,则它们位于同一网络上。

O

叠加层文件
包含 IstioOperator 自定义资源 (CR) 的 YAML 文件。叠加层文件用于配置控制层面。您可以替换默认控制层面配置,并在您传递到 istioctl installinstall_asm 脚本的 YAML 文件中启用受支持的可选功能。您可以叠加多个文件,每个叠加文件会覆盖之前各层的配置。 如需了解可用于默认启用的功能,请参阅启用可选功能

P

主集群
主集群是具有控制层面的集群。单个网格可以有多个主集群来实现高可用性或缩短延迟时间。 在 Istio 1.7 文档中,多主模式部署称为复制的控制层面。

R

远程集群
远程集群是连接到集群外部的控制层面的集群。远程集群可以连接到在主集群中运行的控制层面或外部控制层面。
修订版本
修订版本表示应用代码版本和配置的时间点快照。安装或升级 Anthos Service Mesh 时,修订版本标签会添加到控制层面中。如需启用自动辅助信息文件注入,请将修订版本标签添加到命名空间并重启 Pod。修订版本标签会将命名空间中的 pod 与特定控制层面修订版本相关联。
基于修订版本的升级
从 OSS Istio 迁移和升级遵循基于修订版本的升级流程(在 Istio 文档中称为“Canary 升级”)。使用基于修订版本的升级时,控制层面的新修订版本会与现有控制层面一起安装。然后,您可以将一部分工作负载迁移到新修订版本,这样,您就可以先通过一小部分工作负载监控升级的影响,然后再将所有流量迁移到新修订版本。

S

安全命名
服务器身份在证书中编码,但服务名称通过发现服务或 DNS 检索。安全命名信息用于将服务器身份映射到服务名称。将身份 A 映射到服务名称 B 表示“A 有权运行服务 B”。控制层面会观察 apiserver,生成安全命名映射,并安全地将其分发给 Sidecar 代理。
服务网格
服务网格(简称网格)是基础架构层,可在工作负载实例之间实现代管式、可观测且安全的通信。
辅助信息文件
一种模式,可用于与工作负载一起运行实用程序或帮助程序。如果您使用的是 Kubernetes,则辅助信息文件将与 Pod 中的工作负载容器一起运行。在讨论服务网格时,“辅助信息文件”一词通常用于指代理。

T

信任网域

信任网域对应于系统信任根,属于工作负载身份。

Anthos Service Mesh 使用信任网域在网格中创建所有身份。例如,在 SPIFFE ID spiffe://mytrustdomain.com/ns/default/sa/myname 中,子字符串 mytrustdomain.com 指定工作负载来自名为 mytrustdomain.com 的信任网域。

使用 Mesh CA 时,信任网域由 Anthos Service Mesh 自动生成。它基于集群的工作负载池

您可以在多集群网格中包含一个或多个可信网域,前提是集群具有相同的信任根。

W

工作负载
工作负载是容器化应用、服务或其他程序(如批处理作业或在平台上运行的守护程序)。该平台可以是 Kubernetes 集群、虚拟机或其他环境(如 Google Distributed Cloud Virtual for Bare Metal)。工作负载具有名称、命名空间和唯一 ID。在 Kubernetes 上,工作负载通常对应于 Deployment,但存在其他类型的工作负载,如 StatefulSet
WorkloadEntry
允许您描述应属于网格的非 Kubernetes-Pod 端点,并将其视为 Kubernetes Pod。在我们的示例中,每个虚拟机已在网格中注册为 WorkloadEntry。如需了解详情,请参阅 https://istio.io/latest/blog/2020/workload-entry/
WorkloadGroup
描述了工作负载实例的集合。请参阅 WorkloadGroup
Workload Identity pool
信任边界,也称为 Anthos Service Mesh 的信任网域。