在CentOS 7上掛載CephFS


Ceph是一個開源存儲平台,它提供高性能,可靠性和可伸縮性。它是一個免費的分布式存儲系統,可為對象,塊和文件級存儲提供接口,而不會出現單點故障。

這是Ceph教程系列的第三部分。第一部分中,我向您展示了如何在CentOS7上構建具有多個節點的“ Ceph集群”。第二部分  是一個指南,說明如何在CentOS的7使用頭孢作為塊設備在第三部分,我將告訴你如何安裝Ceph的是作為客戶端在CentOS 7的文件系統。

 

先決條件

 

 

步驟1-配置Client2節點

在第一步中,我們將進行客戶端的基礎安裝。這與我們在其他群集節點上使用的過程相同。我們將在盒子上創建一個名為cephuser的新用戶,將時間與ntpdate同步,為cephuser配置sudo無密碼等。所以讓我們開始吧...

以SSH身份作為root用戶連接到client2節點:

ssh root@client2

我們以root用戶權限登錄到服務器,現在我們可以創建新的cephuser。

useradd -m -d /home/cephuser cephuser
passwd cephuser
TYPE YOUR NEW PASSWORD

創建新用戶后,通過在sudoers目錄中創建新的配置文件為用戶啟用sudo無密碼。

echo "cephuser ALL = (root) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/cephuser
sed -i s'/Defaults requiretty/#Defaults requiretty'/g /etc/sudoers
chmod 0440 /etc/sudoers.d/cephuser

接下來,安裝NTP,ntpdate命令行工具和open-vm工具。然后,使用ntpdate更新並同步系統時間。

yum install -y open-vm-tools
yum install -y ntp ntpdate ntp-doc
ntpdate 0.us.pool.ntp.org
hwclock --systohc
systemctl enable ntpd.service
systemctl start ntpd.service

禁用SELinux並編輯主機的文件。

sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
vim /etc/hosts

粘貼主機配置如下:

10.0.15.10        ceph-admin
10.0.15.11        mon1
10.0.15.21        osd1
10.0.15.22        osd2
10.0.15.23        osd3
10.0.15.15        client
10.0.15.16        client2

保存主機文件並退出編輯器。現在嘗試ping ceph-admin節點以測試連接和主機名設置。

ping -c 3 ceph-admin

您應該看到結果為ceph-admin節點IP地址。

 

第2步-在Client2節點上安裝Ceph Common Utilities

可以從Ceph存儲庫中安裝ceph-common軟件包。它包含用於安裝Ceph存儲群集並與之交互的Ceph實用程序。

在繼續安裝ceph-common軟件包之前,我們必須添加epel-repository和Ceph存儲庫。

sudo yum -y install epel-release
sudo rpm -Uhv http://download.ceph.com/rpm-jewel/el7/noarch/ceph-release-1-1.el7.noarch.rpm

更新系統並安裝Ceph通用實用程序。

sudo yum -y update
sudo yum -y install ceph-common

接下來,我們必須在ceph-admin節點上添加配置。

 

第3步-配置Ceph-admin節點

在此步驟中,我們將配置集群,以便我們可以使用ssh密鑰(無需密碼)從admin連接到client2節點。

以root用戶身份連接到ceph-admin節點,然后使用su登錄到cephuser。

ssh root@ceph-admin
su - cephuser

編輯ssh配置文件並定義一個新的client2配置部分。

vim ~/.ssh/config

在文件末尾,將以下配置粘貼:

Host client2
    Hostname client2
    User cephuser

接下來,將客戶端節點的主機配置行添加到ceph-admin節點上的“ / etc / hosts”文件中。

sudo vim /etc/hosts

將主機配置粘貼到文件末尾。

10.0.15.16      client2

保存主機文件並退出編輯器。

現在,將ceph-admin節點的ssh密鑰添加到client2節點。

ssh-keyscan client2 >> ~/.ssh/known_hosts
ssh-copy-id client2
TYPE THE client2 PASSWORD

ceph-admin密鑰已添加。現在,我們無需使用ceph-admin節點的密碼即可訪問client2節點。

ssh client2

將客戶端添加到ceph管理節點

 

第4步-創建Ceph MetaData服務器

如果要運行和掛載CephFS,則需要一個ceph元數據服務器(Ceph MDS)。Ceph MDS在OSD節點上運行。我們可以使用ceph-admin節點中的ceph-deploy命令將Ceph MDS安裝到OSD節點。

登錄到ceph-admin節點並成為cephuser。

ssh root@ceph-admin
su - cephuser

轉到集群目錄並運行ceph-deploy命令以創建新的ceph元數據服務器(Ceph MDS)。我將使用“ osd1”節點作為元數據服務器。

