CEPH环境搭建

网友投稿 268 2022-11-12

CEPH环境搭建

Ceph:1、它是一个分布式文件系统,可以提供块存储、文件系统存储和对象存储。但是文件存储还不非常成熟,不建议在生产环境中使用。应用的最多的形式是块存储。2、Ceph主要组件

OSD:对象存储设备,它是ceph中唯一的真正进行数据存储的组件。通常情况下,一个OSD进程绑定到一块物理磁盘。MON:Monitor监视器,跟踪整个集群的健康状态。它为每个ceph组件维护一个映射表。MON进程数目是奇数,如3、5、7……MDS:元数据服务器。为ceph文件系统存储提供元数据,如果不是文件系统存储则不需要。元数据:描述数据的数据。如一本书的出版社、页数、作者、出版时间等都是元数据。RADOS:可靠自主的分存式对象存储。RADOS保证CEPH中的各种数据都是对象形式,操持CEPH的一致性。RBD:为客户端提供块存储接口RADOS GW:为客户端提供对象存储接口CEPH FS:为客户端提供文件系统存储接口

CEPH环境搭建1、创建5台虚拟机node1.tedu.cn 192.168.4.1node2.tedu.cn 192.168.4.2node3.tedu.cn 192.168.4.3node4.tedu.cn 192.168.4.4client.tedu.cn 192.168.4.102、启动虚机[root@room8pc16 kvms_ansi]# for vm in rh7_node{1..5}

dovirsh start $vmdone3、在物理主机上配置CEPH的YUM源[root@room8pc16 cluster]# mkdir /var/ftp/ceph/[root@room8pc16 cluster]# tail -1 /etc/fstab /ISO/rhcs2.0-rhosp9-20161113-x86_64.iso /var/ftp/ceph iso9660 defaults 0 0[root@room8pc16 cluster]# mount -a[root@room8pc16 ~]# vim server.repo [rhel7.4]name=rhel7.4baseurl=ftp://192.168.4.254/rhel7.4enabled=1gpgcheck=0[mon]name=monbaseurl=ftp://192.168.4.254/ceph/rhceph-2.0-rhel-7-x86_64/MONenabled=1gpgcheck=0[osd]name=osdbaseurl=ftp://192.168.4.254/ceph/rhceph-2.0-rhel-7-x86_64/OSDenabled=1gpgcheck=0[tools]name=toolsbaseurl=ftp://192.168.4.254/ceph/rhceph-2.0-rhel-7-x86_64/Toolsenabled=1gpgcheck=04、CEPH集群中有很多节点,逐台管理效率低下,还可能出现错误,所以可以找一台主机当作管理节点,由它统一管理所有主机。我们保用node1作为管理节点。5、为了使得管理节点能够方便的管理,先创建免密登陆(1)通过名称访问各台主机,配置名称解析[root@node1 ~]# for i in {1..4}doecho -e "192.168.4.$i\tnode$i.tedu.cn\tnode$i" >> /etc/hostsdone[root@node1 ~]# echo -e "192.168.4.10\tclient.tedu.cn\tclient" >> /etc/hosts(2)生成密钥对,非交互模式生成[root@node1 ~]# ssh-keygen -f /root/.ssh/id_rsa -N ""(3)第一交ssh到远程主机会被询问(yes/no)?。可以先将远程主机的身份信息,保存到本地[root@node1 ~]# ssh-keyscan 192.168.4.{1..4} >> /root/.ssh/known_hosts [root@node1 ~]# ssh-keyscan 192.168.4.10 >> /root/.ssh/known_hosts[root@node1 ~]# ssh-keyscan node{1..4} >> /root/.ssh/known_hosts[root@node1 ~]# ssh-keyscan client >> /root/.ssh/known_hosts(4)拷贝密钥到远程主机[root@node1 ~]# for ip in 192.168.4.{1..4}dossh-copy-id -i $ipdone[root@node1 ~]# ssh-copy-id -i 192.168.4.10(5)把hosts文件拷贝到各台主机[root@node1 ~]# for host in node{2..4}doscp /etc/hosts $host:/etc/done[root@node1 ~]# scp /etc/hosts client:/etc6、将client作为NTP服务器NTP:网络时间协议,udp123端口。用于同步时间。精确时间的确定:原子钟。全球时间不是一样的,因为地球是圆的,所以将地球按经度,每隔15度角划分一个时区,一共24时区。中国采用东八区时间。(1)在client上安装软件包[root@client ~]# yum install -y chrony(2)修改配置[root@client ~]# vim /etc/chrony.conf allow 192.168.4.0/24local stratum 10(3)启动服务[root@client ~]# systemctl restart chronyd; systemctl enable chronyd(4)将其他主机作为客户端[root@node1 ~]# vim /etc/chrony.conf server 192.168.4.10 iburst #其他3行server开头的删除[root@node1 ~]# for ip in 192.168.4.{2..4}doscp /etc/chrony.conf $ip:/etc/done[root@node1 ~]# for ip in 192.168.4.{1..4}dossh $ip systemctl restart chronyddone(5)测试[root@node1 ~]# date -s "2018-06-20 12:00:00"[root@node1 ~]# ntpdate 192.168.4.10 跟192.168.4.10同步时钟[root@node1 ~]# date 时间已同步7、在node1~node3上各添加3块硬盘

