本指南概述了运算符生命周期管理器 (OLM) 中的多租户和运算符同位部署。
运算符生命周期管理器 (OLM) 处理安装在同一命名空间中的 OLM 管理的运算符,这意味着它们的 Subscription
资源与相关运算符同位部署在同一命名空间中。即使它们实际上并不相关,OLM 在任何一个运算符更新时也会考虑它们的状态,例如它们的版本和更新策略。
此默认行为体现在以下两种方式中:
挂起的更新的 InstallPlan
资源包括同一命名空间中所有其他运算符的 ClusterServiceVersion
(CSV) 资源。
同一命名空间中的所有运算符共享相同的更新策略。例如,如果一个运算符设置为手动更新,则所有其他运算符的更新策略也设置为手动。
这些情况可能导致以下问题:
难以推断运算符更新的安装计划,因为其中定义的资源比仅更新的运算符多得多。
不可能使命名空间中的一些运算符自动更新,而其他运算符手动更新,这是集群管理员的常见需求。
这些问题通常是因为在使用 Red Hat OpenShift Service on AWS 网络控制台安装运算符时,默认行为会将支持 **所有命名空间** 安装模式的运算符安装到默认的 openshift-operators
全局命名空间中。
作为具有 dedicated-admin
角色的管理员,您可以使用以下工作流程手动绕过此默认行为:
为运算符的安装创建一个项目。
创建一个自定义的 *全局运算符组*,这是一个监视所有命名空间的运算符组。通过将此运算符组与您刚刚创建的命名空间关联,它使安装命名空间成为全局命名空间,从而使其中安装的运算符在所有命名空间中可用。
在安装命名空间中安装所需的运算符。
如果运算符有依赖项,则这些依赖项会自动安装在预先创建的命名空间中。因此,依赖运算符具有相同的更新策略和共享安装计划是有效的。有关详细步骤,请参见“在自定义命名空间中安装全局运算符”。