cd cluster/
ceph-deploy mds create osd1

創建Ceph MDS服務器

在osd1節點上創建MDS服務器后,我們必須使用ssh連接到該節點。

ssh osd1

接下來,為MDS服務器創建新的池,至少我們需要2個池-cephfs_data和cephfs_metadata。

在“ osd1”節點上創建新池。

ceph osd pool create cephfs_data 128
ceph osd pool create cephfs_metadata 128

新池已准備就緒。現在,我們可以使用命名池創建新文件系統:cephfs_data和cephfs_metadata。

ceph fs new cephfs cephfs_metadata cephfs_data

cephfs =文件系統名稱。

完成此步驟而沒有錯誤時,請使用以下命令檢查MDS服務器。

檢查MDS服務器列表:

ceph fs ls

現在您可以看到文件系統名稱為“ cephfs”,元數據池為“ cephfs_metadata”,數據池為“ cephfs_data”。

顯示MDS狀態:

ceph mds stat

在繼續操作之前,請確保MDS已啟動並處於活動狀態。

MDS服務器已創建並處於活動狀態

 

第5步-使用內核驅動程序掛載CephFS

Ceph MDS服務器已在“ osd1”節點上創建。現在我們可以使用CephFS。在此步驟中,我們將使用mount命令將CephFS作為文件系統安裝在client2節點上。

在開始下一步之前,我們需要從client2節點上的ceph存儲庫中安裝ceph-fuse。

sudo yum -y install ceph-fuse

安裝完成后,復制用戶密鑰。在我們的默認配置中,啟用了cephx身份驗證。默認用戶為“ admin”。

使用scp命令將密鑰從MDS服務器節點“ osd1”復制到client2節點,然后更改密鑰的許可權。

ssh cephuser@osd1 'sudo ceph-authtool -p /etc/ceph/ceph.client.admin.keyring' > ceph.key
chmod 600 ceph.key

使用內核驅動程序mount命令掛載CephFS

接下來,創建一個新的cephfs目錄並將CephFS掛載到該目錄。

sudo mkdir -p /mnt/cephfs
sudo mount -t ceph mon1:6789:/ /mnt/cephfs -o name=admin,secretfile=ceph.key

注意:


MDS節點osd1中的默認用戶名= admin secretfile = ceph.key

您將在列表中看到一個新的類型為'ceph'的文件系統。

sudo df -hT

使用內核驅動程序掛載命令的CephFS掛載   

要卸載文件系統,請使用umount命令實用程序。

umount /mnt/cephfs

卸載CephFS

 

步驟6-將CephFS掛載為保險絲

成功將CephFS掛載為文件系統后,我們將CephFS掛載為Fuse(USErspace中的文件系統)。對於此設置,我們需要從監視節點“ mon1”復制配置文件“ ceph.conf”和密鑰。

在client2節點上創建一個新的ceph目錄,並復制配置文件和密鑰。

sudo mkdir -p /etc/ceph/
sudo scp root@mon1:/etc/ceph/ceph.conf /etc/ceph/ceph.conf
sudo scp root@mon1:/etc/ceph/ceph.client.admin.keyring /etc/ceph/ceph.client.admin.keyring

更改文件的權限。

sudo chmod 644 /etc/ceph/ceph.conf
sudo chmod 644 /etc/ceph/ceph.client.admin.keyring

接下來,創建一個新的保險絲目錄,並將CephFS作為Fuse掛載到“ / mnt / fuse”目錄。

sudo mkdir -p /mnt/fuse
sudo ceph-fuse -m mon1:6789 /mnt/fuse

將CephFS掛載為FUSE

確保沒有錯誤,並檢查是否已安裝CephFS。

sudo df -hT

要卸載CephFS Fuse,請使用kill命令。

sudo ps -aux | grep ceph-fuse
kill -2 PID

用保險絲卸下CphFS

 

步驟7-使用fstab掛載CephFS

在此步驟中,我們將使用fstab永久掛載CephFS。我們將編輯/ etc / fstab並使用mount命令使用內核驅動程序添加用於安裝CephFS的配置。

編輯fstab文件。

sudo vim /etc/fstab

將以下配置粘貼到文件末尾:

mon1:6789:/     /mnt/cephfs     ceph        name=admin,secretkey=/home/cephuser/ceph.key,_netdev,noatime    0   0

保存文件並退出vim。

使用mount -a命令從fstab掛載所有磁盤,然后列出所有可用磁盤。

sudo mount -a
sudo df -hT

最后,重新引導系統並檢查可用磁盤,以確保配置是重新引導安全的。

reboot
sudo df -hT

您會看到CephFS已通過fstab自動掛載。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM