SpringCloudAlibaba云商场-分布式文件存储学习(二)

121 阅读3分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第12天,点击查看活动详情

1.Ceph集群搭建

Ceph集群搭建结构图.jpg Ceph集群结构如上图,server1作为主节点(Dashbaord、mon、mds、rgw、mgr、osd),server2和server3作为子节点(mon、mds、rgw、mgr、osd)。

节点中的信息说明:

dashbaord:Ceph可视化管理界面。
rgw:RADOSGW,Ceph对象网关,使客户端能够利用标准对象存储API来访问Ceph集群。
mgr:ceph-mgr,主要目标实现 ceph 集群的管理,为外界提供统一的入口。

节点信息:
server1:192.168.19.131
server2:192.168.19.132
server3:192.168.19.133

1.1准备工作

1)机器名称修改(131、132、133都执行) 我们给每台机器一个别名192.168.19.131->CENTOS1,192.168.19.132->CENTOS2,192.168.19.133->CENTOS3。

修改192.168.19.131/etc/hostname,添加CENTOS1 修改192.168.19.132/etc/hostname,添加CENTOS2(同上)

修改192.168.19.133/etc/hostname,添加CENTOS3(同上)

配置名字解析IP:分别修改131132133/etc/hosts文件,添加如下映射:

192.168.19.131 CENTOS1
192.168.19.132 CENTOS2
192.168.19.133 CENTOS3

2)YUM源修改(131、132、133都执行) 这里采用清华镜像源,提升加载速度。

vi /etc/yum.repos.d/ceph.repo,添加如下内容:

[Ceph]
name=Ceph packages for $basearch
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-mimic/el7/x86_64/
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://download.ceph.com/keys/release.asc

[Ceph-noarch]
name=Ceph noarch packages
# 清华源
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-mimic/el7/noarch/
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://download.ceph.com/keys/release.asc

[ceph-source]
name=Ceph source packages
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-mimic/el7/SRPMS/
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://download.ceph.com/keys/release.asc

3)ceph与ceph-deploy安装(131) 更新yum源,并安装cephceph-deploy,这个过程非常耗时间,执行如下命令:

yum update && yum -y install ceph ceph-deploy

注意:yum updateyum -y install python2-pip最好在每台机器都更新下yum。

安装过程中, 如果执行ceph-deploy出现ImportError: No module named pkg_resources,则需要安装python2-pip,执行yum -y install python2-pip安装即可。 如果遇到如下错误,安装下epel即可。

1603290089803.png 操作命令:(最好先执行该命令)

yum install epel-release -y
 
yum install lttng-ust -y

4)NTP时间同步工具(131执行) 为了保证时间同步,我们需要安装NTP时间同步工具:

yum install ntp ntpdate ntp-doc -y

设为开机启动:

systemctl enable ntpd

设置每隔1小时自动校准同步。编辑 vi /etc/rc.d/rc.local 追加:

/usr/sbin/ntpdate ntp1.aliyun.com > /dev/null 2>&1; /sbin/hwclock -w

配置定时任务, 执行crontab -e 加入:

0 */1 * * * ntpdate ntp1.aliyun.com > /dev/null 2>&1; /sbin/hwclock -w

5)免密配置(131、132、133都执行) 官方建议不用系统内置用户, 创建名为cuser用户, 密码也设为cuser:

useradd -d /home/cuser -m cuser
passwd cuser

设置sudo权限:(免密+只读权限)

echo "cuser ALL = (root) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/cuser
sudo chmod 0440 /etc/sudoers.d/cuser

6)生成秘钥:(131执行) 切换用户: su cuser

执行ssh-keygen,一直按默认提示点击生成RSA密钥信息。 分发密钥至各机器节点

ssh-copy-id cuser@CENTOS1
ssh-copy-id cuser@CENTOS2
ssh-copy-id cuser@CENTOS3

修改管理节点上的 ~/.ssh/config (当前用户目录下的.ssh/config)文件, 简化SSH远程连接时的输入信息:

管理节点是会有root和cuser多个用户, ssh远程连接默认会以当前用户身份进行登陆, 如果我们是root身份进行远程连接, 还是需要输入密码,我们可以修改配置 使用root远程连接时也不用输入密码。

切换root身份,

su root

编辑config

vi ~/.ssh/config

添加如下内容:

Host CENTOS1
   Hostname CENTOS1
   User cuser
Host CENTOS2
   Hostname CENTOS2
   User cuser
Host CENTOS3
   Hostname CENTOS3
   User cuser

修改文件权限:

chmod 600 ~/.ssh/config

禁用SELINUX:

vi /etc/selinux/config

SELINUX=disabled

总结:本篇主要介绍了一下Ceph集群搭前的准备工作。