位置: 编程技术 - 正文
推荐整理分享在CentOS下安装和配置分布式系统Ceph的教程(centos下载与安装),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:centos安装dig,centos 安装选择,centos安装软件教程,centos安装dig,centos安装dig,centos直接安装,centos直接安装,centos 安装chia,内容如对您有帮助,希望把文章链接给更多的朋友!
开发一个分布式文件系统需要多方努力,但是如果能准确地解决问题,它就是无价的。Ceph 的目标简单地定义为:可轻松扩展到数 PB 容量,对多种工作负载的高性能(每秒输入/输出操作[IOPS]和带宽)。不幸的是,这些目标之间会互相竞争(例如,可扩展性会降低或者抑制性能或者影响可靠性)。Ceph 开发了一些非常有趣的概念(例如,动态元数据分区,数据分布和复制),这些概念在本文中只进行简短地探讨。Ceph 的设计还包括保护单一点故障的容错功能,它假设大规模(PB 级存储)存储故障是常见现象而不是例外情况。最后,它的设计并没有假设某种特殊工作负载,但是包括适应变化的工作负载,提供最佳性能的能力。它利用 POSIX 的兼容性完成所有这些任务,允许它对当前依赖 POSIX 语义(通过以 Ceph 为目标的改进)的应用进行透明的部署。最后,Ceph 是开源分布式存储,也是主线 Linux 内核(2.6.)的一部分。现在,让我们探讨一下 Ceph 的架构以及高端的核心要素。然后我会拓展到另一层次,说明 Ceph 中一些关键的方面,提供更详细的探讨。Ceph 生态系统可以大致划分为四部分(见图 1):客户端(数据用户),元数据服务器(缓存和同步分布式元数据),一个对象存储集群(将数据和元数据作为对象存储,执行其他关键职能),以及最后的集群监视器(执行监视功能)。
如图所示,客户使用元数据服务器,执行元数据操作(来确定数据位置)。元数据服务器管理数据位置,以及在何处存储新数据。值得注意的是,元数据存储在一个存储集群(标为 “元数据 I/O”)。实际的文件 I/O 发生在客户和对象存储集群之间。这样一来,更高层次的 POSIX 功能(例如,打开、关闭、重命名)就由元数据服务器管理,不过 POSIX 功能(例如读和写)则直接由对象存储集群管理。另一个架构视图由图 2 提供。一系列服务器通过一个客户界面访问 Ceph 生态系统,这就明白了元数据服务器和对象级存储器之间的关系。分布式存储系统可以在一些层中查看,包括一个存储设备的格式(Extent and B-tree-based Object File System [EBOFS] 或者一个备选),还有一个设计用于管理数据复制,故障检测,恢复,以及随后的数据迁移的覆盖管理层,叫做 Reliable Autonomic Distributed Object Storage(RADOS)。最后,监视器用于识别组件故障,包括随后的通知。
示例系统资源**CEPH-STORAGE**OS: CentOS Linux 7 (Core)RAM:1 GBCPU:1 CPUDISK: Network: ...FQDN: ceph-storage.linoxide.com**CEPH-NODE**OS: CentOS Linux 7 (Core)RAM:1 GBCPU:1 CPUDISK: Network: ...FQDN: ceph-node.linoxide.com安装前的配置在安装 Ceph 存储之前,我们要在每个节点上完成一些步骤。第一件事情就是确保每个节点的网络已经配置好并且能相互访问。
配置 Hosts
要在每个节点上配置 hosts 条目,要像下面这样打开默认的 hosts 配置文件(LCTT 译注:或者做相应的 DNS 解析)。复制代码代码如下:# vi /etc/hosts... ceph-storage ceph-storage.linoxide.com... ceph-node ceph-node.linoxide.com安装 VMware 工具
工作环境是 VMWare 虚拟环境时,推荐你安装它的 open VM 工具。你可以使用下面的命令安装。复制代码代码如下:# yum install -y open-vm-tools配置防火墙
如果你正在使用启用了防火墙的限制性环境,确保在你的 Ceph 存储管理节点和客户端节点中开放了以下的端口。
你必须在你的 Admin Calamari 节点开放 、、以及- 端口,并且允许通过 号端口访问到 Ceph 或 Calamari 管理节点,以便你网络中的客户端能访问 Calamari web 用户界面。
你可以使用下面的命令在 CentOS 7 中启动并启用防火墙。复制代码代码如下:# systemctl start firewalld# systemctl enable firewalld运行以下命令使 Admin Calamari 节点开放上面提到的端口。复制代码代码如下:# firewall-cmd --zone=public --add-port=/tcp --permanent# firewall-cmd --zone=public --add-port=/tcp --permanent# firewall-cmd --zone=public --add-port=-/tcp --permanent# firewall-cmd --reload在 Ceph Monitor 节点,你要在防火墙中允许通过以下端口。复制代码代码如下:# firewall-cmd --zone=public --add-port=/tcp --permanent然后允许以下默认端口列表,以便能和客户端以及监控节点交互,并发送数据到其它 OSD。复制代码代码如下:# firewall-cmd --zone=public --add-port=-/tcp --permanent如果你工作在非生产环境,建议你停用防火墙以及 SELinux 设置,在我们的测试环境中我们会停用防火墙以及 SELinux。复制代码代码如下:# systemctl stop firewalld# systemctl disable firewalld系统升级
现在升级你的系统并重启使所需更改生效。复制代码代码如下:# yum update# shutdown -r 0设置 Ceph 用户现在我们会新建一个单独的 sudo 用户用于在每个节点安装 ceph-deploy工具,并允许该用户无密码访问每个节点,因为它需要在 Ceph 节点上安装软件和配置文件而不会有输入密码提示。
运行下面的命令在 ceph-storage 主机上新建有独立 home 目录的新用户。复制代码代码如下:[root@ceph-storage ~]# useradd -d /home/ceph -m ceph[root@ceph-storage ~]# passwd ceph节点中新建的每个用户都要有 sudo 权限,你可以使用下面展示的命令赋予 sudo 权限。复制代码代码如下:[root@ceph-storage ~]# echo "ceph ALL = (root) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/cephceph ALL = (root) NOPASSWD:ALL[root@ceph-storage ~]# sudo chmod /etc/sudoers.d/ceph设置 SSH 密钥现在我们会在 Ceph 管理节点生成 ssh 密钥并把密钥复制到每个 Ceph 集群节点。
在 ceph-node 运行下面的命令复制它的 ssh 密钥到 ceph-storage。复制代码代码如下:[root@ceph-node ~]# ssh-keygenGenerating public/private rsa key pair.Enter file in which to save the key (/root/.ssh/id_rsa):Created directory '/root/.ssh'.Enter passphrase (empty for no passphrase):Enter same passphrase again:Your identification has been saved in /root/.ssh/id_rsa.Your public key has been saved in /root/.ssh/id_rsa.pub.The key fingerprint is:5b:*:*:*:*:*:*:*:*:*:c9 root@ceph-nodeThe key's randomart image is:+--[ RSA ]----+复制代码代码如下:[root@ceph-node ~]# ssh-copy-id ceph@ceph-storage
配置 PID 数目要配置 PID 数目的值,我们会使用下面的命令检查默认的内核值。默认情况下,是一个小的最大线程数 。
如下图所示通过编辑系统配置文件配置该值为一个更大的数。
配置管理节点服务器配置并验证了所有网络后,我们现在使用 ceph 用户安装 ceph-deploy。通过打开文件检查 hosts 条目(LCTT 译注:你也可以用 DNS 解析来完成)。复制代码代码如下:# vim /etc/hostsceph-storage ...ceph-node ...运行下面的命令添加它的库。复制代码代码如下:# rpm -Uhv Ceph 库参数,别忘了替换你当前的 Release 和版本号。复制代码代码如下:[root@ceph-storage ~]# vi /etc/yum.repos.d/ceph.repo[ceph-noarch]name=Ceph noarch packagesbaseurl= ceph-deploy 软件包。
安装 ceph-deploy 软件包我们运行下面的命令以及 ceph-deploy 安装命令来更新系统以及最新的 ceph 库和其它软件包。复制代码代码如下:#yum update -y && yum install ceph-deploy -y配置集群使用下面的命令在 ceph 管理节点上新建一个目录并进入新目录,用于收集所有输出文件和日志。复制代码代码如下:# mkdir ~/ceph-cluster# cd ~/ceph-cluster# ceph-deploy new storage
如果成功执行了上面的命令,你会看到它新建了配置文件。
现在配置 Ceph 默认的配置文件,用任意编辑器打开它并在会影响你公共网络的 global 参数下面添加以下两行。复制代码代码如下:# vim ceph.confosd pool default size = 1public network = ..0.0/安装 Ceph现在我们准备在和 Ceph 集群关联的每个节点上安装 Ceph。我们使用下面的命令在 ceph-storage 和 ceph-node 上安装 Ceph。复制代码代码如下:# ceph-deploy install ceph-node ceph-storage
处理所有所需仓库和安装所需软件包会需要一些时间。
当两个节点上的 ceph 安装过程都完成后,我们下一步会通过在相同节点上运行以下命令创建监视器并收集密钥。复制代码代码如下:# ceph-deploy mon create-initial
设置 OSD 和 OSD 守护进程现在我们会设置磁盘存储,首先运行下面的命令列出你所有可用的磁盘。复制代码代码如下:# ceph-deploy disk list ceph-storage结果中会列出你存储节点中使用的磁盘,你会用它们来创建 OSD。让我们运行以下命令,请使用你的磁盘名称。复制代码代码如下:# ceph-deploy disk zap storage:sda# ceph-deploy disk zap storage:sdb为了最后完成 OSD 配置,运行下面的命令配置日志磁盘以及数据磁盘。复制代码代码如下:# ceph-deploy osd prepare storage:sdb:/dev/sda# ceph-deploy osd activate storage:/dev/sdb1:/dev/sda1你需要在所有节点上运行相同的命令,它会清除你磁盘上的所有东西。之后为了集群能运转起来,我们需要使用以下命令从 ceph 管理节点复制不同的密钥和配置文件到所有相关节点。复制代码代码如下:# ceph-deploy admin ceph-node ceph-storage测试 Ceph我们快完成了 Ceph 集群设置,让我们在 ceph 管理节点上运行下面的命令检查正在运行的 ceph 状态。复制代码代码如下:# ceph status# ceph healthHEALTH_OK如果你在 ceph status 中没有看到任何错误信息,就意味着你成功地在 CentOS 7 上安装了 ceph 存储集群。
详解在CentOS系统的服务器上搭建VPN的方法 一、首先检查你VPS的PPP和TUN有没有启用:复制代码代码如下:cat/dev/pppcat/dev/net/tun显示结果为:cat:/dev/ppp:Nosuchdeviceoraddress和cat:/dev/net/tun:Filedescriptorinbadstat
CentOS系统上OpenVZ虚拟机的安装和基本使用 OpenVZ是开源软件,是基于Linux平台的操作系统级服务器虚拟化解决方案。OpenVZ采用SWsoft的Virutozzo虚拟化服务器软件产品的内核,Virutozzo是SWsoft公司提供的
CentOS下Pureftp的配置文件常用配置项整理 RPM缺省使用另外一个配置文件:/etc/sysconfig/pure-ftpd请不要忘了浏览一下
标签: centos下载与安装
本文链接地址:https://www.jiuchutong.com/biancheng/353522.html 转载请保留说明!友情链接: 武汉网站建设