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 容器镜像。