中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

食品包裝設(shè)計(jì)公司哪家好網(wǎng)站搜索引擎優(yōu)化工具

食品包裝設(shè)計(jì)公司哪家好,網(wǎng)站搜索引擎優(yōu)化工具,武漢網(wǎng)絡(luò)科技有限公司有哪些,租個(gè)網(wǎng)站服務(wù)器多少錢存儲(chǔ)類StorageClass 一、StorageClass介紹二、安裝nfs provisioner,用于配合存儲(chǔ)類動(dòng)態(tài)生成pv2.1、創(chuàng)建運(yùn)行nfs-provisioner需要的sa賬號(hào)2.2、對(duì)sa授權(quán)2.3、安裝nfs-provisioner程序 三、創(chuàng)建storageclass,動(dòng)態(tài)供給pv四、創(chuàng)建pvc,通過storage…

存儲(chǔ)類StorageClass

  • 一、StorageClass介紹
  • 二、安裝nfs provisioner,用于配合存儲(chǔ)類動(dòng)態(tài)生成pv
    • 2.1、創(chuàng)建運(yùn)行nfs-provisioner需要的sa賬號(hào)
    • 2.2、對(duì)sa授權(quán)
    • 2.3、安裝nfs-provisioner程序
  • 三、創(chuàng)建storageclass,動(dòng)態(tài)供給pv
  • 四、創(chuàng)建pvc,通過storageclass動(dòng)態(tài)生成pv
  • 五、創(chuàng)建pod,掛載storageclass動(dòng)態(tài)生成的pvc

一、StorageClass介紹

之前介紹的PV和PVC模式都是需要先創(chuàng)建好PV,然后定義好PVC和pv進(jìn)行一對(duì)一的Bond,但是如果PVC請(qǐng)求成千上萬,那么就需要?jiǎng)?chuàng)建成千上萬的PV,對(duì)于運(yùn)維人員來說維護(hù)成本很高,

Kubernetes提供一種自動(dòng)創(chuàng)建PV的機(jī)制,叫StorageClass,它的作用就是創(chuàng)建PV的模板。k8s集群管理員通過創(chuàng)建storageclass可以動(dòng)態(tài)生成一個(gè)存儲(chǔ)卷pv供k8s pvc使用。

具體來說,StorageClass會(huì)定義以下兩部分:
=========
1、PV的屬性 ,比如存儲(chǔ)的大小、類型等;
2、創(chuàng)建這種PV需要使用到的存儲(chǔ)插件,比如Ceph、NFS等
=========
有了這兩部分信息,Kubernetes就能夠根據(jù)用戶提交的PVC,找到對(duì)應(yīng)的StorageClass,然后Kubernetes就會(huì)調(diào)用 StorageClass聲明的存儲(chǔ)插件,創(chuàng)建出需要的PV。

查看定義的storageclass需要的字段:kubectl explain storageclass
每個(gè)StorageClass都包含字段provisioner,parameters和reclaimPolicy

[root@master 10]# kubectl explain storageclass
KIND:     StorageClass
VERSION:  storage.k8s.io/v1
DESCRIPTION:StorageClass describes the parameters for a class of storage for whichPersistentVolumes can be dynamically provisioned.StorageClasses are non-namespaced; the name of the storage class accordingto etcd is in ObjectMeta.Name.
FIELDS:allowVolumeExpansion	<boolean>allowedTopologies	<[]Object>apiVersion	<string>kind	<string>metadata	<Object>mountOptions	<[]string>parameters	<map[string]string>  # 鍵值對(duì)類型provisioner	<string> -required-  # 供應(yīng)商reclaimPolicy	<string>         # 回收策略volumeBindingMode	<string>

