kubernetes正在创建有状态集,pods未启动
我创建了一个状态集,但在运行kubernetes正在创建有状态集,pods未启动,kubernetes,Kubernetes,我创建了一个状态集,但在运行kubectl apply-f wordpress database.yaml和kubectl get statefulset之后,我发现pod总是处于零状态(为什么?) YAML(请不要考虑对齐) 首先要检查您的execute发生了什么: 您可能没有提供存储,没有创建持久卷。检查是否已配置或将其设置为默认值 您的volumeClaimTemplates部分看起来应该类似: volumeClaimTemplates: - metadata: nam
kubectl apply-f wordpress database.yaml
和kubectl get statefulset
之后,我发现pod总是处于零状态(为什么?)
<1> YAML(请不要考虑对齐)
首先要检查您的execute发生了什么: 您可能没有提供存储,没有创建持久卷。检查是否已配置或将其设置为默认值 您的volumeClaimTemplates部分看起来应该类似:
volumeClaimTemplates:
- metadata:
name: example
spec:
accessModes: [ "ReadWriteOnce" ]
storageClassName: "your-storage-class"
resources:
requests:
storage: 1Gi
有用的文档:。请添加所有行,包括
状态重新启动时间
列。还运行kubectl Descripte pod
并添加相关的事件区域。我强烈怀疑您的pod正在等待设置持久卷声明,因为它使用的是volumeClaimTemplate:
,已建立的持久卷+声明。如果集群中没有配置,它将无限期地阻塞
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: wordpress-database
spec:
selector:
matchLabels:
app: blog
serviceName: "blog"
replicas: 1
template:
metadata:
labels:
app: blog
spec:
containers:
- name: database
image: mysql:5.7
ports:
- containerPort: 3306
env:
- name: MYSQL_ROOT_PASSWORD
value: rootPassword
- name: MYSQL_DATABASE
value: database
- name: MYSQL_USER
value: user
- name: MYSQL_PASSWORD
value: password
volumeMounts:
- name: data
mountPath: /var/lib/mysql
- name: blog
image: wordpress:latest
ports:
- containerPort: 80
env:
- name: WORDPRESS_DB_HOST
value: 127.0.0.1:3306
- name: WORDPRESS_DB_NAME
value: database
- name: WORDPRESS_DB_USER
value: user
- name: WORDPRESS_DB_PASSWORD
value: password
volumeClaimTemplates:
- metadata:
name: data
spec:
resources:
requests:
storage: 1Gi
$ kubectl describe statefulset wordpress-database
volumeClaimTemplates:
- metadata:
name: example
spec:
accessModes: [ "ReadWriteOnce" ]
storageClassName: "your-storage-class"
resources:
requests:
storage: 1Gi