第八章 helm 輕鬆完爆 gitlab nfs 存儲

注意:可在我 百度網盤 直接下載 helm、minio 以及修改好的 gitlab、nginx-ingress 資源包nginx


本系列文章:git

第一章:helm 一分鐘輕鬆完爆api

第二章:helm 輕鬆完爆公共倉庫網絡

第三章:helm 輕鬆完爆私有倉庫async

第四章:helm 輕鬆完爆 chartide

第五章:helm 輕鬆完爆 releasegitlab

第六章:helm 輕鬆完爆 gitlab性能

第七章:helm 輕鬆完爆 nginx-ingressspa

第八章:helm 輕鬆完爆 gitlab nfs 存儲orm

目錄

1 前言

2 nfs 服務端安裝和配置

    2.1 安裝 nfs-utils

    2.2 設置開機自啓

    2.3 啓動 nfs 服務

    2.4 建立共享目錄

    2.5 配置 nfs 訪問規則

    2.6 從新加載 nfs 服務

    2.7 查看 nfs 服務導出列表

3 nfs 客戶端安裝和配置

    3.1 安裝 nfs-utils

    3.2 建立掛載目錄

    3.3 設置開機自掛載

    3.4 啓動掛載

    3.5 驗證掛載

4 建立 nfs pv


1 前言

        nfs 是 network file system 簡稱,提供網絡文件系統功能。咱們在第六章安裝 gitlab 時爲了簡便使用了本地存儲類型(hostpath),這節將本地存儲換成 nfs 存儲,緣由在於一旦 gitlab pod 重啓被調度到其餘節點,原有節點上的文件並不會同步到新的節點上。這樣會形成文件、數據的不一致。因此這裏採用 nfs 集中式文件存儲方案。

        安裝 nfs 服務以前,首先關閉防火牆。

systemctl stop firewalld


2 nfs 服務端安裝和配置

        本人 nfs 服務端所在主機IP爲: 10.110.101.106。看官可根據本身的實際狀況修改。

2.1 安裝 nfs-utils

        nfs 服務端安裝須要 nfs-utils 程序包。

yum install nfs-utils -y

2.2 設置開機自啓

systemctl enable rpcbind && systemctl enable nfs-server

2.3 啓動 nfs 服務

systemctl start rpcbind && systemctl start nfs-server

2.4 建立共享目錄

mkdir -p /data/nfs/gitlab

2.5 配置 nfs 訪問規則

        編輯 /etc/exports 文件,設置 nfs 訪問規則,容許 10.110.0.0/16 網段的主機讀寫 /data/nfs/gitlab 目錄。

/data/nfs/gitlab 10.110.0.0/16(rw,sync,no_root_squash)

        參數說明:

參數 做用
ro read-only
rw read-write
root_squash nfs客戶端以root管理員身份訪問nfs服務端時,映射爲nfs服務端所在主機的匿名用戶(權限會受限)
no_root_squash nfs客戶端以root管理員身份訪問nfs服務端時,映射爲nfs服務端所在主機的root用戶(權限不會受限)
sync 數據同時寫入內存和磁盤。至關於同步雙寫,由於同時要寫內存和磁盤,因此性能會受損,可是數據一致性得以保證,不會丟失
async 數據會優先寫入內存,而後再寫入磁盤。由於寫入到內存的數據並不會馬上把數據同步到硬盤中,這時若是斷電就會致使部分數據丟失,可是性能卻會比sync更有效

2.6 從新加載 nfs 服務

systemctl reload nfs

2.7 查看 nfs 服務導出列表

showmount -e

spacer.gifclipboard1.png


3 nfs 客戶端安裝和配置

3.1 安裝 nfs-utils

        由於 nfs-utils 包中同時提供了客戶端和服務端,因此在客戶端安裝時,也須要安裝 nfs-utils 程序包。

yum install nfs-utils -y

3.2 建立掛載目錄

mkdir /data/gitlab -p

3.3 設置開機自掛載

        編輯 /etc/fstab,設置開機掛載 nfs

## 將nfs服務端的 /data/nfs/gitlab 目錄掛載到本機 /data/gitlab 目錄

echo "10.110.101.106:/data/nfs/gitlab /data/gitlab nfs defaults 0 0" >> /etc/fstab

3.4 啓動掛載

mount -a

3.5 驗證掛載

df -h | grep -i nfs

clipboard2.png


4 建立 nfs pv

        nfs 跟 hostpath 類型的 pv 相比並無什麼不一樣。只是修改存儲類型便可:

apiVersion: v1

kind: PersistentVolume

metadata:

name: gitlab-etc

spec:

capacity:

storage: 1Gi

volumeMode: Filesystem

accessModes:

-  ReadWriteOnce

persistentVolumeReclaimPolicy: Retain

nfs:

  server: 10.110.101.106

  path: /data/nfs/gitlab

相關文章
相關標籤/搜索