provisioner:供應(yīng)商,storageclass需要有一個(gè)供應(yīng)者,用來確定我們使用什么樣的存儲(chǔ)來創(chuàng)建pv,常見的provisioner:(https://kubernetes.io/zh/docs/concepts/storage/storage-classes/)
provisioner既可以由內(nèi)部供應(yīng)商提供,也可以由外部供應(yīng)商提供,如果是外部供應(yīng)商可以參考https://github.com/kubernetes-incubator/external-storage/下提供的方法創(chuàng)建。
https://github.com/kubernetes-sigs/sig-storage-lib-external-provisioner

以NFS為例,要想使用NFS,我們需要一個(gè)nfs-client的自動(dòng)裝載程序,稱之為provisioner,這個(gè)程序會(huì)使用我們已經(jīng)配置好的NFS服務(wù)器自動(dòng)創(chuàng)建持久卷,也就是自動(dòng)幫我們創(chuàng)建PV。

allowVolumeExpansion:允許卷擴(kuò)展,PersistentVolume 可以配置成可擴(kuò)展。將此功能設(shè)置為true時(shí),允許用戶通過編輯相應(yīng)的 PVC 對(duì)象來調(diào)整卷大小。當(dāng)基礎(chǔ)存儲(chǔ)類的allowVolumeExpansion字段設(shè)置為 true 時(shí),以下類型的卷支持卷擴(kuò)展。

在這里插入圖片描述

注意:此功能僅用于擴(kuò)容卷,不能用于縮小卷。

二、安裝nfs provisioner,用于配合存儲(chǔ)類動(dòng)態(tài)生成pv

將nfs-subdir-external-provisioner.tar.gz上傳到工作節(jié)點(diǎn)node01和node02上,然后手動(dòng)解壓。

[root@node01 ~]#  ctr -n=k8s.io images import  nfs-subdir-external-provisioner.tar.gz
unpacking registry.cn-beijing.aliyuncs.com/mydlq/nfs-subdir-external-provisioner:v4.0.0 (sha256:69b08b256d7e9f5823cf09dece7eabf025cc60c652e4ae08201978bb2862a276)...done
You have new mail in /var/spool/mail/root
[root@node02 ~]#  ctr -n=k8s.io images import  nfs-subdir-external-provisioner.tar.gz
unpacking registry.cn-beijing.aliyuncs.com/mydlq/nfs-subdir-external-provisioner:v4.0.0 (sha256:69b08b256d7e9f5823cf09dece7eabf025cc60c652e4ae08201978bb2862a276)...done
You have new mail in /var/spool/mail/root

2.1、創(chuàng)建運(yùn)行nfs-provisioner需要的sa賬號(hào)

[root@master 11]# cat serviceaccount.yaml
apiVersion: v1
kind: ServiceAccount
metadata:name: nfs-provisioner
[root@master 11]# kubectl apply -f serviceaccount.yaml
serviceaccount/nfs-provisioner created
[root@master 11]# kubectl get sa
NAME              SECRETS   AGE
default           0         5d13h
nfs-provisioner   0         21s

擴(kuò)展:什么是sa?

sa的全稱是serviceaccount。
serviceaccount是為了方便Pod里面的進(jìn)程調(diào)用Kubernetes API或其他外部服務(wù)而設(shè)計(jì)的。
指定了serviceaccount之后,我們把pod創(chuàng)建出來了,我們?cè)谑褂眠@個(gè)pod時(shí),這個(gè)pod就有了我們指定的賬戶的權(quán)限了。

2.2、對(duì)sa授權(quán)

[root@master 11]# kubectl create clusterrolebinding nfs-provisioner-clusterrolebinding  --clusterrole=cluster-admin  --serviceaccount=default:nfs-provisioner
clusterrolebinding.rbac.authorization.k8s.io/nfs-provisioner-clusterrolebinding created

2.3、安裝nfs-provisioner程序

