2.6. Operator 如何决定用于部署镜像的配置
在 ActiveMQArtemis CR 中,您可以使用以下配置来部署容器镜像:
-
在
spec.version属性中指定版本号,并允许 Operator 选择要为该版本号部署代理和 init 容器镜像。 -
指定特定代理和 init 容器镜像的 registry URL,您希望 Operator 在 spec.deploymentPlan.
image 和属性中部署。spec.deploymentPlan.initImage -
将
spec.deploymentPlan.image属性的值设置为占位符,这意味着 Operator 会选择 Operator 版本已知的最新代理和 init 容器镜像。
如果不使用任何这些配置来部署容器镜像,Operator 会选择最新的代理和 init 容器镜像,它们已知到 Operator 版本。
保存 CR 后,Operator 会执行以下验证来确定要使用的配置。
Operator 检查 CR 是否包含
spec.version属性。如果 CR 不包含
spec.version属性,Operator 会检查 CR 是否包含spec.deploymentPlan.image和spec.deployment.Plan.initImage属性。-
如果 CR 包含
spec.deploymentPlan.image和spec.deployment.Plan.initImage属性,Operator 将部署由其 registry URL 识别的容器镜像。 -
如果 CR 不包含
spec.deploymentPlan.image和spec.deployment.Plan.initImage属性,Operator 会选择要部署的容器镜像。如需更多信息,请参阅 第 2.7 节 “Operator 如何选择容器镜像”。
-
如果 CR 包含
如果 CR 包含
spec.version属性,Operator 会验证指定的版本号是否在 Operator 支持的有效版本范围内。-
如果
spec.version属性的值无效,Operator 将停止部署。 如果
spec.version属性的值有效,Operator 会检查 CR 是否包含spec.deploymentPlan.image和spec.deployment.Plan.initImage属性。-
如果 CR 包含
spec.deploymentPlan.image和spec.deployment.Plan.initImage属性,Operator 将部署由其 registry URL 识别的容器镜像。 -
如果 CR 不包含
spec.deploymentPlan.image和spec.deployment.Plan.initImage属性,Operator 会选择要部署的容器镜像。如需更多信息,请参阅 第 2.7 节 “Operator 如何选择容器镜像”。
-
如果 CR 包含
-
如果
如果 CR 只包含 spec.deploymentPlan.image 和 spec.deployment.Plan.initImage 属性之一,Operator 将使用 number 属性为不在 CR 中的属性选择镜像,或者在 CR 中没有为该属性选择最新的已知镜像。
spec.version
红帽建议不要指定没有 spec.deployment.Plan.initImage 属性的 spec.deploymentPlan.image 属性,以防止部署不匹配的代理版本和 init 容器镜像。