亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

Kubernetes v1.13對裸盤支持轉(zhuǎn)移到beta

galois / 1835人閱讀

摘要:作者,谷歌將裸盤支持轉(zhuǎn)移到。對裸盤的支持目前是。將留空與指定相同,這會導致傳統(tǒng)行為。例如,實際上是磁盤的塊設(shè)備支持使用向設(shè)備發(fā)送命令。默認情況下,不允許容器將命令從容器內(nèi)部發(fā)送到磁盤。

作者:Ben Swartzlander(NetApp),Saad Ali(谷歌)

Kubernetes v1.13將裸盤(raw block volume)支持轉(zhuǎn)移到beta。此功能允許持久卷(persistent volume)作為塊設(shè)備(block device),而不是作為已安裝的文件系統(tǒng)在容器內(nèi)部公開。

什么是塊設(shè)備?

塊設(shè)備允許隨機訪問固定大小的塊中的數(shù)據(jù)。硬盤驅(qū)動器、SSD和CD-ROM驅(qū)動器都是塊設(shè)備的示例。

持久存儲通常以分層方式實現(xiàn),在塊設(shè)備(如旋轉(zhuǎn)磁盤或SSD)之上使用文件系統(tǒng)(如ext4)。然后,應用程序讀取和寫入文件,而不是在塊上操作。操作系統(tǒng)負責使用指定的文件系統(tǒng),將文件作為塊讀取和寫入底層設(shè)備。

值得注意的是,整個磁盤都是塊設(shè)備,磁盤分區(qū)也是,存儲區(qū)域網(wǎng)絡(SAN)設(shè)備的LUN也是。

為什么要將裸盤添加到kubernetes?

有些專門的應用程序需要直接訪問塊設(shè)備,例如,文件系統(tǒng)層會引入不必要的開銷。最常見的情況是數(shù)據(jù)庫,它們更喜歡直接在底層存儲上組織數(shù)據(jù)。裸盤設(shè)備也常用于任何本身實現(xiàn)某種存儲服務的軟件(軟件定義的存儲系統(tǒng))。

從程序員的角度來看,塊設(shè)備是一個非常大的字節(jié)數(shù)組,通常具有一些最小的讀寫粒度,通常為512字節(jié),但更常見為4K或更大。

隨著在Kubernetes內(nèi)部運行數(shù)據(jù)庫軟件和存儲基礎(chǔ)架構(gòu)軟件變得越來越普遍,Kubernetes中對裸盤設(shè)備支持的需求變得更加重要。

哪個卷插件支持裸盤?

在發(fā)布此博客時,以下樹內(nèi)(in-tree)卷類型支持裸盤:

AWS EBS

Azure Disk

Cinder

Fibre Channel

GCE PD

iSCSI

Local volumes

RBD (Ceph)

Vsphere

樹外(Out-of-tree)CSI卷驅(qū)動程序也可以支持裸盤。 Kubernetes CSI對裸盤的支持目前是alpha。請參閱此處的文檔。

Kubernetes裸盤API

裸盤與普通卷有很多共同點。兩者都是通過創(chuàng)建綁定到PersistentVolume對象的PersistentVolumeClaim對象來請求的,并通過將它們包含在PodSpec的volumes數(shù)組中而附加到Kubernetes中的Pod。

但是有兩個重要的區(qū)別。首先,要請求裸盤PersistentVolumeClaim,必須在PersistentVolumeClaimSpec中設(shè)置volumeMode =“Block”。將volumeMode留空與指定volumeMode =“Filesystem”相同,這會導致傳統(tǒng)行為。PersistentVolumes在其PersistentVolumeSpec中也有一個volumeMode字段,而“Block”類型的PVC只能綁定到“Block”類型的PV,而“Filesystem”PVC只能綁定到“Filesystem”PV。

其次,在Pods中使用裸盤時,必須在PodSpec的Container部分而不是VolumeMount中指定VolumeDevice。VolumeDevices具有devicePaths而不是mountPaths,并且在容器內(nèi)部,應用程序?qū)⒃谠撀窂街锌吹皆O(shè)備而不是已安裝的文件系統(tǒng)。

應用程序打開、讀取和寫入容器內(nèi)的設(shè)備節(jié)點,就像它們將與非容器化或虛擬化環(huán)境中的系統(tǒng)上的任何塊設(shè)備進行交互一樣。

創(chuàng)建新的裸盤PVC

首先,確保你選擇的存儲類關(guān)聯(lián)的配置程序是支持裸盤的配置程序。然后創(chuàng)建PVC。

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: my-pvc
spec:
  accessModes:
    - ReadWriteMany
  volumeMode: Block
  storageClassName: my-sc
  resources:
    requests:
    storage: 1Gi
使用裸盤PVC

在pod定義中使用PVC時,可以選擇塊設(shè)備的設(shè)備路徑,而不是文件系統(tǒng)的安裝路徑。

apiVersion: v1
kind: Pod
metadata:
  name: my-pod
spec:
  containers:
    - name: my-container
      image: busybox
      command:
        - sleep
        - “3600”
      volumeDevices:
        - devicePath: /dev/block
          name: my-volume
      imagePullPolicy: IfNotPresent
  volumes:
    - name: my-volume
      persistentVolumeClaim:
        claimName: my-pvc
作為存儲供應商,如何在我的CSI插件中添加對裸盤設(shè)備的支持?

CSI插件對裸盤支持仍然是alpha,但今天可以添加支持。CSI規(guī)范詳細說明了如何處理具有BlockVolume功能而不是MountVolume功能的卷請求。CSI插件可以支持這兩種卷。有關(guān)更多詳細信息,請參閱此處。

