Local volume vs HostPath

更新於 2024/10/11閱讀時間約 4 分鐘

以下將說明關於Local volume 與hostPath二種類型的差異與一些注意事項。

raw-image

1. HostPath

raw-image

hostPath是將節點內的檔案、目錄映射進Pod內,支援類型:File, Directory, Socket, BlockDevice。

apiVersion: v1
kind: Pod
metadata:
name: test-pod2
spec:
containers:
- image: busybox
name: test-hostpath
command: [ "sleep", "3600" ]
volumeMounts:
- mountPath: /test-data
name: test-volume
volumes:
- name: test-volume
hostPath:
# directory location on host
path: /data
# this field is optional
type: Directory

使用上要注意:

  1. 要使用hostpath volume建議搭配NodeSelector來做配置,但數量一多就很煩人。
  2. 如果套用DirectoryOrCreateFileOrCreate,要確定kubelet有在節點上Create file/directory的權限。
  3. 如果節點上的File/Directory是由root建立的,在掛到容器後,還要確認容器有沒有權限進行讀寫
  4. Kubernetes scheduler不會考慮hostPath volume的大小,也無法設定大小,所以必須用其他方式進行檢查。

2. Local volume

Local volume的機制是掛載本地的儲存資源,像是Disk, partition, folder。讓這些資源可以被kubernetes以static pv的方式取得。

主要就是要用來解決HostPath的問題。會由PV controllerScheduler做local pv做邏輯上的額外處理,才能實現在Pod re-schedule時,可以再排程到local volume所在的節點。

Local volume可以確保Pod與PV一定可以被scheduled到相同的worker node上。

3. 使用Local volume的時機

  • 需要從遠端的storage預先載入到本地的目錄,用來加速Pod讀取資料的速度(Cache),這種情況為ReadOnly,所以不怕資料損壞,現在有些AI在訓練時也會採用這種方式。
  • 本地有建立SDS解決方案,因為本身就有replicas,所以也可以採用local pv。
  • 不適合在需要做scaling的環境使用

4. 使用Local volume注意事項

  • 在寫PV時,可以.spec.nodeAffinityfield部份來說明local volume與node的綁定關係
  • 如果使用local-storage storageclass時,可以使用volumeBindingMode: WaitForFirstConsumer來實現延遲定,讓PV controller不會立刻為PVC做Bound,等到需要使用這個local pv的Pod完成排程後,再去做Bound。

為了改善這些問題,官方再提出一個local volume provisionner的解決方案來處理這些問題

(1) 監控配置好的掛載點,建立對應storageClassName, path, nodeAffinity, capacity的PV

(2) 刪除PVC後,自動清理local mount的所有內容,並刪除對應的PV

(3) 只有一開始的local volume的掛載需要人工,其他都由provisionner處理。


Reference:

