展示所有sidecar(istio-proxy容器)信息,提供数据面sidecar的统一监控与管理能力。 Sidecar 管理提供的能力如下:
- Sidecar统一管理:登陆终端,查看资源监控、日志、监控,调整资源配置等
- 设置分组下发策略:支持控制平面对某一服务仅下发某些关联服务的xDS配置,避免Sidecar加载大量的无关规则,从而提升xDS配置的下发效率,并降低Sidecar的CPU消耗。
Sidecar管理列表
操作步骤如下所示:
- 进入 [服务网格/Sidecar管理]页面,列表从SideCar所属服务的维度聚合展示
- 所属服务名称:对应的网格服务名称。
- Sidecar状态:健康、不健康。
- Pod状态:运行中、成功、失败、阻塞、停止中、未知
- 部署方式:容器部署、传统主机部署。
- Sidecar类型:envoy。
- 点击“所属服务名称”或者性能监控图标进入sidecar详情页面。
Sidecar详情
- 切换“Sidecar资源配置”页签,可以看到sidecar容器当前的资源配置,若有必要可以按需调整,需注意调整后会触发服务滚动发布;
- 【日常不需要关注】切换“xDS配置”页签,可查看当前容器加载的xDS配置,点击“同步Pilot配置”,弹框对比xDS最新的版本信息是否和Pilot版本一致,来判断下发的信息准确性,点击“确定同步”可以触发一次手动同步;
- 切换“监控”页签,可查看资源监控信息,包括CPU、内存、网络、容器文件系统;
- 切换“日志”页签,查看istio-proxy的实时日志。
分组下发管理
支持控制平面对某一服务仅下发某些关联服务的xDS配置,避免Sidecar加载大量的无关规则,从而提升xDS配置的下发效率,并降低Sidecar的CPU消耗。
1、配置生效规则
如果没有任何配置,则意味着对本项目下所有服务,下发全局所有已经接入网格的服务的xDS配置。
如果有配置,则按如下规则生效:
- 服务单独创建了配置,就以自有配置为准,给该服务sidecar下发本配置内指定的服务的xDS配置;
- 若服务未单独创建配置,但是存在项目维度的配置(下发对象=所有服务),则以项目配置为准;
- 若服务未单独创建配置、也没有创建项目维度配置,则以全局维度为准(全局维度默认下发网格内所有服务的xDS配置给当前服务)。
2、管理配置
每个配置说明了控制面对「下发对象」仅下发「分组配置」中指定服务的xDS配置及系统配置。
操作步骤如下所示:
进入 [服务治理/服务网格/Sidecar管理]页面,点击“分组下发管理”;
点击“添加配置”,弹框分三部分:配置名称、下发对象、分组配置
- 配置名称规则:可由 3~50 位小写字母、数字、中划线组成,以字母开头,字母或者数字结尾。
- 下发对象:支持选择项目或服务维度
- 选择项目后,展示所有服务。项目维度的配置,一个项目只能创建一个,再次创建时,项目选项未勾选不可点击。
- 选择服务后,可单选某一服务。某个服务只能创建一条配置,需要唯一性校验。
- 分组配置:(对应Sidecar资源中egress:hosts,)支持添加多条,每条填写命名空间、服务名称。
- 默认有三条记录,不支持删除: kube-system,所有服务;istio-system,所有服务,此为网格部署所在的命名空间;xxx,所有服务,xxx此为当前进入的命名空间
- 可添加网格内其它命名空间、服务,可添加多条。每条中,命名空间仅支持输入一个值,服务可支持输入多个,用英文逗号隔开,不填写时默认为此命名空间中已接入网格的所有服务
点击“确定”,弹框消失,提示添加配置成功。
列表展示配置名称、下发对象、分组配置、更新时间、操作(编辑、删除)。
说明
若当前项目空间,没有全局内跨项目访问的情况时,应当添加如下一条配置
但若存在跨项目访问的情况时,则需要评估是否应当在分组配置中添加其他项目