使用NAS動態儲存卷建立有狀態應用
介紹:
目前動態生成NAS儲存卷的實現:在一個已有檔案系統上,自動生成子檔案系統(子目錄),並生成目標儲存卷(PV);
生成的PV名字為:pvc-${pv-uid}
映象介紹:
registry.cn-hangzhou.aliyuncs.com/acs/alicloud-nas-controller:v3.1.0-k8s1.11
部署:
部署前要先建立一個NAS檔案系統,並新增掛載點。注意:掛載點需要和叢集處於同一個VPC內部。
部署模板中,建立Storageclass的時候可以定義reclaimPolicy型別,可以為Retain或者Delete;
根據自己NAS掛載點修改NFS_SERVER、server的值;
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: alicloud-nas
mountOptions:
- vers=4.0
provisioner: alicloud/nas
reclaimPolicy: Retain
---
kind: Deployment
apiVersion: extensions/v1beta1
metadata:
name: alicloud-nas-controller
namespace: kube-system
spec:
replicas: 1
strategy:
type: Recreate
template:
metadata:
labels:
app: alicloud-nas-controller
spec:
tolerations:
- effect: NoSchedule
operator: Exists
key: node-role.kubernetes.io/master
- effect: NoSchedule
operator: Exists
key: node.cloudprovider.kubernetes.io/uninitialized
nodeSelector:
node-role.kubernetes.io/master: ""
serviceAccount: admin
containers:
- name: alicloud-nas-controller
image: registry.cn-hangzhou.aliyuncs.com/acs/alicloud-nas-controller:v3.1.0-k8s1.11
volumeMounts:
- mountPath: /persistentvolumes
name: nfs-client-root
env:
- name: PROVISIONER_NAME
value: alicloud/nas
- name: NFS_SERVER
value: 0cd8b4a576-mmi32.cn-hangzhou.nas.aliyuncs.com
- name: NFS_PATH
value: /
volumes:
- name: nfs-client-root
nfs:
server: 0cd8b4a576-mmi32.cn-hangzhou.nas.aliyuncs.com
path: /
測試:
apiVersion: apps/v1beta1
kind: StatefulSet
metadata:
name: web
spec:
serviceName: "nginx"
replicas: 2
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:alpine
volumeMounts:
- mountPath: "/data"
name: html
volumeClaimTemplates:
- metadata:
name: html
spec:
accessModes:
- ReadWriteOnce
storageClassName: alicloud-nas
resources:
requests:
storage: 2Gi
# kubectl get pv
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
pvc-945ca15d-e0ab-11e8-9d2f-00163e145c08 2Gi RWO Retain Bound default/html-web-0 alicloud-nas-retain 13m
pvc-9a162bb2-e0ab-11e8-9d2f-00163e145c08 2Gi RWO Retain Bound default/html-web-1 alicloud-nas-retain 13m
相關文章
- 自動儲存、靜態儲存和動態儲存
- 19c pdb如何儲存啟動狀態
- 用儲存過程動態建立表儲存過程
- canvas 儲存與還原狀態Canvas
- Amazon EKS 上有狀態服務啟用儲存加密加密
- Win10 20H1新增功能,登出時可以自動儲存應用狀態Win10
- 動態儲存過程儲存過程
- 使用history儲存列表頁ajax請求的狀態
- cookie儲存使用者狀態 無session系統CookieSession
- Azure Terraform(四)狀態檔案儲存ORM
- Android 元件系列-----Activity儲存狀態Android元件
- PL/SQL中動態掉用儲存過程SQL儲存過程
- 利用Dectorator分模組儲存Vuex狀態(下)Vue
- iOS UI狀態儲存和恢復(三)iOSUI
- 利用Dectorator分模組儲存Vuex狀態(上)Vue
- OpenHarmony頁面級UI狀態儲存:LocalStorageUI
- Android中正確儲存view的狀態AndroidView
- 使用 Provider 管理 Flutter 應用狀態 (下)IDEFlutter
- 使用 Provider 管理 Flutter 應用狀態 (上)IDEFlutter
- 動態表單儲存設計
- 動態呼叫儲存過程 sample:儲存過程
- 分散式儲存Ceph之PG狀態詳解分散式
- MySQL儲存過程裡動態SQL的使用UXMySql儲存過程UX
- 新增儲存用Parted分割槽並建LVM卷LVM
- iNeuOS工業網際網路作業系統,釋出實時儲存方式:實時儲存、變化儲存、定時儲存,增加裝置振動狀態和電能狀態監測驅動,v3.6.2作業系統
- 儲存過程vs.動態SQL:如何選用?PV儲存過程SQL
- 海量資料儲存之動態SchemaOU
- oracle動態sql儲存過程示例OracleSQL儲存過程
- /*動態執行儲存過程DEMO*/儲存過程
- 關於有狀態BEAN如何透過關鍵字儲存使用者狀態的問題,請幫忙Bean
- jQuery 操作checkbox翻頁儲存選中狀態jQuery
- 零程式碼儲存視窗執行狀態 (轉)
- Android Activity 重建之狀態儲存與恢復Android
- 探索FSM (有限狀態機)應用
- SmartX 釋出 K8s 雲原生儲存 IOMesh,加速有狀態應用容器化程式K8S
- 使用 useState 管理響應式狀態
- 【產品動態】雲端儲存11月月刊
- Myisam-儲存引擎-動態格式-DELETED ROWS儲存引擎delete