k8s–基礎–22.4–storageclass–類型–Glusterfs
1、介紹
- 當動态配置設定持久卷時,Gluster插件自動建立名為gluster-dynamic-的端點和 headless service。
- 在 PVC 被删除時動态端點和 headless service 會自動被删除。
1.1、案例
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: slow
provisioner: kubernetes.io/glusterfs
parameters:
resturl: "http://127.0.0.1:8081"
clusterid: "630372ccdc720a92c681fb928f27b53f"
restauthenabled: "true"
restuser: "admin"
secretNamespace: "default"
secretName: "heketi-secret"
gidMin: "40000"
gidMax: "50000"
volumetype: "replicate:3"
2、說明
2.1、resturl
- Gluster REST 服務 或者 Heketi服務 的url。
- 通用格式:
- IPaddress:Port
- Heketi可用于管理glusterfs
2.2、restauthenabled
- 是否啟用對 REST伺服器的身份驗證。
- 如果此值為 “true”,則必須填寫restuser+restuserkey或secretNamespace + secretName。
- 此選項已棄用: 當在指定restuser+restuserkey或secretNamespace + secretName時,身份驗證自動被啟用。
2.3、restuser
Gluster REST服務/Heketi服務 的使用者。
2.4、restuserkey
- Gluster REST服務/Heketi服務 的密碼
- 此參數已棄用,取而代之的是secretNamespace+secretName。
2.5、secretNamespace,secretName
- Secret 執行個體的辨別,包含與 Gluster REST 服務互動時使用的使用者密碼。
- 這些參數是可選的
- secretNamespace和secretName都省略時使用空密碼。
2.5.1、要提供的Secret,必須将類型設定為"kubernetes.io/glusterfs",例如以這種方式建立
kubectl create secret generic heketi-secret --type="kubernetes.io/glusterfs" --from-literal=key='opensesame' --namespace=default
官方案例
https://github.com/kubernetes/examples/tree/master/staging/persistent-volume-provisioning/glusterfs/glusterfs-secret.yaml
2.6、clusterid:630372ccdc720a92c681fb928f27b53f
- 叢集的ID
- 可選參數
-
當配置設定卷時,Heketi 将會使用這個檔案。它也可以是一個 clusterid 清單,例如:
“8452344e2becec931ece4e33c4674e4e,42982310de6c63381718ccfa6d8cf397”
2.7、gidMin,gidMax:
- storage class GID 範圍的最小值和最大值。
- 在此範圍(gidMin-gidMax)内的唯一值(GID)将用于動态配置設定卷。
- 可選參數:如果不指定,使用預設值
- 預設值:
- gidMin:2000
- gidMax:2147483647
- 參考資訊
- https://access.redhat.com/documentation/en-us/red_hat_gluster_storage/3.1
2.8、volumetype
- 卷的類型及其參數可以用這個可選值進行配置。
- 如果未聲明卷類型,則由配置設定器決定卷的類型。
2.8.1、舉例
# "3" 是 replica 數量
volumetype: replicate:3
# 沒有類型
volumetype: none
# "4" 是資料,"2" 是備援數量
volumetype: disperse:4:2