k8s無腦系列(三)-NFS存儲(chǔ)(簡單版本)

k8s無腦系列-NFS存儲(chǔ)(簡單版本)

1.概念

  1. 搞清楚pv,pvc

    pv = PersistentVolume 持久化存儲(chǔ)控制器舆吮,面向集群而不是namespace。
    pvc = PersistentVolumeClaim 對接pod與pv晋涣,

  2. 關(guān)系伙菊,官方說明

    A PVC to PV binding is a one-to-one mapping, using a ClaimRef which is a bi-directional binding between the PersistentVolume and the PersistentVolumeClaim

大體意思如下:pvc與pv的綁定關(guān)系是一一對應(yīng)的迫像。注意!這里的一一對應(yīng)是每個(gè)pvc只有一個(gè)pv茄蚯,但pv可以對應(yīng)多個(gè)pvc压彭。這一點(diǎn)從Access Modes包含ReadWriteMany就可以看出來睦优。

  1. 這篇文章只針對簡單的“靜態(tài)存儲(chǔ)”,不包含“動(dòng)態(tài)存儲(chǔ)”部分哮塞。

  2. pvc與pv對應(yīng)問題刨秆。pvc會(huì)搜索pv,找到?jīng)]有被綁定忆畅,資源要求又一致衡未,如果添加了label,pvc又設(shè)置了matchLabel屬性的時(shí)候家凯,會(huì)自動(dòng)綁定缓醋。 更具體的,會(huì)在NFS存儲(chǔ)(復(fù)雜版本)中介紹绊诲。

2. 部署

2.1 NFS安裝

  1. 服務(wù)端安裝
$yum install nfs-utils -y

$systemctl enable rpcbind nfs

$systemctl start rpcbind nfs

$mkdir /data/nfs

$chown -R nfsnobody.nfsnobody /data/nfs

$vim /etc/export
/data/nfs 192.168.56.0/24(rw,async,all_squash)
/data/nfs/mysql 192.168.56.0/24(rw,async,no_root_squash,fsid=0) # 這里很重要送粱,MYSQL會(huì)修改目錄權(quán)限所以必須放寬ROOT權(quán)限

$systemctl restart nfs
  1. 客戶端驗(yàn)證服務(wù)可用性
cd $HOME
mkdir nfs  
sudo mount -t nfs 192.168.56.4:/data/nfs nfs

3. 實(shí)際操作

  1. 創(chuàng)建給MySQL用的存儲(chǔ)空間mysql-pv.yaml

    apiVersion: v1
    kind: PersistentVolume
    metadata:
      name: mysql-pv
    spec:
      capacity:
        storage: 5Gi
      accessModes:
        - ReadWriteOnce
      persistentVolumeReclaimPolicy: Recycle
      nfs:
        path: /data/nfs/mysql
        server: 192.168.56.4
    
    $kubectl create -f mysql-pv.yaml
    
    $kubectl get pv mysql-pv
    NAME       CAPACITY   ACCESSMODES   RECLAIMPOLICY   STATUS      CLAIM     REASON    AGE
    mysql-pv   5Gi        RWO           Recycle         Available                       3s
    
  1. 創(chuàng)建mysql-pvc.yaml

    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: mysql-pvc
      namespace: default
    spec:
      accessModes:
        - ReadWriteOnce
      resources:
        requests:
          storage: 1Gi
    
    $kubectl create -f mysql-pvc.yaml
    NAME            STATUS    VOLUME     CAPACITY   ACCESSMODES   AGE
    pvc/mysql-pvc   Bound     mysql-pv   5Gi        RWO           22s
    
    NAME          CAPACITY   ACCESSMODES   RECLAIMPOLICY   STATUS    CLAIM               REASON    AGE
    pv/mysql-pv   5Gi        RWO           Recycle         Bound     default/mysql-pvc             2m
    
    
  1. 修改mysql-rc.yaml(參見無腦系列-最小集群搭建)

    apiVersion: v1
    kind: ReplicationController
    metadata:
      name: mysql-rc
    spec:
      replicas: 1
      selector:
        app: mysql-pod
      template:
        metadata:
          labels:
            app: mysql-pod
        spec:
          containers:
          - name: mysql
            image: mysql:5.6
            ports:
            - containerPort: 3306
            env:
            - name: MYSQL_ROOT_PASSWORD
              value: "123"
            volumeMounts:
            - mountPath: "/var/lib/mysql"
              name: mysql-data
          volumes:
          - name: mysql-data
            persistentVolumeClaim:
              claimName: mysql-pvc
    
    $kubectl create -f mysql-rc.yaml
    $kubectl get rc mysql-rc
    NAME       DESIRED   CURRENT   READY     AGE       CONTAINER(S)   IMAGE(S)    SELECTOR
    mysql-rc   1         1         1         16s       mysql          mysql:5.6   app=mysql-pod
    

