Ambassador和Istio:边缘代理和服务网格
Posted ServiceMesh中文网
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ambassador和Istio:边缘代理和服务网格相关的知识,希望对你有一定的参考价值。
翻译:王斌
原文:Ambassador and Istio: Edge proxy and service mesh
Ambassador(https://www.getambassador.io)是一个 Kubernetes 原生的微服务 API 网关,它部署在网络边缘,将传入网络的流量路由到相应的内部服务(也被称为“南北”流量)。Istio 是微服务的服务网格,旨在将L7的可观察性、路由和弹性加入到从服务到服务的流量中(也被称为“东西”流量)。 Istio 和 Ambassador底层都使用了 Envoy。
Ambassador 和 Istio 可以一起部署在 Kubernetes 上。在这种部署方式下,来自集群外部的入站流量首先会经过 Ambassador,再由 Ambassador将流量路由到 Istio。Ambassador 主要处理认证、边缘路由、TLS终结,以及一些传统的边缘功能。
这种部署方式能让运维人员得到一个高性能、现代化的边缘服务(Ambassador)与最先进的服务网格(Istio)相结合的网络。虽然 Istio 本身就有一个基本入口控制器,但其功能非常有限,并且不支持身份验证以及 Ambassador所拥有的许多功能。
Ambassador和 Istio 协同工作
要让 Ambassador 与 Istio 协同工作其实很简单,我们以 Istio 的bookinfo示例来举个例子:
1. 首先,在 Kubernetes 上安装 Istio。
参考指南:https://istio.io/docs/setup/kubernetes/quick-start.html
2. 然后,安装 Bookinfo 示例应用。
参考指南:https://istio.io/docs/guides/bookinfo.html
3. 验证示例是否按预期正常工作。
Bookinfo 示例默认使用的是 Istio 的入口控制器,要使用 Ambassador,我们还需要进行以下操作:
1. 安装Ambassador。
参考指南:https://www.getambassador.io/user-guide/getting-started
2. 更新 bookinfo.yaml 清单以包含必要的Ambassador注解,操作如下:
apiVersion: v1
kind: Service
metadata:
name: productpage
labels:
app: productpage
annotations:
getambassador.io/config: |
---
apiVersion: ambassador/v0
kind: Mapping
name: productpage_mapping
prefix: /productpage/
rewrite: /productpage
service: productpage:9080
spec:
ports:
- port: 9080
name: http
selector:
app: productpage
输入kubectl delete ingress gateway命令,这将会删除 bookinfo.yaml 清单中的入口控制器。此步骤为可选。
Sidecar注入
新版本的 Istio 支持 Kubernetes 初始化程序自动注入Istio Sidecar。有了Ambassador,你不再需要注入Istio Sidecar,因为 Ambassador 的 Envoy 实例将自动路由到相应的服务。如果你正在使用的是自动Sidecar注入方式,那么需要将 Istio 配置成不要自动为 Ambassador pods 注入Sidecar。具体操作方法可以参阅这份说明文档。
文档链接:https://istio.io/docs/setup/kubernetes/sidecar-injection.html#configuration-options
点击阅读原文,即可查看文档
活动推荐:
1月27日,数人云Building Microservice系列沙龙活动,第一期深圳站 《Cloud Native架构下的K8S和微服务实践》,报名倒计时两周啦。
扫码即可报名
ServiceMesh中文社区:
ServiceMesh中文社区(servicemesh.cn)已上线,Istio、Conduit官方文档翻译版已在社区发布,欢迎大家登录浏览。
ServiceMesh微信交流群:
以上是关于Ambassador和Istio:边缘代理和服务网格的主要内容,如果未能解决你的问题,请参考以下文章