首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用helm部署mysql发行版

使用helm部署mysql发行版
EN

Server Fault用户
提问于 2021-01-08 07:17:21
回答 1查看 905关注 0票数 1

你好,我是k8s和helm生态系统的新手。

我用EC2构建了自己的EC2集群(我可以使用EKS,但为了实践的目的),下一步是使用helm。

我正在尝试将mysql图表部署到我的k8s集群中。

我的env

代码语言:javascript
复制
# storage class manifest
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: local-storage
provisioner: kubernetes.io/no-provisioner
#volumeBindingMode: WaitForFirstConsumer
代码语言:javascript
复制
# values.yaml from mysql chart
## Persist data to a persistent volume
persistence:
  enabled: true
  ## database data Persistent Volume Storage Class
  ## If defined, storageClassName: <storageClass>
  ## If set to "-", storageClassName: "", which disables dynamic provisioning
  ## If undefined (the default) or set to null, no storageClassName spec is
  ##   set, choosing the default provisioner.  (gp2 on AWS, standard on
  ##   GKE, AWS & OpenStack)
  ##
  storageClass: "local-storage"  # <-- Changed this to use my own storage class
  accessMode: ReadWriteOnce
  size: 1Gi                      # <-- Changed this since only 2.5GB is available on each node
  annotations: {}
...

问题

pvc上有个错误。下面是相关日志。

代码语言:javascript
复制
ubuntu@nodec1:~/charts/stable/mysql$ kubectl describe pvc/mysqlserver
Name:          mysqlserver
Namespace:     default
StorageClass:  local-storage
Status:        Pending
Volume:
Labels:        app=mysqlserver
               app.kubernetes.io/managed-by=Helm
               chart=mysql-1.6.9
               heritage=Helm
               release=mysqlserver
Annotations:   meta.helm.sh/release-name: mysqlserver
               meta.helm.sh/release-namespace: default
Finalizers:    [kubernetes.io/pvc-protection]
Capacity:
Access Modes:
VolumeMode:    Filesystem
Mounted By:    mysqlserver-5d5cfcd5f8-922k4
Events:
  Type     Reason              Age               From                         Message
  ----     ------              ----              ----                         -------
  Warning  ProvisioningFailed  6s (x3 over 21s)  persistentvolume-controller  no volume plugin matched name: kubernetes.io/no-provisioner

我不知道为什么pvc不能使用我自己的kubernetes.io/no-provisioner存储库中的local-storage插件。有人能在这个问题上提供帮助吗?

EN

回答 1

Server Fault用户

回答已采纳

发布于 2021-01-08 11:35:24

此错误意味着由于您没有使用动态卷提供程序(这将自动为您创建卷),您需要自己创建此卷。

查看k8s文档以获得如何执行此操作的示例:https://kubernetes.io/docs/concepts/storage/volumes/#local

为了进行简单的测试,并检查这是否是问题所在,您可以应用以下yaml:

代码语言:javascript
复制
apiVersion: v1
kind: PersistentVolume
metadata:
  name: example-pv
spec:
  capacity:
    storage: 10Gi
  volumeMode: Filesystem
  accessModes:
  - ReadWriteOnce
  persistentVolumeReclaimPolicy: Delete
  storageClassName: local-storage
  local:
    path: /mnt/asd
  nodeAffinity:
    required:
      nodeSelectorTerms:
      - matchExpressions:
        - key: kubernetes.io/hostname
          operator: Exist
票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/1049040

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档