avatar-img
15會員
40內容數
記錄IT社畜的自我學習筆記,如同專題名稱,主要是怕自已忘記自已做過什麼、學到什麼。索性就分享我自已在學習Kubernetes這條路上的各種測試、學習心得。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
超健忘閒人的沙龍 的其他內容
因為想要使用FQDN的方式連接到Kubernetes cluster內部的應用服務,加上早已使用Linux Bind為測試環境的主要DNS
今天分別針對3個基本中的基本資源物件類型來說明
在建置完Kubernetes cluster之後,通常我會做的前幾件事之一就是建立一個StorageClass給應用服務使用,而NFS我認為是相對容易實現的做法。
本文針對Kubernetes內最基本的資源(cpu, ram, disk)的計算單位與一些實務操作,分享給自已與大家做參考。
本次分享一個K8S網路的一個很重要的元件:Ingress。 有沒有ingress差別在那?
因為想要使用FQDN的方式連接到Kubernetes cluster內部的應用服務,加上早已使用Linux Bind為測試環境的主要DNS
今天分別針對3個基本中的基本資源物件類型來說明
在建置完Kubernetes cluster之後,通常我會做的前幾件事之一就是建立一個StorageClass給應用服務使用,而NFS我認為是相對容易實現的做法。
本文針對Kubernetes內最基本的資源(cpu, ram, disk)的計算單位與一些實務操作,分享給自已與大家做參考。
本次分享一個K8S網路的一個很重要的元件:Ingress。 有沒有ingress差別在那?
你可能也想看
Google News 追蹤
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
局部二值化(Local Thresholding)是一種影像處理技術,用來根據局部區域的像素值動態地將影像轉換為二值影像。這在處理光照不均勻的影像時特別有用。 與常見的兩種二值化(Otsu's與固定閥值)方法做比較。 實現局部二值化的範例: import cv2 import numpy
Thumbnail
透過GraphQL提供的分頁方式,優化後端讀取資料的效能,避免過度讀取舊資料及準確指定特定項目。同時,利用Local-only field達成資料的整理或再次經過計算,提升管理和重複使用的效能。
Thumbnail
這張照片拍攝於迷濛的荒野邊緣,捕捉到一位名叫珍的女士神秘的魅力。正當晨霧逐漸散去,展現出一張蘊藏著深邃秘密的臉龐。珍是一個小英格蘭村莊的當地歷史學家,她經常在黎明時分徘徊在荒野上,尋找被遺忘的痕跡。這個特別的早晨,她的臉上露出罕見的微笑,與周圍景觀的幽靜形成鮮明對比。
Thumbnail
WordPress本地架站教學,Local WP可以快速在本地電腦設置WordPress作業環境,不用租虛擬主機也能使用WordPress.org;除此,Local WP還能用Live links讓協作者線上查看網站進度!
Thumbnail
本文將說明關於Local volume 與hostPath二種類型的差異與一些注意事項。
Thumbnail
南非也有鄉土味的流行格調。South Africa also has its own local flavor in popular music styles.
https://bit.ly/44qwMiJ 前幾天在KTV聽到別人唱玖壹壹的local感覺旋律非常耳熟,因此回家查了一下 發現跟韓國PSY的newface非常相像。 先把兩首歌的MV放在下面 PSY - ‘New Face’ M/V - YouTube 玖壹壹(Nine one one
Thumbnail
#2022年中華民國地方公職人員選舉#111年九合一選舉#111年九合一大選#第三次九合一地方選舉#2022Taiwaneselocalelections#2022台湾統一地方選挙 選舉種類 1. 第4屆市長 2. 第4屆里長 3. 第4屆市議員 注意事項 1.投票日期及起訖時間 111年11月26
因應科技發展,現代網路使用者想更詳細又快獲得資訊。他們會根據自己的想法來輸入關鍵字。舉例來說:A想吃越南河粉,他會直接在Google輸入「越南河粉餐廳」。而這種搜尋行為也逐漸被SEO專家注意到。因此,他們紛紛開始依據產業所在地點或提供服務的周邊區域優化本地搜尋引擎(Local SEO)。
Thumbnail
大家都那麼愛喊,我喊一下也不會造成什麼環境傷害:如果台灣能誕生某種類似劇畫的漫畫子類,那這位老弟應該會是開創者或重要作者之一。五年、十年後等著看。 真的沒有想像過有台灣人可以畫出這種漫畫耶。起碼翻翻看吧。
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
局部二值化(Local Thresholding)是一種影像處理技術,用來根據局部區域的像素值動態地將影像轉換為二值影像。這在處理光照不均勻的影像時特別有用。 與常見的兩種二值化(Otsu's與固定閥值)方法做比較。 實現局部二值化的範例: import cv2 import numpy
Thumbnail
透過GraphQL提供的分頁方式,優化後端讀取資料的效能,避免過度讀取舊資料及準確指定特定項目。同時,利用Local-only field達成資料的整理或再次經過計算,提升管理和重複使用的效能。
Thumbnail
這張照片拍攝於迷濛的荒野邊緣,捕捉到一位名叫珍的女士神秘的魅力。正當晨霧逐漸散去,展現出一張蘊藏著深邃秘密的臉龐。珍是一個小英格蘭村莊的當地歷史學家,她經常在黎明時分徘徊在荒野上,尋找被遺忘的痕跡。這個特別的早晨,她的臉上露出罕見的微笑,與周圍景觀的幽靜形成鮮明對比。
Thumbnail
WordPress本地架站教學,Local WP可以快速在本地電腦設置WordPress作業環境,不用租虛擬主機也能使用WordPress.org;除此,Local WP還能用Live links讓協作者線上查看網站進度!
Thumbnail
本文將說明關於Local volume 與hostPath二種類型的差異與一些注意事項。
Thumbnail
南非也有鄉土味的流行格調。South Africa also has its own local flavor in popular music styles.
https://bit.ly/44qwMiJ 前幾天在KTV聽到別人唱玖壹壹的local感覺旋律非常耳熟,因此回家查了一下 發現跟韓國PSY的newface非常相像。 先把兩首歌的MV放在下面 PSY - ‘New Face’ M/V - YouTube 玖壹壹(Nine one one
Thumbnail
#2022年中華民國地方公職人員選舉#111年九合一選舉#111年九合一大選#第三次九合一地方選舉#2022Taiwaneselocalelections#2022台湾統一地方選挙 選舉種類 1. 第4屆市長 2. 第4屆里長 3. 第4屆市議員 注意事項 1.投票日期及起訖時間 111年11月26
因應科技發展,現代網路使用者想更詳細又快獲得資訊。他們會根據自己的想法來輸入關鍵字。舉例來說:A想吃越南河粉,他會直接在Google輸入「越南河粉餐廳」。而這種搜尋行為也逐漸被SEO專家注意到。因此,他們紛紛開始依據產業所在地點或提供服務的周邊區域優化本地搜尋引擎(Local SEO)。
Thumbnail
大家都那麼愛喊,我喊一下也不會造成什麼環境傷害:如果台灣能誕生某種類似劇畫的漫畫子類,那這位老弟應該會是開創者或重要作者之一。五年、十年後等著看。 真的沒有想像過有台灣人可以畫出這種漫畫耶。起碼翻翻看吧。