Istio 监控
概述
Istio 是一个开源独立的服务网格,提供成功运行分布式微服务架构所需的基础。随着组织越来越多地采用云平台,开发人员必须使用微服务设计可移植架构,运维人员必须管理跨混合云和多云部署的大型分布式环境。Istio 通过提供统一的方法来保护、连接和监控微服务,减少了管理微服务部署的复杂性。
创建新的 Istio 监视器
监控 Istio 指标的先决条件:点击这里
使用 REST API 添加新的 Istio 监视器:点击这里
按照以下步骤创建新的 Istio 监视器:
- 点击 新监视器 链接。
- 选择 Istio 在 服务 类别下。
- 指定 显示名称 的 Istio 服务器。
- 输入 集群主机名/IP 地址 的 Istio 服务器运行所在服务器。
- 输入凭据详情,如 用户名 和 密码 用于身份验证,或在启用 凭据管理器 后,从 从凭据列表选择 选项中选择所需凭据。
- 选中复选框以启用 公钥认证 (仅支持 SSH2),SSH 验证用的 SSH 密钥。
- 指定 命令提示符值,即命令提示符的最后一个字符。默认值为 $ ,可能的值为 >, #等等。
- 输入 SSH 端口。默认 SSH 端口为 22.
- 指定 超时 ,单位为秒。默认值为 40 秒。
- 指定 轮询间隔 ,单位为分钟。
- 选择 监控组 ,您希望将 Istio 关联到该监控组,从组合框中选择(可选)。您可以选择多个组关联监视器。
- 点击 添加监视器。这将在网络中发现 Istio 并开始监控。
监控参数
点击进入 监控类别视图 通过点击 监控 标签。点击 Istio 在 服务 表格下。显示的是分布在三个标签页中的 Istio 批量配置视图:
- 可用性 标签显示过去 24 小时或 30 天的可用性历史。
- 性能 标签显示过去 24 小时或 30 天的健康状态和事件。
- 列表视图 允许您执行批量管理配置。
点击列表中的监视器后,您将进入 Istio 监视器仪表盘。它包含 8 个标签页 -
注: 标记为 * 的标签/指标仅在 Istio 版本低于 1.5.0 时显示。
概述
| 参数 | 描述 |
|---|
| ISTIO 详细信息 |
| 命名空间 | Istio 服务器的命名空间。 |
| 状态 | Istio 命名空间的状态。 (活跃 或 非活跃) |
| Istio Pod 数量 | 在 Istio 命名空间下运行的 pod 数量。 |
| 版本 | Istio 命名空间的版本。 |
| ISTIO 组件详细信息 * |
| Citadel 实例数 | 每个组件运行的 Citadel 实例数量。 |
| Galley 实例数 | 每个组件运行的 Galley 实例数量。 |
| Mixer 实例数 | 每个组件运行的 Mixer 实例数量。 |
| Pilot 实例数 | 每个组件运行的 Pilot 实例数量。 |
| ISTIOD 组件详细信息 |
| Istiod 实例数 | 每个组件正在运行的实例(副本)数量。 |
| Istio Pod 详情 |
| Pod 名称 | Istio pod 的名称。 |
| Pod 类型 | Istio pod 的类型。 |
| Pod 状态 | Istio pod 的状态。 |
| 部署节点 | Istio pod 部署所在的节点(主机)。 |
| ISTIO MCP 重新连接 |
| 平均接收端重新连接次数 | 接收端重新连接的次数。 |
| ISTIO MCP 接收失败 |
| 源端接收失败数 | 源端网络连接接收失败的次数。 |
| ISTIO MCP 收到的确认 |
| 源端收到的请求确认 | 源端收到的请求确认次数。 |
Citadel
| 参数 | 描述 |
|---|
| Citadel 证书详情 |
| Pod 名称 | Istio pod 的名称。 |
| 为创建服务账户生成的证书 | 为创建服务账户生成的证书数量。 |
| 根证书到期时间 | 根证书过期的日期和时间。 |
| 剩余有效天数 | 证书剩余的有效天数。 |
| CSR 数量 | 证书签名请求(CSR)的数量。 |
| gRPC 响应处理统计 |
| gRPC 代码 | gRPC 返回的错误状态代码。 |
| 处理响应数 | gRPC 处理的响应类型数量。 |
Galley
| 参数 | 描述 |
|---|
| Galley 实例* |
| 实例 URL | 实例的 URL。 |
| 每个 URL 的实例数量 | 每个 URL 下运行的实例数量。 |
| Webhook 配置及验证详情 |
| Pod 名称 | Istio pod 的名称。 |
| Webhook 证书更新 | 接收到的 Webhook 证书更新数量。 |
| 配置加载次数 | 尝试加载的 Webhook 配置次数。 |
| 配置更新次数 | 应用的 Webhook 配置更新次数。 |
| 配置错误 | 应用时获取的 Webhook 配置错误数量。 |
| 验证通过 | 通过的用户配置验证数量。 |
| 验证失败 | 失败的用户配置验证数量。 |
| Galley 运行时详情 |
| Pod 名称 | Istio pod 的名称。 |
| 处理的事件 | 已处理事件的数量。 |
| 计时器重置 | 计时器重置的次数。 |
| 成功事件处理 | Kubernetes 源成功处理事件的次数。 |
| OnChange 调用次数 | 由 Galley 策略调用的配置更改次数。 |
| 发布的快照 | 由 Galley 策略发布的快照数量。 |
Mixer *
| 参数 | 描述 |
|---|
| Mixer 配置 * |
| Pod 名称 | Istio pod 的名称。 |
| 已知适配器配置。 | 处理适配器信息配置时遇到的已知适配器数量。 |
| 已知实例配置。 | 处理实例配置时遇到的已知实例数量。 |
| 已知规则配置。 | 处理规则配置时遇到的已知规则数量。 |
| 已知模板配置。 | 处理模板配置时遇到的已知模板数量。 |
| 已知处理器配置。 | 处理处理器配置时遇到的已知处理器数量。 |
| Mixer 配置错误 * |
| Pod 名称 | Istio pod 的名称。 |
| 适配器配置错误 | 处理适配器信息配置时遇到的错误数量。 |
| 实例配置错误 | 处理实例配置时遇到的错误数量。 |
| 模板配置错误 | 处理模板配置时遇到的错误数量。 |
| 重用的处理器 | 被重用处理器的数量。 |
| 处理器验证错误 | 由于处理器验证返回错误而遇到的错误数量。 |
| Mixer 处理器 * |
| Pod 名称 | Istio pod 的名称。 |
| Mixer 处理器守护进程总数 | 可用的 Mixer 处理器守护进程总数。 |
| 创建失败的处理器 | 创建失败的处理器数量。 |
| 关闭失败的处理器 | 关闭失败的处理器数量。 |
| 新创建的处理器 | 新创建的处理器数量。 |
| 重用的处理器 | 被重用处理器的数量。 |
Pilot
| 参数 | 描述 |
|---|
| 入站监听器冲突详情 |
| Pod 名称 | Istio pod 的名称。 |
| 入站监听器冲突 | 发现的入站端口冲突数量。 |
| 出站监听器冲突详情 |
| Pod 名称 | Istio pod 的名称。 |
| 当前 TCP 上的 HTTP | 与当前通配符 TCP 监听器冲突的通配符 HTTP 监听器数量。 |
| HTTP 与 HTTPS 冲突 | 与知名 HTTPS 端口冲突的 HTTP 监听器数量。 |
| 当前 HTTP 上的 TCP | 与当前通配符 HTTP 监听器冲突的通配符 TCP 监听器数量。 |
| 当前 TCP 上的 TCP | 与当前 TCP 监听器冲突的 TCP 监听器数量。 |
| Pilot 服务详情 |
| Pod 名称 | Istio pod 的名称。 |
| 已知 Pilot 服务 | Pilot 已知的服务数量。 |
| 已知虚拟服务 | Pilot 已知的虚拟服务数量。 |
| 具有重复域的服务 | 具有重复域名的虚拟服务数量。 |
| 使用 XDS 连接的端点 | 使用 xDS 协议连接到 Pilot 的端点数量。 |
| PILOT XDS 推送 |
| 集群发现服务 | 集群发现服务的配置推送次数。 |
| 端点发现服务 | 端点发现服务的配置推送次数。 |
| 监听器发现服务 | 监听器发现服务的配置推送次数。 |
| 路由发现服务 | 路由发现服务的配置推送次数。 |
| 代理收敛延迟平均值 |
| 配置更改平均延迟 | 配置更改与代理接收所有所需配置之间的平均延迟(毫秒)。 |
| 集群和端点详情 |
| Pod 名称 | Istio pod 的名称。 |
| 重复 Envoy 集群 | 由具有相同主机名的服务条目导致的重复 envoy 集群数量。 |
| 无实例集群 | 无实例的集群数量。 |
| 未就绪端点 | 发现的未就绪状态端点数量。 |
Go 统计
| 参数 | 描述 |
|---|
| Go 内存详情 |
| Pod 名称 | Istio pod 的名称。 |
| 已分配内存 | 为 Istio pod 分配的内存量(MB)。 |
| 可用堆内存 | 可供使用的堆内存量(MB)。 |
| 使用中的堆内存 | 当前使用的堆内存量(MB)。 |
| 可用缓存 | 可供使用的缓存内存量(KB)。 |
| 使用中的缓存 | 当前使用的缓存内存量(KB)。 |
| Go 协程 | 正在运行的 Go 协程数量。 |
| Go 线程 | 创建的操作系统线程数量。 |
| 垃圾回收使用的内存 | 垃圾回收使用的内存量(MB) |
| 下次垃圾回收目标内存 | 下次垃圾回收目标的内存量(MB) |
| 上次垃圾回收时间 | 上次执行垃圾回收的日期和时间。 |
进程
| 参数 | 描述 |
|---|
| 进程详情 |
| Pod 名称 | Istio pod 的名称。 |
| 打开的文件描述符 | 使用中的打开文件描述符数量。 |
| 最大文件描述符 | 可用的最大文件描述符数量。 |
| 空闲文件描述符 | 未使用的文件描述符数量。 |
| 虚拟内存大小 | 可用的虚拟内存量(MB)。 |
| 进程开始时间 | 进程启动的日期和时间。 |
| 总运行天数 | 进程运行的总天数。 |
服务
| 参数 | 描述 |
|---|
| 传入流量详情 |
| 工作负载名称 | 工作负载的名称。 |
| 请求计数 | 两个时间间隔之间接收的请求数量。 |
| 失败请求 | 工作负载接收的失败请求数量。 |
| 平均请求大小 | 工作负载接收的请求平均大小(KB)。 |
| 平均响应大小 | 工作负载发送的响应平均大小(KB)。 |
| 平均请求时长 | 请求与响应之间的平均时长(秒)。 |