前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在CentOS 7上挂载CephFS

在CentOS 7上挂载CephFS

作者头像
sunsky
发布2020-08-20 17:48:52
2.3K0
发布2020-08-20 17:48:52
举报
文章被收录于专栏:sunskysunskysunsky

在CentOS 7上挂载CephFS

Ceph是一个开源存储平台,它提供高性能,可靠性和可伸缩性。它是一个免费的分布式存储系统,可为对象,块和文件级存储提供接口,而不会出现单点故障。

这是Ceph教程系列的第三部分。在第一部分中,我向您展示了如何在CentOS7上构建具有多个节点的“ Ceph集群”。在第二部分  是一个指南,说明如何在CentOS的7使用头孢作为块设备在第三部分,我将告诉你如何安装Ceph的是作为客户端在CentOS 7的文件系统。

先决条件

  • Ceph集群-1个Ceph-admin节点,1个Moinitor节点(ceph-mon),3个Ceph-osd节点(请参阅第1部分)。
  • Client2-CentOS 7服务器(请参阅第2部分)。
  • 根特权

步骤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  /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
.0.15.11        mon1
.0.15.21        osd1
.0.15.22        osd2
.0.15.23        osd3
.0.15.15        client
.0.15.16        client2

保存主机文件并退出编辑器。现在尝试ping ceph-admin节点以测试连接和主机名设置。

ping -c  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--.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

第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

在osd1节点上创建MDS服务器后,我们必须使用ssh连接到该节点。

ssh osd1

接下来,为MDS服务器创建新的池,至少我们需要2个池-cephfs_data和cephfs_metadata。

在“ osd1”节点上创建新池。

ceph osd pool create cephfs_data 
ceph osd pool create cephfs_metadata 

新池已准备就绪。现在,我们可以使用命名池创建新文件系统: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已启动并处于活动状态。

第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  ceph.key

接下来,创建一个新的cephfs目录并将CephFS挂载到该目录。

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

注意:

MDS节点osd1中的默认用户名= admin secretfile = ceph.key

您将在列表中看到一个新的类型为'ceph'的文件系统。

sudo df -hT

要卸载文件系统,请使用umount命令实用程序。

umount /mnt/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  /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: /mnt/fuse

确保没有错误,并检查是否已安装CephFS。

sudo df -hT

要卸载CephFS Fuse,请使用kill命令。

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

步骤7-使用fstab挂载CephFS

在此步骤中,我们将使用fstab永久挂载CephFS。我们将编辑/ etc / fstab并使用mount命令使用内核驱动程序添加用于安装CephFS的配置。

编辑fstab文件。

sudo vim /etc/fstab

将以下配置粘贴到文件末尾:

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

保存文件并退出vim。

使用mount -a命令从fstab挂载所有磁盘,然后列出所有可用磁盘。

sudo mount -a
sudo df -hT

最后,重新引导系统并检查可用磁盘,以确保配置是重新引导安全的。

reboot
sudo df -hT

您会看到CephFS已通过fstab自动挂载。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-01-17 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 在CentOS 7上挂载CephFS
    • 步骤1-配置Client2节点
      • 第2步-在Client2节点上安装Ceph Common Utilities
        • 第3步-配置Ceph-admin节点
          • 第4步-创建Ceph MetaData服务器
            • 第5步-使用内核驱动程序挂载CephFS
              • 步骤6-将CephFS挂载为保险丝
                • 步骤7-使用fstab挂载CephFS
                相关产品与服务
                命令行工具
                腾讯云命令行工具 TCCLI 是管理腾讯云资源的统一工具。使用腾讯云命令行工具,您可以快速调用腾讯云 API 来管理您的腾讯云资源。此外,您还可以基于腾讯云的命令行工具来做自动化和脚本处理,以更多样的方式进行组合和重用。
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档