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