需求:
作为Kubernetes管理员,前一段时间有收到一个需求,需要创建一个可用的storage class,用于提供给给隔离的用户使用共享磁盘。共享磁盘为NFS磁盘,本例以NFS为例,其他类型的storage class创建也是类似,不同的是寻找不一样的插件即可。
创建时所用到的helm chart values(nfs-client-provisioner-values.yaml)分享如下:
image:repository: <your_harbor_addr_or_delegeate_ip>:1080/<your_project>/nfs-subdir-external-provisionertag: v4.0.2
nfs:server: <your_nfs_server_addr_or_ip>path: /K8SQA # 这是一个例子,请更改为实际目录地址storageClass:create: truedefaultClass: falseaccessModes: ReadWriteManyname: nfs-client-qa #这是一个例子,请改为实际可识别的storageclass名称
resources:limits:cpu: 200mmemory: 512Mirequests:cpu: 100mmemory: 128Mi
创建时使用到的命令:
给nfs-provisioner创建命名空间:
kubectl create namespace nfs-provisioner-qa #这是一个例子,请改为实际可识别的名称
使用helm install安装:
helm install nfs-provisioner-qa --namespace nfs-provisioner-qa -f ~/helm_charts/nfs-client-provisioner-values.yaml my-helm/nfs-client-provisioner --version 1.0.2
注意:nfs-subdir-external-provisioner is suitable for v1.22 k8s
关于“my-helm/nfs-client-provisioner”这个helm chart的内容如何下载到本地,请查看helm相关文档或者参考如下例子:
$ helm repo add nginx-stable https://helm.nginx.com/stable
$ helm repo update
$ # helm pull <REPO_NAME>/<PATH_TO_CHART> --version <CHART_VERSION>
$ helm search repo -l nginx-ingress
NAME CHART VERSION APP VERSION DESCRIPTION
nginx-stable/nginx-ingress 0.15.1 2.4.1 NGINX Ingress Controller
nginx-stable/nginx-ingress 0.15.0 2.4.0 NGINX Ingress Controller
nginx-stable/nginx-ingress 0.14.1 2.3.1 NGINX Ingress Controller
nginx-stable/nginx-ingress 0.14.0 2.3.0 NGINX Ingress Controller
nginx-stable/nginx-ingress 0.13.2 2.2.2 NGINX Ingress Controller
...
$ helm pull nginx-stable/nginx-ingress --version 0.10.5
上一篇:K8S相关小技巧《四》
上一篇:K8S相关小技巧《六》