需求:
作为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相关小技巧《六》