Istio kiali 可视化
官方文档:
https://preliminary.istio.io/zh/docs/tasks/observability/kiali/
安装
方法1、初始化时选择的 -set profile=demo 默认会安装kiali.
方法2、通过 istioctl 安装
创建 Kiali secret 后,请参照 istioctl 安装说明 来安装 Kiali。 例如:
$ istioctl manifest apply --set values.kiali.enabled=true
该任务不讨论 Jaeger 和 Grafana。 如果已经在集群中安装了它们,并且想了解 Kiali 如何与它们集成,则必须将其他参数传递给 helm 命令,例如:
$ istioctl manifest apply \
--set values.kiali.enabled=true \
--set "values.kiali.dashboard.jaegerURL=http://jaeger-query:16686" \
--set "values.kiali.dashboard.grafanaURL=http://grafana:3000"
nodeport 暴露
istio-ingressgateway 默认是loadBalancer
kubectl edit svc istio-ingressgateway -n istio-system
修改最后 type: NodePort
#查看对应暴露80
kubectl get svc istio-ingressgateway -o wide -n istio-system
外部访问:
istio-ingressgateway所在NODEIP:80端口对应NodePort
例如:
istio-ingressgateway 所在node ip 为: 192.168.4.4
istio-ingressgateway svc 对应80 nodeport 为: 36668
访问地址为: 192.168.4.4:36668
创建对应资源
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: kiali-gateway
namespace: istio-system
spec:
gateways:
- istio-ingressgateway
hosts:
- kiali.lswzw.com
http:
- route:
- destination:
host: kiali
port:
number: 20001
下面方法弃用。
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
name: kiali-gateway
namespace: istio-system
spec:
selector:
istio: ingressgateway # use Istio default gateway implementation
servers:
- port:
number: 80
name: http
protocol: HTTP
hosts:
- "kiali.lswzw.com"
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: kiali-gateway
namespace: istio-system
spec:
gateways:
- kiali-gateway
hosts:
- kiali.lswzw.com
http:
- route:
- destination:
host: kiali
port:
number: 20001
访问
服务测试:
curl -I -HHost:kiali.lswzw.com http://192.168.4.4:36668/kiali/
HTTP/1.1 200 OK
accept-ranges: bytes
content-length: 2330
content-type: text/html; charset=utf-8
last-modified: Sat, 07 Mar 2020 15:59:46 GMT
vary: Accept-Encoding
date: Mon, 09 Mar 2020 03:46:39 GMT
x-envoy-upstream-service-time: 0
server: istio-envoy
出现上面说明服务正常。
本地浏览器访问
设置本地hosts 指向
192.168.4.4 kiali.lswzw.com
让域名指向NODEIP
web访问:
kiali.lswzw.com
默认账户密码为: admin/admin