問題/陷阱

因為塊設(shè)備實際上是設(shè)備,所以可以從容器內(nèi)部對它們執(zhí)行低級操作,這是文件系統(tǒng)卷無法實現(xiàn)的。例如,實際上是SCSI磁盤的塊設(shè)備支持使用Linux ioctls向設(shè)備發(fā)送SCSI命令。

默認情況下,Linux不允許容器將SCSI命令從容器內(nèi)部發(fā)送到磁盤。為此,你必須將SYS_RAWIO功能授予容器安全上下文(context)以允許此操作。請參閱此處的文檔。

此外,雖然Kubernetes保證向容器提供塊設(shè)備,但不能保證它實際上是SCSI磁盤或任何其他類型的磁盤。用戶必須確保所需的磁盤類型與其pod一起使用,或者僅部署可處理各種塊設(shè)備類型的應用程序。

怎樣能了解更多?

在此處查看有關(guān)快照功能的其他文檔。

我如何參與?

加入Kubernetes存儲SIG和CSI社區(qū),幫助我們添加更多優(yōu)秀功能,并改進現(xiàn)有功能如裸盤存儲!

鳴謝

特別感謝幫助Kubernetes增加塊卷支持的所有貢獻者,包括:

Ben Swartzlander(https://github.com/bswartz)

Brad Childs(https://github.com/childsb)

Erin Boyd(https://github.com/erinboyd)

Masaki Kimura(https://github.com/mkimuram)

Matthew Wong(https://github.com/wongma7)

Michelle Au(https://github.com/msau42)

Mitsuhiro Tanino(https://github.com/mtanino)

Saad Ali(https://github.com/saad-ali)


KubeCon + CloudNativeCon和Open Source Summit大會日期:

會議日程通告日期:2019 年 4 月 10 日

會議活動舉辦日期:2019 年 6 月 24 至 26 日

KubeCon + CloudNativeCon和Open Source Summit贊助方案
KubeCon + CloudNativeCon和Open Source Summit多元化獎學金現(xiàn)正接受申請
KubeCon + CloudNativeCon和Open Source Summit即將首次合體落地中國
KubeCon + CloudNativeCon和Open Source Summit購票窗口,立即購票!

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/32909.html

相關(guān)文章

  • Kubernetes v1.13裸盤支持轉(zhuǎn)移beta

    摘要:作者,谷歌將裸盤支持轉(zhuǎn)移到。對裸盤的支持目前是。將留空與指定相同,這會導致傳統(tǒng)行為。例如,實際上是磁盤的塊設(shè)備支持使用向設(shè)備發(fā)送命令。默認情況下,不允許容器將命令從容器內(nèi)部發(fā)送到磁盤。 作者:Ben Swartzlander(NetApp),Saad Ali(谷歌) Kubernetes v1.13將裸盤(raw block volume)支持轉(zhuǎn)移到beta。此功能允許持久卷(pers...

    CoffeX 評論0 收藏0
  • 新版發(fā)行+被爆首個嚴重漏洞,Kubernetes動態(tài)有點多

    摘要:首爆嚴重安全漏洞,嚴重性分于昨晚爆出嚴重安全漏洞,該漏洞由聯(lián)合創(chuàng)始人及首席架構(gòu)師發(fā)現(xiàn)。其他功能更新對第三方設(shè)備監(jiān)控插件的支持該功能目前被引入為功能。拓撲感知卷調(diào)度該功能現(xiàn)成為狀態(tài)。 K8S首爆嚴重安全漏洞,嚴重性9.8分 Kubernetes于昨晚爆出嚴重安全漏洞,該漏洞由Rancher Labs聯(lián)合創(chuàng)始人及首席架構(gòu)師Darren Shepherd發(fā)現(xiàn)。該漏洞CVE-2018-1002...

    jackzou 評論0 收藏0
  • Kubernetes的容器存儲接口(CSI)GA了

    摘要:作者,高級軟件工程師實施的容器存儲接口已在版本中升級為。功能受棄用政策保護。隨著容器存儲接口的采用,卷層變得真正可擴展。年中國論壇提案征集現(xiàn)已開放論壇讓用戶開發(fā)人員從業(yè)人員匯聚一堂,面對面進行交流合作。 showImg(https://segmentfault.com/img/bVbnBe1?w=620&h=340); 作者:Saad Ali,Google高級軟件工程師 Kuberne...

    zengdongbao 評論0 收藏0
  • Kubernetes的容器存儲接口(CSI)GA了

    摘要:作者,高級軟件工程師實施的容器存儲接口已在版本中升級為。功能受棄用政策保護。隨著容器存儲接口的采用,卷層變得真正可擴展。年中國論壇提案征集現(xiàn)已開放論壇讓用戶開發(fā)人員從業(yè)人員匯聚一堂,面對面進行交流合作。 showImg(https://segmentfault.com/img/bVbnBe1?w=620&h=340); 作者:Saad Ali,Google高級軟件工程師 Kuberne...

    yanwei 評論0 收藏0
  • 與CNCF一起分享K8s博客文章或案例研究

    摘要:和網(wǎng)站不時發(fā)布來之全世界的博客文章和案例研究。提交案例研究案例研究強調(diào)組織如何使用解決實際問題??纯船F(xiàn)有案例研究材料。 showImg(https://segmentfault.com/img/bVbp45W?w=1280&h=545); CNCF和Kubernetes網(wǎng)站不時發(fā)布來之全世界的博客文章和案例研究。 近期的博客文章有: 使用Ansible和Vagrant設(shè)置Kubern...

    JinB 評論0 收藏0

發(fā)表評論

0條評論

galois

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<