首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Kubernetes启用Kubernetes功能门

使用Kubernetes启用Kubernetes功能门
EN

Stack Overflow用户
提问于 2018-11-28 17:06:13
回答 1查看 495关注 0票数 0

我必须为客户端部署一个带有tectonic的kubernetes集群,并且我需要启用一个kuberenetes特性网关,这是可能的吗?

所需特性gate:https://kubernetes.io/blog/2018/04/13/local-persistent-volumes-beta/

需要:https://www.arangodb.com/2018/03/arangodb-operator-kubernetes-stateful-cluster-deployments/

Kubernetes版本: 1.9.6 (由1.9.6-structonic.1提供)

EN

回答 1

Stack Overflow用户

发布于 2018-11-28 17:16:51

kubernetes 1.10以后,kubernetes集群使用local-storage不需要开启feature gate。

您可以像使用任何其他存储类一样直接使用local-storage

请看我下面的答案,如何在kubernetes中设置local-storage PV,PVC。

编辑:当你在kubernetes 1.9上时,你可以这样做:

在使用kubeadm init --config=config.yaml启动到apiservercontroller-managerscheduler的集群时,您需要提供功能门。请参考以下配置:

代码语言:javascript
复制
 apiVersion: kubeadm.k8s.io/v1alpha1
 kind: MasterConfiguration
 apiServerExtraArgs:
   service-node-port-range: 80-32767
   feature-gates: "PersistentLocalVolumes=true,VolumeScheduling=true,MountPropagation=true"
 controllerManagerExtraArgs:
   feature-gates: "PersistentLocalVolumes=true,VolumeScheduling=true,MountPropagation=true"
 schedulerExtraArgs:
   feature-gates: "PersistentLocalVolumes=true,VolumeScheduling=true,MountPropagation=true"

然后,您需要创建自己的存储类,因为没有本地存储类。因此创建您自己类如下所示:

代码语言:javascript
复制
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: local-storage-data
provisioner: kubernetes.io/no-provisioner
volumeBindingMode: WaitForFirstConsumer

现在,您可以通过以下方式创建PV和PVC:

PV定义:

代码语言:javascript
复制
apiVersion: v1
kind: PersistentVolume
metadata:
  name: mysql-mariadb-0
  labels:
    pod-name: mariadb-0
  annotations:
    "volume.alpha.kubernetes.io/node-affinity": '{
      "requiredDuringSchedulingIgnoredDuringExecution": {
        "nodeSelectorTerms": [
          { "matchExpressions": [
              { "key": "kubernetes.io/hostname",
                "operator": "In",
                "values": ["prod-mysql-0"]
              }
          ]}
        ]}}'
spec:
  capacity:
    storage: 2Gi
  accessModes:
  - ReadWriteOnce
  persistentVolumeReclaimPolicy: Retain
  storageClassName: local-storage-data
  local:
    path: /mnt/local-storage/mysql-data-0

PVC定义:

代码语言:javascript
复制
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  labels:
    app: mariadb
  name: mysql-mariadb-0
  namespace: mysql
spec:
  accessModes:
  - ReadWriteOnce
  resources:
    requests:
      storage: 2Gi
  storageClassName: local-storage-data
  selector:
    matchLabels:
      pod-name: mariadb-0

Is it possible to mount different pods to the same portion of a local persistent volume?

希望这能有所帮助

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53515705

复制
相关文章

相似问题

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