(Kubernetes+;Docker)Skafold不断终止我的部署文件:错误:无法在20毫秒内稳定下来:超出了上下文截止日期
我正在尝试使用Skaffold在本地机器上部署一个微服务系统 ingress srv.yaml(Kubernetes+;Docker)Skafold不断终止我的部署文件:错误:无法在20毫秒内稳定下来:超出了上下文截止日期,docker,kubernetes,kubernetes-ingress,nginx-ingress,skaffold,Docker,Kubernetes,Kubernetes Ingress,Nginx Ingress,Skaffold,我正在尝试使用Skaffold在本地机器上部署一个微服务系统 ingress srv.yaml apiVersion:extensions/v1beta1 种类:入口 元数据: 名称:入口服务 注释: kubernetes.io/ingres.class:nginx nginx.ingres.kubernetes.io/use-regex:'true' 规格: 规则: -主持人:ticketing.dot http: 路径: -路径:/api/users/?(*) 后端: 服务名称:auth s
apiVersion:extensions/v1beta1
种类:入口
元数据:
名称:入口服务
注释:
kubernetes.io/ingres.class:nginx
nginx.ingres.kubernetes.io/use-regex:'true'
规格:
规则:
-主持人:ticketing.dot
http:
路径:
-路径:/api/users/?(*)
后端:
服务名称:auth srv
服务端口:3000
授权部门yaml
apiVersion:apps/v1
种类:部署
元数据:
姓名:auth depl
规格:
副本:1份
选择器:
火柴标签:
app:auth
模板:
元数据:
标签:
app:auth
规格:
容器:
-姓名:auth
图片:***MYDOCKERID****/auth
环境:
-姓名:JWT_KEY
价值来源:
secretKeyRef:
姓名:jwt机密
钥匙:JWT_钥匙
---
版本:v1
种类:服务
元数据:
名称:auth srv
规格:
选择器:
app:auth
端口:
-姓名:auth
协议:TCP
港口:3000
目标港:3000
授权mongo部门yaml:
C:\Development-T410\Micro Services - JAN>kubectl get pods
NAME READY STATUS RESTARTS AGE
auth-depl-645bbf7b9d-llp2q 0/1 CreateContainerConfigError 0 115s
auth-depl-c6c765d7c-7wvcg 0/1 CreateContainerConfigError 0 28m
auth-mongo-depl-6b594c4847-4kzzt 1/1 Running 0 115s
client-depl-5888f95b59-vznh6 1/1 Running 0 114s
nats-depl-7dfccdf5-874vm 1/1 Running 0 114s
orders-depl-74f4d48559-cbwlp 0/1 CreateContainerConfigError 0 114s
orders-depl-78fc845b4-9tfml 0/1 CreateContainerConfigError 0 28m
orders-mongo-depl-688676d675-lrvhp 1/1 Running 0 113s
tickets-depl-7cc7ddbbff-z9pvc 0/1 CreateContainerConfigError 0 113s
tickets-depl-8574fc8f9b-tm6p4 0/1 CreateContainerConfigError 0 28m
tickets-mongo-depl-b95f45947-hf6wq 1/1 Running 0 113s
C:\Development-T410\Micro Services>kubectl logs auth-depl-c6c765d7c-7wvcg
Error from server (BadRequest): container "auth" in pod "auth-depl-c6c765d7c-7wvcg" is waiting to start: CreateContainerConfigError
apiVersion:apps/v1
种类:部署
元数据:
姓名:auth mongo depl
规格:
副本:1份
选择器:
火柴标签:
应用程序:auth mongo
模板:
元数据:
标签:
应用程序:auth mongo
规格:
容器:
-姓名:auth mongo
图片:mongo
---
版本:v1
种类:服务
元数据:
名称:auth mongo srv
规格:
选择器:
应用程序:auth mongo
端口:
-姓名:db
协议:TCP
港口:27017
目标港:27017
我遵循了手册中的指导原则:
https://kubernetes.github.io/ingress-nginx/deploy/
并点击:
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v0.34.0/deploy/static/provider/cloud/deploy.yaml
但是,Skaffold继续终止部署:
[34m要监视的列表文件…[0m]
[34m-*****MYDOCKERID****/auth
[0m[340m生成标签…[0m
[34m-****MYDOCKERID****/auth->[0m****MYDOCKERID****/auth:683e8db
[34M检查缓存…[0m
[34m-*****MYDOCKERID***/auth:[0m[32M本地查找[0m]
[34MTag用于部署:[0m
[34m-*****MYDOCKERID****/auth->[0m****MYDOCKERID****/auth:3C4B66FF693320B5FAC3FDE91906768F8B54B968813B226822D057D1DD3A995
[34M开始部署…[0m
-deployment.apps/auth-depl已创建
-已创建服务/身份验证srv
-deployment.apps/auth-mongo-depl已创建
-已创建服务/验证mongo srv
-已创建ingress.extensions/ingress-service
[34M等待部署以稳定…[0m
-部署/验证部门:
-部署/验证mongo部门:
-部署/auth depl:正在等待卷展栏完成:1个更新副本中的0个可用。。。
-部署/验证mongo depl:正在等待卷展完成:1个更新副本中的0个可用。。。
-部署/验证mongo depl已就绪。[1/2个部署仍处于挂起状态]
-部署/auth depl失败。错误:无法在2M0内稳定:超出了上下文截止日期。
[34米倾斜…[0米
-deployment.apps“auth depl”已删除
-删除服务“auth srv”
-deployment.apps“auth mongo depl”已删除
-删除服务“auth mongo srv”
-ingress.extensions“入口服务”已删除
[31M退出开发模式,因为第一次部署失败:1/2个部署失败[0m]
我们如何解决这个恼人的问题
编辑以色列时间上午9:44:
C:\Development-T410\Micro Services - JAN>kubectl get pods
NAME READY STATUS RESTARTS AGE
auth-depl-645bbf7b9d-llp2q 0/1 CreateContainerConfigError 0 115s
auth-depl-c6c765d7c-7wvcg 0/1 CreateContainerConfigError 0 28m
auth-mongo-depl-6b594c4847-4kzzt 1/1 Running 0 115s
client-depl-5888f95b59-vznh6 1/1 Running 0 114s
nats-depl-7dfccdf5-874vm 1/1 Running 0 114s
orders-depl-74f4d48559-cbwlp 0/1 CreateContainerConfigError 0 114s
orders-depl-78fc845b4-9tfml 0/1 CreateContainerConfigError 0 28m
orders-mongo-depl-688676d675-lrvhp 1/1 Running 0 113s
tickets-depl-7cc7ddbbff-z9pvc 0/1 CreateContainerConfigError 0 113s
tickets-depl-8574fc8f9b-tm6p4 0/1 CreateContainerConfigError 0 28m
tickets-mongo-depl-b95f45947-hf6wq 1/1 Running 0 113s
C:\Development-T410\Micro Services>kubectl logs auth-depl-c6c765d7c-7wvcg
Error from server (BadRequest): container "auth" in pod "auth-depl-c6c765d7c-7wvcg" is waiting to start: CreateContainerConfigError
看起来您的
auth depl
部署失败。可能是容器崩溃或出错。要进行调试,您可以查看pod日志
$kubectl日志auth-depl-xxxxxxxxx-xxxxx
确保使用--cleanup=false
选项运行Skafold,以便进行调试。例如
$skaffold dev--cleanup=false
更新:
从日志来看,这似乎是Kubernetes机密及其定义方式的问题,可能是格式或YAML格式。此答案提供了一些有关问题的详细信息:您应该在部署文件中添加mongo映像的环境变量
env:
- name: MONGO_INITDB_ROOT_USERNAME
value: root
- name: MONGO_INITDB_ROOT_PASSWORD
value: "rootuser"
谢谢,我已经在上面的答案中添加了日志(在编辑部分),但这并没有多大帮助。看起来这是一个关于你的秘密及其定义的问题。你是对的,谢谢,但现在我有一个更大的问题,我要问另一个问题。谢谢@ricow,
kubectl描述pod auth-depl-645bbf7b9d-llp2q
的节目是什么?我最感兴趣的是事件部分。