[root@master 11]# cat /etc/exports
/data/volumes 10.32.1.147/24(rw,no_root_squash)
/data/volume_test/v1 10.32.1.147/24(rw,no_root_squash)
/data/volume_test/v2 10.32.1.147/24(rw,no_root_squash)
/data/volume_test/v3 10.32.1.147/24(rw,no_root_squash)
/data/volume_test/v4 10.32.1.147/24(rw,no_root_squash)
/data/volume_test/v5 10.32.1.147/24(rw,no_root_squash)
/data/volume_test/v6 10.32.1.147/24(rw,no_root_squash)
/data/volume_test/v7 10.32.1.147/24(rw,no_root_squash)
/data/volume_test/v8 10.32.1.147/24(rw,no_root_squash)
/data/volume_test/v9 10.32.1.147/24(rw,no_root_squash)
/data/volume_test/v10 10.32.1.147/24(rw,no_root_squash)
/data/nfs_pro 10.32.1.147/24(rw,no_root_squash)
[root@master 11]# exportfs -arv
exporting 10.32.1.147/24:/data/nfs_pro
exporting 10.32.1.147/24:/data/volume_test/v10
exporting 10.32.1.147/24:/data/volume_test/v9
exporting 10.32.1.147/24:/data/volume_test/v8
exporting 10.32.1.147/24:/data/volume_test/v7
exporting 10.32.1.147/24:/data/volume_test/v6
exporting 10.32.1.147/24:/data/volume_test/v5
exporting 10.32.1.147/24:/data/volume_test/v4
exporting 10.32.1.147/24:/data/volume_test/v3
exporting 10.32.1.147/24:/data/volume_test/v2
exporting 10.32.1.147/24:/data/volume_test/v1
exporting 10.32.1.147/24:/data/volumes
[root@master 11]# cat nfs-deployment.yaml
kind: Deployment
apiVersion: apps/v1
metadata:name: nfs-provisioner
spec:selector:matchLabels:app: nfs-provisionerreplicas: 1strategy:type: Recreatetemplate:metadata:labels:app: nfs-provisionerspec:serviceAccount: nfs-provisionercontainers:- name: nfs-provisionerimage: registry.cn-beijing.aliyuncs.com/mydlq/nfs-subdir-external-provisioner:v4.0.0imagePullPolicy: IfNotPresentvolumeMounts:- name: nfs-client-rootmountPath: /persistentvolumesenv:- name: PROVISIONER_NAMEvalue: example.com/nfs- name: NFS_SERVERvalue: 10.32.1.147- name: NFS_PATHvalue: /data/nfs_pro/volumes:- name: nfs-client-rootnfs:server: 10.32.1.147path: /data/nfs_pro/
[root@master 11]# kubectl apply -f nfs-deployment.yaml
deployment.apps/nfs-provisioner created
[root@master 11]# kubectl get pods | grep nfs
nfs-provisioner-d5bd78f66-56ccg   1/1     Running   0             6s

三、創(chuàng)建storageclass,動(dòng)態(tài)供給pv

[root@master 11]# cat nfs-storageclass.yaml
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:name: nfs
provisioner: example.com/nfs
[root@master 11]# kubectl apply -f nfs-storageclass.yaml
storageclass.storage.k8s.io/nfs created
[root@master 11]# kubectl get storageclass
NAME   PROVISIONER       RECLAIMPOLICY   VOLUMEBINDINGMODE   ALLOWVOLUMEEXPANSION   AGE
nfs    example.com/nfs   Delete          Immediate           false                  22s
# 顯示內(nèi)容如上,說明storageclass創(chuàng)建成功了

注意:provisioner處寫的example.com/nfs應(yīng)該跟安裝nfs provisioner時(shí)候的env下的PROVISIONER_NAME的value值保持一致,如下:

env:- name: PROVISIONER_NAMEvalue: `example.com/nfs`

四、創(chuàng)建pvc,通過storageclass動(dòng)態(tài)生成pv

[root@master 11]# cat claim.yaml
kind: PersistentVolumeClaim
apiVersion: v1
metadata:name: test-claim1
spec:accessModes:  ["ReadWriteMany"]resources:requests:storage: 1GistorageClassName:  nfs
[root@master 11]# kubectl apply -f claim.yaml
persistentvolumeclaim/test-claim1 created
# 查看是否動(dòng)態(tài)生成了pv,pvc是否創(chuàng)建成功,并和pv綁定
[root@master 11]# kubectl get pvc
NAME          STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS   AGE
test-claim1   Bound    pvc-6ecea632-e5ff-4ef9-99df-33638fe90a1c   1Gi        RWX            nfs            13s
# 通過上面可以看到test-claim1的pvc已經(jīng)成功創(chuàng)建了,綁定的pv是pvc-6ecea632-e5ff-4ef9-99df-33638fe90a1c 
# 這個(gè)pv是由storageclass調(diào)用nfs provisioner自動(dòng)生成的。

