k8s 安装 istio(二)

3.3 部署服务网格调用链检测工具 Jaeger

  • 部署 Jaeger 服务

kubectl apply -f https://raw.githubusercontent.com/istio/istio/release-1.16/samples/addons/jaeger.yaml

  • 创建 jaeger-vs.yaml 文件

apiVersion: networking.istio.io/v1alpha3

kind: VirtualService

metadata:

  name: jaeger-vs

  namespace: istio-system

spec:

  hosts:

  - jaeger.域名.com

  gateways:

  - admin-gateway

  http:

  - route:

    - destination:

        host: tracing

        port:

          number: 80

  • 创建 Jaeger VirtualService 服务

kubectl apply -f jaeger-vs.yaml

3.4 部署服务网格检测工具 Prometheus

  • 部署 Prometheus

kubectl apply -f https://raw.githubusercontent.com/istio/istio/release-1.16/samples/addons/prometheus.yaml

  • 创建 prometheus-vs.yaml 文件

apiVersion: networking.istio.io/v1alpha3

kind: VirtualService

metadata:

  name: prometheus-vs

  namespace: istio-system

spec:

  hosts:

  - prometheus.域名.com

  gateways:

  - admin-gateway

  http:

  - route:

    - destination:

        host: prometheus

        port:

          number: 9090

  • 创建 Prometheus VirtualService 服务

kubectl apply -f prometheus-vs.yaml

4. 查看 istiod ingress 是否成功部署

kubectl get pods –A

k8s 安装 istio(二)_第1张图片

5. 登陆 Kiali 查看服务网格

在浏览器中输入 http://kiali.域名.com 访问 Kiali 服务。效果图如下所示:

k8s 安装 istio(二)_第2张图片

默认安装时,Kiali 没有设置账号密码,直接匿名登陆访问,如果在生产环境中或者管理比较规范的组织中使用 Kiali 管理服务网格,可通过修改 Kiali 配置来添加鉴权服务。配置信息在 ConfigMap 中可查看到。

k8s 安装 istio(二)_第3张图片

  • jaeger 地址:http://jaeger.域名.com
  • prometheus 地址:http://prometheus.域名.com
  • grafana 地址:http://grafana.域名.com
  • dashboard 地址:https://dashboard.域名.com

6. 部署 kubernetes dashboard

  • 部署 kubernetes 服务

kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml

  • 创建用户并授权

kubectl create serviceaccount dashboard-admin -n kubernetes-dashboard

kubectl create clusterrolebinding dashboard-admin-rb --clusterrole=cluster-admin --serviceaccount=kubernetes-dashboard:dashboard-admin

  • 获取登陆 kubernetes dashboard 的 token

kubectl -n kubernetes-dashboard create token dashboard-admin

  • 创建 dashboard-vs.yaml 文件

apiVersion: networking.istio.io/v1alpha3

kind: VirtualService

metadata:

  name: dashboard-vs

  namespace: istio-system

spec:

  hosts:

  - "dashboard.域名.com"

  gateways:

  - admin-gateway

  tls:

  - match:

    - sniHosts:

      - "dashboard.域名.com"

    route:

    - destination:

        host: kubernetes-dashboard.kubernetes-dashboard.svc.cluster.local

        port:

          number: 443

      weight: 100

  • 创建 dashboard VirtualService

kubectl apply -f dashboard-vs.yaml

  • 访问 dashboard

https://dashboard.域名.com

请注意 dashboard 使用的是 https 协议。效果图如下所示:

k8s 安装 istio(二)_第4张图片

  • 获取 dashboard 登陆 token

kubectl -n kubernetes-dashboard create token dashboard-admin

登陆系统效果图

k8s 安装 istio(二)_第5张图片

你可能感兴趣的:(kubernetes,istio,容器)