8、在node1节点上安装ceph部署工具[root@node1 ~]# yum install -y ceph-deploy9、在node1节点上为ceph创建工作目录,目录名自定义[root@node1 ~]# mkdir ceph_conf[root@node1 ~]# cd ceph_conf10、生成ceph安装所必须的配置文件[root@node1 ceph_conf]# ceph-deploy new node1 node2 node3[root@node1 ceph_conf]# ls11、安装ceph集群[root@node1 ceph_conf]# ceph-deploy install node1 node2 node312、初始化所有节点的MON服务[root@node1 ceph_conf]# ceph-deploy mon create-initial

配置CEPH集群1、在node1~node3节点上对vdb进行分区,将vdb的分区用于日志[root@node1 ceph_conf]# for host in node{1..3}

dossh $host parted /dev/vdb mklabel gptdone[root@node1 ceph_conf]# for host in node{1..3}; do ssh $host parted /dev/vdb mkpart primary 1024kB 50%; done[root@node1 ceph_conf]# for host in node{1..3}; do ssh $host parted /dev/vdb mkpart primary 50% 100%; done[root@node1 ceph_conf]# for host in node{1..3}; do ssh $host lsblk; done [root@node1 ceph_conf]# for host in node{1..3}; do ssh $host chown ceph.ceph /dev/vdb?; done # 系统重启后属主属组又变回root.disk了。

配置udev,使得磁盘属主属组在reboot后,仍然是ceph[root@node3 ~]# vim /etc/udev/rules.d/90-mydisk.rulesACTION=="add", KERNEL=="vdb[12]", OWNER="ceph", GROUP="ceph"

2、创建OSD磁盘,在node1上执行(1)初始化磁盘[root@node1 ceph_conf]# for host in node{1..3}

doceph-deploy disk zap $host:vdc $host:vdddone(2)创建OSD,将数据的日志区指定为vdb[root@node1 ceph_conf]# for host in node{1..3}doceph-deploy osd create $host:vdc:/dev/vdb1 $host:vdd:/dev/vdb2done如果出现run ‘gatherkeys’的错误提示,执行以下命令[root@node1 ceph_conf]# ceph-deploy gatherkeys node1 node2 node3(3)查看状态[root@node1 ceph_conf]# ceph -s 如果正常将显示HEATH_OK如果状态是HEALTH_ERR,就重启服务,如下:[root@node1 ceph_conf]# for host in node{1..3}; do ssh $host systemctl restart ceph*.service ceph*.target ; done

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:log4j2使用filter过滤日志方式
下一篇:9针rs232串口接线图以及接线方法
相关文章

 发表评论

暂时没有评论,来抢沙发吧~