Istio使用【dashboard—kiali】

本文使用的istio版本号:1.4.2

配置安装kiali

默认配置,istio并未选择安装kiali,参考安装,修改values.yaml

vim install/kubernetes/helm/istio/values.yaml
....
kiali:
  enabled: true
....

同时如果需要链路监控,需要开启安装jaeger

....
tracing:
  enabled: true
....

如果系统中没有安装grafana和Prometheus,也需要开启

.....
grafana:
  enabled: true

prometheus:
  enabled: true
.....

配置kiali

可以在安装前配置好kaili,主要配置集中在

vim install/kubernetes/helm/istio/charts/kiali/values.yaml
......
ingress:
  enabled: false
  hosts:
    - kiali.local

dashboard:
  auth:
    strategy: login
  secretName: kiali 
  viewOnlyMode: false 
  grafanaURL:  
  jaegerURL:  
prometheusAddr: http://prometheus:9090
.....

配置访问:ingress是否开启,hosts地址,tls...

访问策略:

  • strategy:认证策略,可以是anonymous, login, openshift,默认login
  • secretName:登录用户名/密码,需要提前创建好secret

apiVersion: v1
kind: Secret
metadata:
  name: kiali
  labels:
    app: kiali
    version: v1.9
type: Opaque
data:
  username: YWRtaW4=    # admin
  passphrase: YWRtaW4=    # admin
#base64 加密
echo -n "admin" | base64
  •  grafanaURL:grafana地址,如果是在同一个namespace下,可以是
  • http://grafana:3000 或者 http://grafana.monitoring.svc.cluster.local:3000
  • prometheusAddr:Prometheus地址,如果是在同一个namespace下,可以是

    http://prometheus:9090 或者 http://prometheus.monitoring.svc.cluster.local:9090
  • jaegerURL:jaeger地址,默认在同一个namespace istio-system下,可以是

    http://jaeger-query:16686/jaeger

如果是在安装后,想要修改kiali配置,可以修改istio-system下configmap kiali

kubectl edit cm  kiali   -n istio-system

修改configmap里面的config.yaml文件,对应的

istio_namespace: istio-system
deployment:
  accessible_namespaces: ['**']
auth:
  strategy: login
server:
  port: 20001
  web_root: /kiali
external_services:
  tracing:
    url: http://jaeger-query:16686/jaeger
  grafana:
    url: http://grafana:3000
  prometheus:
    url: http://prometheus:9090

修改完需要重启kiali POD。

预览

 

关于 Kubernetes (k8s) 和 Istio 的可视化工具,目前并没有名为 **Vistio** 的官方或广泛使用的工具。然而,在 k8s 和 Istio 生态系统中存在多个强大的可视化工具,可以满足管理和监控的需求。以下是相关内容的详细介绍: --- ### 已知信息整理 1. 用户提到的“Vistio”可能是一个拼写错误或者是未被识别的新工具名称。 2. 提到的引用内容涉及 Kubernetes Dashboard[^1]、Istio 中的 Kiali 工具[^2]、Helm Chart 预览功能[^3]、Istio 安装配置文件[^4]以及 Istio 功能概述[^5]。 基于以上背景,以下是对现有主流 k8s 和 Istio 可视化工具的介绍及其使用方法。 --- ### 一、Kubernetes 可视化管理工具 #### 1. Kubernetes Dashboard Kubernetes Dashboard 是一个通用的 Web UI,允许用户管理集群资源并查看其状态。它提供了直观的操作界面,适用于日常运维工作。 ##### 主要功能: - 创建、删除和更新 Pod、Service、Deployment 等资源。 - 实时查看容器日志。 - 资源健康状况概览。 ##### 部署步骤: 可以通过 YAML 文件部署 Kubernetes Dashboard: ```yaml apiVersion: v1 kind: ServiceAccount metadata: name: admin-user namespace: kube-system --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: admin-user roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: cluster-admin subjects: - kind: ServiceAccount name: admin-user namespace: kube-system ``` 运行以下命令启动 Dashboard: ```bash kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml kubectl proxy ``` 访问地址为 `http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/`。 --- ### 二、Istio 可视化工具 #### 1. Kiali Kiali 是专门为 Istio 设计的服务网格可视化工具,能够帮助管理员了解服务间的通信模式和服务依赖关系。 ##### 主要功能: - 显示服务间流量拓扑图。 - 展示延迟、请求速率和其他性能指标。 - 支持灰度发布、金丝雀发布的实时监控。 ##### 部署步骤: 前提条件:已安装 Istio 并启用 Prometheus 数据收集。 ```bash kubectl apply -f samples/addons kubectl rollout status deployment/kiali -n istio-system ``` 访问地址通常位于 `http://<ingress-gateway-ip>/kiali`。 #### 2. Grafana Grafana 结合 Prometheus 提供了详细的性能监控面板,可用来分析 Istio 的各项指标。 ##### 主要功能: - 自定义仪表盘以显示 CPU、内存、网络吞吐量等数据。 - 设置告警规则以检测异常行为。 ##### 配置示例: 确保 Istio 的 Prometheus 插件已启用,并通过以下命令验证: ```bash kubectl get svc prometheus -n istio-system ``` 登录 Grafana 控制台 (`http://<grafana-ip>:3000`) 并加载预设的 Istio Dashboards。 --- ### 三、其他辅助工具 #### 1. Helm UI Helm 是 Kubernetes 的包管理器,而 Helm UI 则提供了一个图形化的界面来简化 Chart 的管理和版本控制。 ##### 特点: - 在升级或重新配置 Chart 时,可以预览清单变化[^3]。 - 减少手动编辑 YAML 文件的风险。 #### 2. Jaeger Jaeger 是分布式跟踪系统,常与 Istio 配合使用以捕获微服务调用链路。 ##### 主要功能: - 追踪跨服务的请求路径。 - 发现潜在瓶颈和性能问题。 ##### 部署命令: ```bash kubectl apply -f samples/addons/jaeger.yaml ``` --- ### 四、综合推荐 如果目标是寻找类似于“Vistio”的工具,建议优先考虑以下组合: - 对于 Kubernetes 集群管理:使用 **Kubernetes Dashboard**。 - 对于 Istio 服务网格可视化:采用 **Kiali** 和 **Grafana**。 - 对于分布式追踪:引入 **Jaeger**。 这些工具共同构成了完整的可观测性解决方案。 --- ### 示例代码片段 以下是如何检查 Kiali 是否正常工作的脚本: ```bash #!/bin/bash echo "Checking Kiali Deployment Status..." STATUS=$(kubectl rollout status deployment/kiali -n istio-system | grep "successfully rolled out") if [[ $STATUS ]]; then echo "Kiali is running successfully." else echo "Error: Kiali deployment failed." fi ``` --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值