轉載自
https://www.howtoing.com/high-availability-storage-with-glusterfs-on-ubuntu-1804
已驗證此教程可用,並作少許修改
Glusterfs是一個可擴展的網絡文件系統,具有擴展到幾PB的能力並可處理數千個客戶端。 它是一個開源和分布式文件系統,可將多個服務器的磁盤存儲資源設置為單個命名空間。 它適用於數據密集型任務,如雲存儲和數據媒體流。
在本教程中,我將展示如何在Ubuntu 18.04 LTS(Bionic Beaver)上使用GlusterFS設置高可用性存儲服務器。 我們將使用3個ubuntu服務器,1個服務器作為客戶端,另外2個作為存儲。 每個存儲服務器都是另一個存儲服務器的鏡像,文件將在兩個存儲服務器之間復制。
先決條件
- 3台Ubuntu 18.04服務器
- 10.0.15.10 - gfs01
- 10.0.15.11 - gfs02
- 10.0.15.12 - client01
- 根權限
我們將要做什么?
- GlusterFS預安裝
- 安裝GlusterFS服務器
- 配置GlusterFS服務器
- 設置GlusterFS客戶端
- 測試復制/鏡像
第1步 - GlusterFS預安裝
在所有服務器上安裝glusterfs之前,我們需要做的第一步是配置主機的文件並將GlusterFS存儲庫添加到每個服務器。
配置主機文件
使用“sudo su”命令登錄每個服務器並獲取root訪問權限,然后編輯“/ etc / hosts”文件。(每個服務器都需要修改)
vim /etc/hosts
粘貼主機配置如下。
10.0.15.10 gfs01 10.0.15.11 gfs02 10.0.15.12 client01
保存並退出。
現在使用主機名ping每個服務器,如下所示。
ping -c 3 gfs01
ping -c 3 gfs02
ping -c 3 client01
每個主機名將解析為每個服務器IP地址。
添加GlusterFS存儲庫
將software-properties-common軟件包安裝到系統中。
sudo apt install software-properties-common -y
通過運行以下命令添加glusterfs密鑰和存儲庫。
sudo add-apt-repository ppa:gluster/glusterfs-7
該命令將更新所有存儲庫。 我們已經將glusterfs存儲庫添加到所有系統中。
第2步 - 安裝GlusterFS服務器
在此步驟中,我們將在'gfs01'和'gfs02'服務器上安裝glusterfs服務器。
使用apt命令安裝glusterfs-server。
sudo apt install glusterfs-server -y
現在啟動glusterd服務並使其在系統引導時每次啟動。
sudo systemctl start glusterd
sudo systemctl enable glusterd
Glusterfs服務器現在已在'gfs01'和'gfs02'服務器上運行。
檢查服務和已安裝的軟件版本。
systemctl status glusterd
glusterfsd --version
第3步 - 配置GlusterFS服務器
Glusterd服務現已啟動並運行,我們要做的下一步是通過創建可信存儲池並創建分布式glusterfs卷來配置這些服務器。
創建可信存儲池
從'gfs01'服務器,我們需要將'gfs02'服務器添加到glusterfs存儲池。
運行以下命令。
gluster peer probe gfs02
現在我們將看到結果'peer probe:success',並且我們已將'gfs02'服務器添加到存儲可信池中。
使用以下命令檢查存儲池狀態和列表。
gluster peer status
gluster pool list
您將看到'gfs02'服務器已連接到對等集群,它位於池列表中。
設置分布式GlusterFS卷
創建可信存儲池后,我們將創建一個新的分布式glusterfs卷。 我們將根據系統目錄創建新的glusterfs卷。
注意:
- 對於服務器生產,建議使用不同的分區創建glusterfs卷,而不是使用系統目錄。
在每個bot'gfs01'和'gfs02'服務器上創建一個新目錄'/ glusterfs / distributed'。
mkdir -p /glusterfs/distributed
然后從'gfs01'服務器創建名為'vol01'的分布式glusterfs卷,其中包含2個副本'gfs01'和'gfs02'。 (注意 force )
gluster volume create vol01 replica 2 transport tcp \
gfs01:/glusterfs/distributed \
gfs02:/glusterfs/distributed \
force
現在我們已經創建了分布式卷'vol01' - 啟動'vol01'並檢查卷信息。
gluster volume start vol01
gluster volume info vol01
以下是結果。
在這個階段,我們使用'replicate'類型創建了'vol01'卷,在'gfs01'和'gfs02'服務器上創建了2個磚塊。 所有數據將自動分發到每個副本服務器,我們已准備好安裝卷。
低於'gfs02'服務器的'vol01'音量信息。
第4步 - 設置GlusterFS客戶端
在這一步中,我們將glusterfs卷'vol01'掛載到Ubuntu客戶端,我們需要將glusterfs-client安裝到客戶端服務器。
使用apt命令將glusterfs-client安裝到Ubuntu系統。
sudo apt install glusterfs-client -y
現在,在glusterfs-client安裝完成后,創建一個新目錄'/ mnt / glusterfs'。
mkdir -p /mnt/glusterfs
並將分布式glusterfs卷'vol01'掛載到'/ mnt / glusterfs'目錄。
sudo mount -t glusterfs gfs01:/vol01 /mnt/glusterfs
現在檢查系統上的可用音量。
df -h /mnt/glusterfs
我們將glusterfs卷安裝到'/ mnt / glusterfs'目錄。
額外:
要將glusterfs永久掛載到Ubuntu客戶端系統,我們可以將卷添加到'/ etc / fstab'。
編輯'/ etc / fstab'配置文件。
vim /etc/fstab
並在下面粘貼配置。
gfs01:/vol01 /mnt/glusterfs glusterfs defaults,_netdev 0 0
保存並退出。
現在重新啟動服務器,當它在線時,我們將通過fstab自動安裝glusterfs卷'vol01'。
第5步 - 測試復制/鏡像
在此步驟中,我們將測試每個服務器節點上的數據鏡像。
將glusterfs卷'vol01'安裝到每個glusterfs服務器。
在'gfs01'服務器上。
mount -t glusterfs gfs01:/vol01 /mnt
在'gfs02'服務器上。
mount -t glusterfs gfs02:/vol01 /mnt
現在回到Ubuntu客戶端並轉到'/ mnt / glusterfs'目錄。
cd /mnt/glusterfs
使用touch命令創建一些文件。
touch file01 file02 file03
現在檢查每個 - 'gfs01'和'gfs02' - 服務器,我們將獲得我們從客戶端機器創建的所有文件。
cd /mnt/
ls -lah
這是'gfs01'服務器的結果。
這是'gfs02'服務器的結果。
我們從客戶端計算機創建的所有文件都將分發到所有glusterfs卷節點服務器。