命名空间为Kubernetes集群提供虚拟的隔离作用。本文介绍如何新建命名空间、为命名空间启用自动注入、同步ASM实例与数据平面集群的自动注入标签、编辑全局命名空间的所属集群。
通过 服务网格 ASM控制台或者使用ASM KubeConfig定义的命名空间隶属于ASM实例本身,与该ASM管理的数据平面集群相对独立,因此ASM托管的控制平面的命名空间可以与数据平面集群的命名空间存在不同的情况。即在 服务网格 ASM控制台新增或者删除命名空间,并不会影响数据平面Kubernetes集群的命名空间。
登录 ASM控制台 ,在左侧导航栏,选择 服务网格 > 网格管理 。
在 网格管理 页面,单击目标实例名称,然后在左侧导航栏,选择 网格实例 > 全局命名空间 。
在 全局命名空间 页面,单击 新建 ,然后在 新建命名空间 面板,配置相关信息,然后单击 确定 。
配置项
说明
名称
设置命名空间的名称。长度为1~63个字符,只能包含数字、字母和短划线(-),且名称首尾必须是字母或数字。
标签
在 标签 右侧,单击 添加 ,输入变量名称和变量值,为命名空间新增一个标签。
命名空间可添加多个标签。标签用于标识该命名空间的特点,如标识该命名空间用于测试环境。
命名空间创建成功后,您可以在 全局命名空间 页面的 操作 列,进行以下操作:
编辑命名空间:单击 查看YAML ,在 编辑 对话框,修改相关信息,然后单击 确定 。
删除命名空间:单击 删除 ,在 确认 对话框,单击 确定 。
通过启动自动注入功能,可以在创建Pod的过程中,将Sidecar代理自动注入Proxy容器,以实现数据平面的网格化。
在 全局命名空间 页面的 自动注入 列,单击目标命名空间对应的 启用 Sidecar 网格代理自动注入 ,然后在 确认 对话框,单击 确定 。
启用Sidecar网格代理自动注入后,您需要重启Pod使配置生效。具体操作,请参见 重新部署工作负载 。
通过ASM控制台或者使用ASM KubeConfig定义的命名空间隶属于ASM实例本身,与该ASM管理的数据平面集群相互独立。您可以将ASM实例的命名空间及其自动注入标签同步至数据平面集群,也可以将数据平面集群的命名空间及其自动注入标签同步至ASM实例。
从数据平面集群同步自动注入标签至ASM实例后,将产生以下效果:
若命名空间存在于数据平面集群但不存在于ASM实例,该命名空间会被自动创建。
若命名空间在数据平面集群中有自动注入标签 istio-injection 或 istio.io/rev ,该标签值会被同步到ASM实例的同名命名空间中。
istio-injection
istio.io/rev
在 全局命名空间 页面,单击 从Kubernetes集群同步自动注入 ,在 从Kubernetes集群同步自动注入 对话框,选中作为同步来源的数据平面集群,然后单击 确定 。
在 全局命名空间 页面,您可以看到ASM实例的全局命名空间已经和数据平面集群进行了同步。
当修改ASM实例的命名空间时,ASM实例命名空间的自动注入标签会被自动同步到数据平面集群。仅当修改数据平面的命名空间造成ASM实例命名空间和数据平面命名空间不同步时,需要执行此操作进行同步。
从ASM实例同步自动注入标签至数据平面集群后,将产生以下效果:
若命名空间存在于ASM实例但不存在于数据平面集群,该命名空间会被自动创建。
若命名空间在ASM实例中有自动注入标签 istio-injection 或 istio.io/rev ,该标签值会被同步到数据平面集群的同名命名空间中。
ASM实例中的命名空间将向所有数据平面集群进行同步。
在 全局命名空间 页面,单击 同步自动注入至Kubernetes集群 。
您可以看到数据平面集群中的命名空间已和ASM实例进行了同步。关于如何查看数据平面集群的命名空间,请参见 管理命名空间与配额 。
如果ASM实例中添加了多个数据平面集群,您可以编辑ASM实例中全局命名空间的所属集群。当 从ASM实例同步自动注入标签至数据平面集群 时,ASM实例的命名空间及其自动注入标签将根据其所属集群选择性地向不同数据平面集群进行同步。
使用该功能,ASM实例版本需为1.17.2.37及以上。关于升级实例的具体操作,请参见 升级ASM实例 。您可以通过以下两种方式编辑全局命名空间的所属集群。
从数据平面集群同步自动注入标签至ASM实例 时,所有从数据平面集群同步的命名空间、其所属集群都被标识为作为同步来源的数据平面集群。
命名空间的所属集群将会在 从ASM实例同步自动注入标签至数据平面集群 时,起到以下效果:
当同步命名空间时,若数据平面集群不在该命名空间的所属集群中,则不会将命名空间及其自动注入标签向数据平面同步。
向ASM实例中添加多个集群。具体操作,请参见 添加集群到ASM实例 或 使用ASM托管Serverless网关实现多集群入口 。
在 全局命名空间 页面的 命名空间所属集群 列,单击目标命名空间对应的 编辑 ,然后在弹出的对话框,选中一个或多个数据平面集群,单击 确定 。