kubernetes StatefulSet 有状态服务

- 日理万妓 2022-02-13 01:47 310阅读 0赞

官方文档: https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/





















服务类型 服务 应用场景
无状态服务 deployment web服务
有状态服务 StatefulSet mysql、redis等

创建StatefulSet

  1. apiVersion: v1
  2. kind: Service
  3. metadata:
  4. name: nginx
  5. labels:
  6. app: nginx
  7. spec:
  8. ports:
  9. - port: 80
  10. name: web
  11. clusterIP: None
  12. selector:
  13. app: nginx
  14. ---
  15. apiVersion: apps/v1
  16. kind: StatefulSet
  17. metadata:
  18. name: web
  19. spec:
  20. serviceName: "nginx"
  21. replicas: 2
  22. selector:
  23. matchLabels:
  24. app: nginx
  25. template:
  26. metadata:
  27. labels:
  28. app: nginx
  29. spec:
  30. containers:
  31. - name: nginx
  32. image: k8s.gcr.io/nginx-slim:0.8
  33. ports:
  34. - containerPort: 80
  35. name: web
  36. volumeMounts:
  37. - name: www
  38. mountPath: /usr/share/nginx/html
  39. volumeClaimTemplates:
  40. - metadata:
  41. name: www
  42. spec:
  43. accessModes: [ "ReadWriteOnce" ]
  44. resources:
  45. requests:
  46. storage: 1Gi

StatefulSet错误排查

  1. Events:
  2. Type Reason Age From Message
  3. ---- ------ ---- ---- -------
  4. Warning FailedScheduling 10s (x4 over 2m27s) default-scheduler pod has unbound immediate PersistentVolumeClaims
  5. #查看pv的名字
  6. kubectl get pv,pvc,pod
  7. #查看具体错误
  8. kubectl describe persistentvolumeclaim/www-web-0
  9. Events:
  10. Type Reason Age From Message
  11. ---- ------ ---- ---- -------
  12. Normal FailedBinding 49s (x263 over 65m) persistentvolume-controller no persistent volumes available for this claim and no storage class is set

StatefulSet如何管理pods
删除StatefulSet
扩缩容StatefulSet
升级StatefulSet的pod

发表评论

表情:
评论列表 (有 0 条评论,310人围观)

还没有评论,来说两句吧...

相关阅读