k8s 1.18 对应的istio版本 1.10.6.(版本一定要匹配!!!,否则有错误)
istioctl manifest apply --set profile=demo
有时候需要手动删除validatingwebhookconfigurations
kubectl get validatingwebhookconfigurations
kcl apply -f samples/bookinfo/platform/kube/bookinfo.yaml
有时候sidecar注入不成功需要清理etcd。
systemctl restart etcd
手动插入sidecard
kubectl apply -f <(istioctl kube-inject -f samples/bookinfo/platform/kube/bookinfo.yaml)
kubectl apply -f samples/bookinfo/networking/bookinfo-gateway.yaml经常报错,可以以下代替,手动注入。
kubectl apply -f <(istioctl kube-inject -f samples/bookinfo/networking/bookinfo-gateway.yaml)
删除:
istioctl manifest generate --set profile=demo | kubectl delete -f -
istioctl x uninstall --purge
service/istio-ingressgateway 以nodeport的形式开放,修改80对应的nodeport。外网直接访问这个端口。通过配置virtualservice路由找到相应服务。
kind:gateway,定义的是规则,不是安装pod。kind:gateway和virtualservie共同定义了流量的走向。istio-ingressgateway的pod是安装了容器。
三大件: kind:Gateway,kind:VirtualService,kind:DestinationRules.配合起来路由。