步驟總結(jié):

  • 1、供應(yīng)商:創(chuàng)建一個(gè)nfs provisioner
  • 2、創(chuàng)建storageclass,storageclass指定剛才創(chuàng)建的供應(yīng)商
  • 3、創(chuàng)建pvc,這個(gè)pvc指定storageclass

五、創(chuàng)建pod,掛載storageclass動(dòng)態(tài)生成的pvc

[root@master 11]# cat read-pod.yaml
kind: Pod
apiVersion: v1
metadata:name: read-pod
spec:containers:- name: read-podimage: nginximagePullPolicy: IfNotPresentvolumeMounts:- name: nfs-pvcmountPath: /usr/share/nginx/htmlrestartPolicy: "Never"volumes:- name: nfs-pvcpersistentVolumeClaim:claimName: test-claim1
[root@master 11]# kubectl apply -f read-pod.yaml
pod/read-pod created
[root@master 11]# kubectl get pods | grep read
read-pod                          1/1     Running   0             16s
http://www.risenshineclean.com/news/54960.html

相關(guān)文章:

  • 上海頻道做網(wǎng)站怎么樣希愛力雙效片副作用
  • 商務(wù)網(wǎng)站建設(shè)需要多少錢seo常用的優(yōu)化工具
  • PHP做的彩票網(wǎng)站好用嗎電腦培訓(xùn)中心
  • 研究政府網(wǎng)站建設(shè)的意義優(yōu)秀的網(wǎng)絡(luò)搜索引擎營(yíng)銷案例
  • win2003做網(wǎng)站百度關(guān)鍵詞怎么優(yōu)化
  • 教育類型網(wǎng)站如何優(yōu)化網(wǎng)絡(luò)
  • 定做微信小程序搜索引擎優(yōu)化的技巧
  • 樂清 做網(wǎng)站 多少錢中國(guó)經(jīng)濟(jì)網(wǎng)人事
  • 日本做電子賀卡網(wǎng)站軟件推廣怎么賺錢
  • 蘇州做網(wǎng)站設(shè)計(jì)的公司網(wǎng)站推廣的渠道有
  • ui培訓(xùn)的課程都有哪些seo建站收費(fèi)地震
  • 東莞做網(wǎng)站一年費(fèi)用百度指數(shù)明星搜索排名
  • 阿里云做網(wǎng)站流程網(wǎng)絡(luò)營(yíng)銷戰(zhàn)略的內(nèi)容
  • 網(wǎng)站電子地圖怎么做百度保障中心人工電話
  • 網(wǎng)站建設(shè)站長(zhǎng)免費(fèi)網(wǎng)絡(luò)營(yíng)銷軟件
  • 繪本館網(wǎng)站建設(shè)百度服務(wù)
  • dw網(wǎng)站模板下載西安seo顧問培訓(xùn)
  • 網(wǎng)站換ip對(duì)優(yōu)化有影響嗎武漢百度推廣公司
  • 活在永久免費(fèi)服務(wù)器西安seo優(yōu)化顧問
  • 網(wǎng)站上怎樣做輪播圖競(jìng)價(jià)推廣專員
  • 邯鄲建設(shè)網(wǎng)站的公司廣告引流推廣平臺(tái)
  • 網(wǎng)站開發(fā)與維護(hù)能做什么職業(yè)互聯(lián)網(wǎng)營(yíng)銷師證書含金量
  • 做網(wǎng)站必須要備案嗎免費(fèi)行情軟件網(wǎng)站大全
  • 怎么識(shí)別網(wǎng)站是用什么語言做的網(wǎng)絡(luò)推廣崗位職責(zé)和任職要求
  • 統(tǒng)計(jì)網(wǎng)站建設(shè)青島設(shè)計(jì)優(yōu)化公司
  • 電子商務(wù)網(wǎng)站項(xiàng)目預(yù)算選擇寧波seo優(yōu)化公司
  • 旅游網(wǎng)站制作過程教育培訓(xùn)機(jī)構(gòu)招生方案
  • div css做網(wǎng)站微信社群營(yíng)銷
  • ui設(shè)計(jì)和網(wǎng)站開發(fā)官方網(wǎng)站營(yíng)銷
  • 泉州開發(fā)網(wǎng)站的公司有哪些網(wǎng)站推廣費(fèi)用