七、Ceph分布式存储 Ceph以其先进的去中心化设计,成为了分布式块存储领域的佼佼者,它可以将多台服务器中的硬盘聚合成一个集群,对外可提供文件存储、块存储、对象存储等多种形式,Ceph的另一个特点是数据采用多副本方式存储,避免由于单点故障造成的业务中断和数据丢失。 7.1 Ceph的注意事项 Proxmox VE提供了简单易用的Ceph 安装向导,选中集群中的一个节点,然后在菜单树中打开Ceph菜单区,就可以开始安装Ceph 了。 安装向导有多个步骤,每个步骤都需要执行成功才可以完成Ceph 安装。开始安装操作后,向导会自动从Proxmox VE 的Ceph 软件源下载软件包并完成安装。 完成第一个步骤后,还需要创建配置。对每个集群,生成的配置信息会自动分发到其他节点,所以该操作只需要执行一次即可。 创建的配置包括以下信息: 1)Public Network 为避免影响集群通信等其他对网络延迟敏感的服务,也为了提高Ceph 性能,强烈建议为Ceph 准备一个专门的独立网络,将Ceph流量隔离开来。 2) Cluster Network 进一步,还可以设置Cluster Network,将OSD复制和心跳流量隔离出来。这将有效降低public network的负载,并有效改善大规模Ceph集群的性能。 7.2 初始化Ceph安装和配置 每个节点都需要安装Ceph,每个节点的Ceph安装基本相同,这里只演示节点1的Ceph安装。 第一步:在节点1界面中,选择“Ceph→Install Ceph”,点击“Install Ceph”按钮,如图47所示。 图47. Ceph安装向导 第二步:选择“设定→信息→Start octopus installation”,点击“Start octopus installation”按钮,如图48所示。 图48. 选择15.2版本进行安装 第三步:选择“设定→安装”,输入“Y”之后,按回车键,自动安装Ceph,如图49所示。 图49. 自动安装Ceph 第四步:安装完成之后,继续点击“下一步”按钮,安装成功之后,会提示安装成功的信息“installed ceph octopus successfully”,如图50所示。 图50. Ceph安装成功 第五步:完成Ceph集群配置信息,包括公共网络IP、集群网络IP等信息,如图51所示。 图51. Ceph集群配置 第六步:完成配置信息,Ceph安装成功,如图52所示。 图52. Ceph安装成功 第七步:查看配置信息,如图53所示。 图53. Ceph的配置信息 7.3 配置Ceph监视器 Ceph安装完成之后,节点1出现“监视器”和“管理员”中,还需要把节点2和节点3添加进来。在本项目中,监视器节点和管理员节点信息如图54所示。 图54. Ceph的配置信息 从图54中可以发现,监视器和管理网络使用的都是公共网络,没有使用集群网络。 第一步:在节点1的监视器中,创建另外两个节点的监视器,点击“创建”按钮,如图55所示。 图55. 创建节点2监视器 第二步:在节点1的管理员,创建另外两个节点的管理员,点击“创建”按钮,如图56所示。 图56. 创建节点2管理员 第三步:在Ceph监控界面查看节点的监视器和管理HA,选择“bve-node1→Ceph”,如图57所示。 Ceph的监控UI界面中,监视器和管理HA如图57中的红框所示: 图57. Ceph的监视器和管理HA界面 7.4 配置Ceph的OSD 由图3可知,各节点服务器支持八个盘位,其中sdc和sdd组成RAID1,作为系统盘使用,所以Ceph的OSD需要选择未做RAID的硬盘,每个节点的OSD只有6个。 本项目中,三个节点的Ceph的OSD磁盘配置信息如图58、图59所示。 图58. OSD配置信息-1 图59. OSD配置信息-2 第一步:创建节点1的OSD 从节点1中登录集群,在节点1中,选择“Ceph→OSD→创建:OSD”,在磁盘中,逐次添加sda、sdb、sde、sdf、sdg、sdh这6块没有被使用的磁盘,数据库磁盘和WAL磁盘保持默认即可,如图60所示。 图60. 创建OSD 注意,在本项目中,数据库磁盘(DB Disk)和WAL磁盘(WAL Disk)我都选择了默认方式,其实做一下硬盘规划会更好。 创建其他节点的OSD与节点1类似,这里不做详述。 第二步:也可以在配置信息的Crush Map查看集群的OSD配置 选择任意节点登录集群,选择“bve-node1→Ceph→配置→Crush Map”,从Crush Map中可以查看集群的OSD配置信息。 7.5 配置CephFS(可选) 7.5.1 创建CephFS 选择“bve-node1→Ceph→CephFS→创建CephFS”,选择默认值创建CephFS,创建之后如图64所示。 图64. 创建CephFS 7.5.2 元数据服务器配置 选择“bve-node1→Ceph→CephFS→元数据服务器→创建”,将节点1添加进来,如图65所示。 图65. 添加元数据服务器节点 将节点1添加到元数据服务器之后,再用同样的方法将节点2、节点3添加到元数据服务器之中去。 添加好元数据服务器节点之后,可以在Ceph监控界面看到元数据服务器的监控信息,如图67所示。 图67. 元数据服务器监控界面 7.6 配置Pools资源池 7.6.1 节点1配置Pools资源池 在Pools资源池配置之前,节点1的Pools界面如图68所示。 图68. 节点1的Pools界面 第一步:创建ssd_storage存储 选择“bve-node1→Ceph→Pools→创建”,点击“创建”按钮,创建名称为“ssd_storage”的存储,创建之后如图69所示。 图69. 创建ssd_storage存储 根据官方的文档,pg_num这个数值比较关键,如果不合适的话,Ceph会告警,官方建议: 若少于5个OSD, 设置pg_num为128。 5~10个OSD,设置pg_num为512。 10~50个OSD,设置pg_num为4096。 第二步:创建hdd_storage存储 选择“bve-node1→Ceph→Pools→创建”,点击“创建”按钮,创建名称为“hdd_storage”的存储,创建之后如图70所示。 图70. 创建hdd_storage存储 第三步:创建完成之后,节点1左侧的存储菜单树中会出现这两个存储名称,如图71所示,正常情况下,就可以在ssd_storage、hdd_storage上安装虚拟机了。 图71. ssd_storage与hdd_storage存储 7.6.2 节点2配置Pools资源池 节点2的Pools资源池配置与节点1的相似,不再赘述。 7.6.3 节点3配置Pools资源池 节点3的Pools资源池配置与节点1的相似,不再赘述。 7.7 Ceph磁盘管理 7.7.1 OSD磁盘下线 如果想要把一个Ceph的OSD磁盘更换下来,先选中OSD磁盘,接着按“停止”按钮先停止OSD服务,接着再按“Out”按钮,这个时候OSD.10的状态如图75所示,就可以把该磁盘取出。 图75. OSD磁盘卸载 7.7.2 OSD磁盘上线 OSD磁盘加载与OSD磁盘卸载过程刚好相反,先把磁盘插进服务器的盘位中,接着先按“in”按钮,等“in”图标变为绿色之后,再按“启动”按钮启动OSD服务,过几秒钟之后,OSD便会恢复正常,不再演示截图。 (责任编辑:IT) |