先上命令记录:
# 创建一个名称为nginx-1.16的deployment,没有任何报错,没有触发校验规则
$ kubectl create deployment nginx-1.16 --replicas=3 --image=nginx:1.16 -n load-balance
deployment.apps/nginx-1.16 created# 接着创建Service,可以发现在为这个nginx-1.16的deployment创建service的时候,被正则校验出nginx-1.16因含有小数点而创建失败
$ kubectl expose deployment nginx-1.16 --port=80 --target-port=8080 --type=NodePort -n load-balance
The Service "nginx-1.16" is invalid: metadata.name: Invalid value: "nginx-1.16": a DNS-1035 label must consist of lower case alphanumeric characters or '-', start with an alphabetic character, and end with an alphanumeric character (e.g. 'my-name', or 'abc-123', regex used for validation i
在Kubernetes中,使用kubectl创建名称为nginx-1.16的Deployment时未遇到问题,但尝试为该Deployment创建Service时因名称包含小数点导致校验失败。解决方案是手动指定服务名为不含特殊字符的名称。这个问题暴露了kubectl在create和expose操作中对Deployment名称校验的一致性问题。
订阅专栏 解锁全文

2322

被折叠的 条评论
为什么被折叠?



