【问题标题】:Openshift: Error creating container in migration to Onlive V3Openshift:在迁移到 Onlive V3 时创建容器时出错
【发布时间】:2017-10-10 01:12:14
【问题描述】:

我正在尝试将我的应用从 Openshift Online V2 迁移到 Openshift Online V3,但在创建容器时遇到了问题。

我的应用程序是在 V2 中创建的 Java 应用程序,具有两个墨盒和两个齿轮:Wildfly 和 PostgreSQL。我已按照说明将它们迁移到 V3。我创建 PostgreSLQ 部署没有问题,并且我有 1 个 POD 正在运行。

关于 Wildfly 部署,似乎是对的,我已将其链接到我的 github 存储库,构建它,并添加了持久存储(PostgreSQL 部署)。当我尝试将 Wildfly 扩展到 1 个 POD 时,就会出现问题。在“事件”选项卡中,我可以找到:

1:13:36 PM 警告挂载失败(结合类似事件): 无法附加卷“pvc-6647a164-a308-11e7-9eb0-122631632f42” 节点“ip-172-31-50-178.ec2.internal”:附加 EBS 卷时出错 “vol-0fd5df0548360269a”到实例“i-05aae55ef4783d5a7”: VolumeInUse:vol-0fd5df0548360269a 已附加到实例 状态码:400,请求 ID:acd5900f-bd0f-4776-aa76-a33506f25eaf。 该卷当前附加到实例“i-0905fd62b34870511”60 过去 2 小时内的次数

下午 1:10:09 警告 挂载失败 无法为 pod 挂载卷 “dentool-5-7s6nk_dentool(b490db8b-accf-11e7-99b4-1250f17a13c8)”: 等待卷为 pod 附加/挂载的超时过期 “dentool”/“dentool-5-7s6nk”。未连接/卸载列表 volumes=[volume-ts28r] 过去 2 小时 17 次

1:10:09 PM 警告 Failed sync 上次同步 pod 17 次时出错 2小时

POD 未创建,因此我无法运行我的应用程序。 请注意,这是我第一次使用 Openshift V3,所以也许我没有提供最好的信息。请让我知道还有什么其他信息可以提供帮助。

【问题讨论】:

    标签: kubernetes openshift


    【解决方案1】:

    EBS 卷类型在 OpenShift 集群中一次只能安装在一个节点上。当您将 Java 和 MySQL 作为单独的应用程序安装在不同的节点上时,因此您无法同时针对两者安装持久卷。该错误正在警告您。

    您可以同时针对 Java 和 MySQL 使用单个 EBS 卷的唯一方法是让它们在同一个 pod 的不同容器中运行。您还需要确保将部署策略设置为重新创建而不是滚动,因为滚动会导致在旧实例仍然存在时创建新实例,并且会出现同样的问题,因为新实例和旧实例可能位于不同的节点上。

    简而言之,OpenShift Online Starter 没有为您提供足够的持久卷来完成您想做的事情。

    【讨论】:

    • 谢谢格雷厄姆,这确实是我的问题。事实上,我在两个部署中都不需要持久存储,因此将其从 Wildfly 部署中移除,问题就解决了。
    猜你喜欢
    • 1970-01-01
    • 2017-05-15
    • 2018-02-11
    • 1970-01-01
    • 2017-10-04
    • 2016-05-12
    • 1970-01-01
    • 2021-11-05
    • 2020-10-24
    相关资源
    最近更新 更多