利用Wasm扩展Istio数据平面及非Kubernetes工作负载的服务网格部署
利用Wasm扩展Istio数据平面
1. Wasm与Istio结合
我们可以使用之前构建的Wasm来扩展Istio数据平面,这里会用到Istio的WasmPlugin API。以下是具体操作步骤:
1. 上传Wasm文件 :将在Go模块中创建的 main.Wasm
上传到HTTPS位置,可使用AWS S3或OCI注册表(如Docker Hub)。示例中,将 main.Wasm
上传到了AWS S3,其HTTPS位置为 https://anand-temp.s3.amazonaws.com/main.Wasm
。
2. 部署httpbin应用 :使用以下命令部署httpbin应用:
% kubectl apply -f Chapter09/01-httpbin-deployment.yaml
然后检查以下命令的响应,并观察请求期间添加的标头:
% curl -H "Host:httpbin.org" http://a816bb2638a5e4a8c990ce790b47d429-1565783620.us-east-1.elb.amazonaws.com/get