最近更新时间:2024.01.19 14:39:14
首次发布时间:2024.01.19 14:39:14
差异化策略用于管理资源在不同集群分发时的差异化配置,分布式云原生平台支持通过控制台白屏化配置封装的覆写语法,本文为您介绍通过控制台白屏化创建差异化策略的步骤和详细介绍。
原有的 JsonPatch 覆写语法只能整体的替换字段,覆写粒度较粗,无法满足精细化覆写场景,例如:JsonPatch 覆写语法替换镜像的仓库地址时只能整体替换,不能精细化替换镜像仓库地址中的 Registry、Repository、Tag、Digest 字段。
因此,为了弥补 JsonPatch 覆写语法的局限性,针对指定资源(包括:Image、Command、Args、Labels、Annotations 等)提供封装的覆写语法,满足指定字段统一覆盖的场景,资源覆盖面局限但覆写颗粒度更细。
配置项 | 说明 |
---|---|
名称 | 自定义差异化策略名称。 |
策略级别 | 差异化策略的类型,包括:命名空间级别、集群级别,根据实际情况选择即可。 |
命名空间 | 策略类型为命名空间级别时需要配置,选择差异化策略生效的命名空间。 |
规则组 | 差异化规则的组合,由目标集群和规则组成,单击 添加规则组 可添加多条规则组。 说明 如果需要通过 JsonPatch 语法配置的差异化规则,请使用 Yaml 创建 / 编辑。详细介绍参见:JsonPatch 覆写语法。 |
集群选择方式 | 规则组中选择目标集群的方式,提供:指定集群、集群标签、所有集群,可根据实际场景按需选择。 |
指定集群:当前规则组中的差异化规则对指定成员集群生效,按需勾选成员集群即可。 | |
集群标签:当前规则组中的差异化规则对集群标签匹配到的成员集群生效,提供 clusterSelector、clusterAffinity 两种方式,按需选用其中一种方式匹配成员集群既即可。
| |
所有集群:当前规则组中的差异化规则会在资源分发到的所有成员集群中生效。 | |
规则 | 针对资源提供精确化覆写规则配置,配置类型提供:容器集群、命令、参数、标签、注解。覆写规则相关详细介绍参见:封装的覆写语法。 |
容器镜像:针对镜像地址资源的覆写语法,用于覆写 Kubernetes 原生资源镜像仓库的各个字段。镜像仓库地址组成为:
说明 此覆写语法支持按所有镜像、指定镜像、自定义路径选择覆写镜像的范围,其中,自定义路径适用于 CRD 资源的镜像仓库地址覆写场景。单击 添加 可根据实际情况进行选择并添加规则。 | |
命令:针对命令资源提供的覆写语法,可追加、替换、删除命令资源。涉及到的覆写语法参数如下:
说明 可通过回车换行的方式,可添加多个命令,最多输入 200 字符。 | |
参数:针对参数资源提供的覆写语法,可追加参数列表资源。
说明 可通过回车换行的方式,可添加多个参数,最多输入 200 字符。 | |
标签:针对标签资源提供的覆写语法,可添加、替换、删除标签资源。涉及到的覆写语法参数如下:
| |
注解:针对标签资源提供的覆写语法,可添加一条 Annotation。涉及到的覆写语法参数如下:
|
完成创建差异化策略后,您可以在进行资源分发时,直接引用差异化策略,从而实现与预期相符的资源分发。详细介绍参见:资源分发实践。