【问题标题】:Deployment of Ditto and MongoDB using kubectl fails because of unsupported version "extensions/v1beta1"由于不支持的版本“extensions/v1beta1”,使用 kubectl 部署 Ditto 和 MongoDB 失败
【发布时间】:2021-02-09 12:15:41
【问题描述】:

我尝试按照项目 README.txt 中的说明使用 kubernetes/minikube 启动 Ditto。使用命令部署 mongoDB 和稍后的 Ditto 服务时

kubectl apply -f deployment/kubernetes/mongodb/mongodb.yaml

我收到以下错误消息:

error: unable to recognize "deployment/kubernetes/mongodb/mongodb.yaml": no matches for kind "Deployment" in version "extensions/v1beta1"

我认为我必须将版本更改为“api/v1”,但这样做会导致下一个错误:

error: error validating "deployment/kubernetes/mongodb/mongodb.yaml": error validating data: ValidationError(Deployment.spec): missing required field "selector" in io.k8s.api.apps.v1.DeploymentSpec; if you choose to ignore these errors, turn validation off with --validate=false

我使用以下版本:

同上:1.5 版

minikube 版本:v1.14.1

kubectl 客户端版本:Major:"1", Minor:"19", GitVersion:"v1.19.2

kubectl 服务器版本:Major:"1", Minor:"19", GitVersion:"v1.19.2"

有谁知道我该如何解决这个问题。我不知道必须添加哪些字段和值才能使 .yaml 文件按预期工作。

非常感谢您。

【问题讨论】:

标签: kubectl minikube eclipse-ditto


【解决方案1】:

您可以在此处查看此 PR 中的文件:https://github.com/eclipse/ditto/tree/master/deployment/kubernetes/deploymentFiles

部署文件已更新,现在使用 apiVersion:apps/v1。

【讨论】:

  • 请不要“仅链接”答案。在这里分享你的想法。
  • 请编辑您的答案,因为您提供的链接不再有效。
【解决方案2】:

这是一个社区 Wiki 答案,因此请随时对其进行编辑并添加您认为重要的任何其他详细信息。

我收到以下错误消息:

error: unable to recognize "deployment/kubernetes/mongodb/mongodb.yaml": no matches for kind

“扩展/v1beta1”版本中的“部署”

我想我必须将版本更改为“api/v1”,但是这样做 导致下一个错误...

您应该将Deployment 定义中的apiVersion 更改为apps/v1,而不是api/v1。它应该可以正常工作,没有任何错误。而extensions/v1beta1 不起作用,因为它是deprecated and is no longer served in k8s v1.16

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-07-03
    • 2020-06-30
    • 1970-01-01
    • 2020-07-12
    • 1970-01-01
    • 1970-01-01
    • 2016-07-02
    相关资源
    最近更新 更多