0
点赞
收藏
分享

微信扫一扫

k8s创建mysql故障案例No resources found in default namespace.

小飞侠熙熙 2022-07-13 阅读 83

描述:

我使用StatefulSet创建mysql时,发现找不到pod,具体过程如下:

[root@node1 ~]# kubectl apply -f mysql.yaml 
service/mysql57-svc created
statefulset.apps/mysql57-pod created
[root@node1 ~]# kubectl get pod
No resources found in default namespace.

排查过程:

发现有一个名称太长了,超过15位了

#1查看statefulset
[root@node1 ~]# kubectl get statefulset
NAME READY AGE
mysql57-pod 0/1 24s
#2查看详情
[root@node1 ~]# kubectl describe statefulset mysql57-pod
Name: mysql57-pod
Namespace: default
CreationTimestamp: Sun, 17 Apr 2022 16:10:36 +0800
Selector: app=my-sql57
Labels: <none>
Annotations: <none>
Replicas: 1 desired | 0 total
Update Strategy: RollingUpdate
Partition: 0
Pods Status: 0 Running / 0 Waiting / 0 Succeeded / 0 Failed
Pod Template:
Labels: app=my-sql57
Containers:
mysql57-container:
Image: registry.cn-beijing.aliyuncs.com/qingfeng666/mysql:5.7
Port: 3306/TCP
Host Port: 0/TCP
Environment:
MYSQL_ROOT_PASSWORD: password
Mounts:
/var/lib/mysql from host-path (rw)
Volumes:
host-path:
Type: HostPath (bare host directory volume)
Path: /tmp/mysql
HostPathType: DirectoryOrCreate
Volume Claims: <none>
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning FailedCreate 3m48s (x17 over 9m16s) statefulset-controller create Pod mysql57-pod-0 in StatefulSet mysql57-pod failed error: Pod "mysql57-pod-0" is invalid: spec.containers[0].ports[0].name: Invalid value: "mysql57-container-portname": must be no more than 15

解决:

把spec.tempalet.spec.containers.port.name长名字改掉

apiVersion: apps/v1
kind: StatefulSet
metadata:
name: mysql57-pod
spec:
selector:
matchLabels:
app: my-sql57
serviceName: mysql57-svc
replicas: 1
template:
metadata:
labels:
app: my-sql57
spec:
terminationGracePeriodSeconds: 10
containers:
- name: mysql57-container
image: registry.cn-beijing.aliyuncs.com/qingfeng666/mysql:5.7
imagePullPolicy: IfNotPresent
ports:
- containerPort: 3306sql57-portname

再次运行

[root@node1 ~]# kubectl apply -f mysql.yaml 
service/mysql57-svc created
statefulset.apps/mysql57-pod created
[root@node1 ~]# kubectl get pod
NAME READY STATUS RESTARTS AGE
mysql57-pod-0 1/1 Running 0

 



举报

相关推荐

0 条评论