4. 出現(xiàn)的錯(cuò)誤

  1. mysql-rc創(chuàng)建不成功,報(bào)告“changing ownership of '/var/lib/mysql/': Operation not permitted”

    解答:請參考NFS的export部分掂之,掛載給MySQL的目錄抗俄,一定要加入no_root_squash,fsid=0。不然就會(huì)報(bào)告上面的錯(cuò)誤
    如果已經(jīng)做了調(diào)整世舰,請重啟nfs服務(wù)动雹,刪除mysql-rc。重新創(chuàng)建

  1. 診斷技巧

    mysql-rc創(chuàng)建不成功跟压,xxxx代表運(yùn)行時(shí)的編號

    $kubectl describe pod mysql-rc-xxxx
    
    $kubectl log mysql-rc-xxxx
    
    

    查看pod所在機(jī)器胰蝠、錯(cuò)誤日志
    進(jìn)入pod所在Node,執(zhí)行df命令查看掛載是否成功

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末震蒋,一起剝皮案震驚了整個(gè)濱河市茸塞,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌查剖,老刑警劉巖钾虐,帶你破解...
    沈念sama閱讀 210,978評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異梗搅,居然都是意外死亡禾唁,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,954評論 2 384
  • 文/潘曉璐 我一進(jìn)店門无切,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人丐枉,你說我怎么就攤上這事哆键。” “怎么了瘦锹?”我有些...
    開封第一講書人閱讀 156,623評論 0 345
  • 文/不壞的土叔 我叫張陵籍嘹,是天一觀的道長闪盔。 經(jīng)常有香客問我,道長辱士,這世上最難降的妖魔是什么泪掀? 我笑而不...
    開封第一講書人閱讀 56,324評論 1 282
  • 正文 為了忘掉前任,我火速辦了婚禮颂碘,結(jié)果婚禮上异赫,老公的妹妹穿的比我還像新娘。我一直安慰自己头岔,他們只是感情好塔拳,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,390評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著峡竣,像睡著了一般靠抑。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上适掰,一...
    開封第一講書人閱讀 49,741評論 1 289
  • 那天颂碧,我揣著相機(jī)與錄音,去河邊找鬼类浪。 笑死载城,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的戚宦。 我是一名探鬼主播个曙,決...
    沈念sama閱讀 38,892評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼受楼!你這毒婦竟也來了垦搬?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,655評論 0 266
  • 序言:老撾萬榮一對情侶失蹤艳汽,失蹤者是張志新(化名)和其女友劉穎猴贰,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體河狐,經(jīng)...
    沈念sama閱讀 44,104評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡米绕,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了馋艺。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片栅干。...
    茶點(diǎn)故事閱讀 38,569評論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖捐祠,靈堂內(nèi)的尸體忽然破棺而出碱鳞,到底是詐尸還是另有隱情,我是刑警寧澤踱蛀,帶...
    沈念sama閱讀 34,254評論 4 328
  • 正文 年R本政府宣布窿给,位于F島的核電站贵白,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏崩泡。R本人自食惡果不足惜禁荒,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,834評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望角撞。 院中可真熱鬧呛伴,春花似錦、人聲如沸靴寂。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,725評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽百炬。三九已至褐隆,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間剖踊,已是汗流浹背庶弃。 一陣腳步聲響...
    開封第一講書人閱讀 31,950評論 1 264
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留德澈,地道東北人歇攻。 一個(gè)月前我還...
    沈念sama閱讀 46,260評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像梆造,于是被迫代替她去往敵國和親缴守。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,446評論 2 348

推薦閱讀更多精彩內(nèi)容