Anthos Service Mesh 是一套工具,可帮助您在本地或在 Google Cloud 上监控和管理可靠的服务网格。
什么是服务网格?
服务网格是一个基础架构,可在您的服务之间实现代管、可观测的安全通信,让您在所选基础架构上创建由众多微服务组成的稳健的企业应用。服务网格会考虑运行服务(例如监控、网络和安全)的所有常见问题,并使用一致的强大工具,使服务开发者和运营商更轻松地专注于为其用户创建和管理出色的应用。
Anthos Service Mesh 由 Istio 提供支持,Istio 是一种高度可配置且功能强大的开源服务网格平台,具有支持行业最佳做法的工具和功能。Anthos Service Mesh 部署为整个基础架构的统一层。服务开发者和运营商可以使用其丰富的功能集,而无需对应用代码进行任何更改。
在架构上,服务网格由一个或多个控制平面和数据平面组成。服务网格监控通过代理的所有流量。在 Kubernetes 上,代理将由 Sidecar 模式部署到网格中的微服务。在虚拟机 (VMS) 上,此代理安装在虚拟机上。此模式可将应用或业务逻辑与网络功能分离开来,使开发者能够专注于业务所需的功能。借助服务网格,运营团队和开发团队可以将他们的工作彼此分离。
下图展示了适用于集群内控制层面和 Sidecar 代理的 Anthos Service Mesh 组件和功能。
Anthos Service Mesh 有何好处?
借助 Anthos Service Mesh,GKE Enterprise 可以对 Istio 分发进行测试和支持,从而让您能够在 GKE on Google Cloud 及其他全面支持 Google 的平台上创建和部署服务网格。
特性
Anthos Service Mesh 具有一套功能和工具,可帮助您以统一的方式观察和管理安全、可靠的服务。
注意:某些功能(包括 Google Cloud 控制台中的 Anthos Service Mesh 页面)仅适用于 GKE on Google Cloud。如需了解每个平台支持的服务网格功能,请参阅支持的功能。
流量管理
Anthos Service Mesh 控制服务之间、网格(入站流量)和外部服务(出站流量)之间的流量流动。您可以配置和部署与 Istio 兼容的自定义资源,以在应用 (L7) 层管理此流量。例如,使用自定义资源,您可以:
Anthos Service Mesh 按名称和各自的端点维护网格中所有服务的服务注册表。它维护注册表以管理流量流动(例如 Kubernetes pod IP 地址)。通过使用此服务注册表以及与服务并行运行代理,网格可以将流量定向到相应的端点。
可观测性数据分析
Google Cloud 控制台中的 Anthos Service Mesh 页面提供了以下有关服务网格的数据分析:
网格 GKE 集群中的 HTTP 流量服务指标和日志会自动提取到 Google Cloud。
预配置的服务信息中心可为您提供了解服务所需的信息。
借助深度遥测功能(由 Cloud Monitoring、Cloud Logging 和 Cloud Trace 提供支持),您可以深入了解服务指标和日志。您可以过滤并筛选各种属性的数据。
服务到服务关系快览有助于您了解连接到每项服务的用户,以及每项服务所依赖的服务。
您不仅可以快速了解您的服务的通信安全状况,还可以了解该服务与其他服务的关系。
通过服务等级目标 (SLO),您可以深入了解服务的运行状况。您可以轻松定义 SLO 并针对您自己的服务运行状况标准发出提醒。
参阅我们的可观测性指南,详细了解 Anthos Service Mesh 的可观测性功能。
安全优势
降低使用被盗凭据重放或冒充别人攻击的风险。Anthos Service Mesh 依赖于双向 TLS (mTLS) 证书进行对等身份验证,而不是 JSON Web 令牌 (JWT) 等不记名令牌。
确保传输加密。使用 mTLS 进行身份验证还可确保所有 TCP 通信在传输过程中都经过加密。
确保只有经过授权的客户端才能访问包含敏感数据的服务,而不考虑客户端的网络位置和应用级层凭据。
降低您的生产网络中发生用户数据泄露的风险。您可以确保内部人员只能通过获授权的客户端访问敏感数据。
识别哪些客户端访问了包含敏感数据的服务。除 IP 地址外,Anthos Service Mesh 访问日志记录还会捕获客户端的 mTLS 身份。
所有集群内控制平面组件和代理均使用已通过 FIPS 140-2 验证的加密模块。
请参阅我们的安全指南,详细了解 Anthos Service Mesh 的安全好处和功能。
部署选项
在 1.9 之前,您在集群上安装 Anthos Service Mesh 控制层面,并自行管理管理。借助 Anthos Service Mesh 1.9 及更高版本,您可以使用以下部署选项:
- 部署 Google 管理的控制层面。
- 在服务网格中添加 Compute Engine 虚拟机。
Google 管理的控制层面
Google 管理的控制层面会自动升级、扩缩和保护网格,从而最大限度地减少手动用户维护。下图展示了适用于 Google 管理的控制层面和集群内 Sidecar 代理的 Anthos Service Mesh 组件和功能。
如需了解如何设置或迁移到 Google 管理的控制层面,请参阅配置 Google 管理的控制层面。
适用于 Compute Engine 虚拟机的 Anthos Service Mesh
适用于 Compute Engine 虚拟机的 Anthos Service Mesh 现作为预览功能提供。在同一网格的 Google Cloud 集群上,您可以管理、观察和保护在 Compute Engine 托管实例组 (MIG) 和 GKE 上运行的服务。您可以混用和选择最佳环境来运行服务,同时享受 Anthos Service Mesh 的优势。下图显示了与 GKE 集群在同一服务网格中的 MIG:
如需了解详情,请参阅将 Compute Engine 虚拟机添加到 Anthos Service Mesh。