1.错误日志
create Pod mysql-master-v1-0 in StatefulSet mysql-master-v1 failed error: pods "mysql-master-v1-0" is forbidden: exceeded quota: demo-project,
requested: requests.cpu=500m,requests.memory=2000Mi, used: requests.cpu=0,requests.memory=0, limited: requests.cpu=10m,requests.memory=1Gi
2.观察关键日志
通过日志看出:需要的StatefulSet mysql-master-v1资源超过了所在namespace的资源上限
requested: requests.cpu=500m,requests.memory=2000Mi, used:
requests.cpu=0,requests.memory=0, limited: requests.cpu=10m,requests.memory=1Gi
3.查看配置文件
3.1关键代码片段
limits:
cpu: 10m
memory: 1000Mi
requests:
cpu: 10m
memory: 1000Mi
3.2 shell重点
shell 注意:requests的cpu和memory的值不能超过requests的的cpu和memory的值
3.3修改后的完整配置文件代码如下:
kind: Pod
apiVersion: v1
metadata:
name: mysql-master-v1-0
generateName: mysql-master-v1-
namespace: demo-project
labels:
app: mysql-master
controller-revision-hash: mysql-master-v1-54fb44d7cc
statefulset.kubernetes.io/pod-name: mysql-master-v1-0
version: v1
annotations:
cni.projectcalico.org/podIP: 10.233.81.241/32
cni.projectcalico.org/podIPs: 10.233.81.241/32
kubesphere.io/containerSecrets: ''
logging.kubesphere.io/logsidecar-config: '{}'
spec:
volumes:
- name: volume-jc02z4
configMap:
name: mysql-master-cnf
items:
- key: my.cnf
path: my.cnf
defaultMode: 420
- name: volume-anhcvf
persistentVolumeClaim:
claimName: mysql-master-pvc
- name: default-token-6kxfm
secret:
secretName: default-token-6kxfm
defaultMode: 420
containers:
- name: mysql-master
image: 'mysql:5.7'
ports:
- name: tcp-3306
containerPort: 3306
protocol: TCP
- name: tcp-33060
containerPort: 33060
protocol: TCP
env:
- name: MYSQL_ROOT_PASSWORD
valueFrom:
secretKeyRef:
name: mysql-secret
key: MYSQL_ROOT_PASSWORD
resources:
limits:
cpu: 10m
memory: 1000Mi
requests:
cpu: 10m
memory: 1000Mi
volumeMounts:
- name: volume-jc02z4
readOnly: true
mountPath: /etc/mysql
- name: volume-anhcvf
mountPath: /var/lib/mysql
- name: default-token-6kxfm
readOnly: true
mountPath: /var/run/secrets/kubernetes.io/serviceaccount
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
imagePullPolicy: IfNotPresent
restartPolicy: Always
terminationGracePeriodSeconds: 30
dnsPolicy: ClusterFirst
serviceAccountName: default
serviceAccount: default
nodeName: k8s-node1
securityContext: {}
hostname: mysql-master-v1-0
subdomain: mysql-master
affinity: {}
schedulerName: default-scheduler
tolerations:
- key: node.kubernetes.io/not-ready
operator: Exists
effect: NoExecute
tolerationSeconds: 300
- key: node.kubernetes.io/unreachable
operator: Exists
effect: NoExecute
tolerationSeconds: 300
priority: 0
enableServiceLinks: true
注意:本文归作者所有,未经作者允许,不得转载