• CEPH集群搭建(CentOS 7)


    以包含四个节点的集群为例,其中包括一个 ceph-deploy 管理节点和一个三节点的Ceph存储集群。

    下图中每个节点代表一台机器。

    创建一个 Ceph 存储集群,它有一个 Monitor 和两个 OSD 守护进程。一旦集群达到 active clean 状态,再扩展它:增加第三个 OSD 、增加元数据服务器和两个 Ceph Monitors。为获得最佳体验,先在管理节点上创建一个目录,用于保存 ceph-deploy 生成的配置文件和密钥对。

    mkdir my-cluster
    cd my-cluster

    ceph-deploy 会把文件输出到当前目录,所以请确保在此目录下执行 ceph-deploy 

    创建集群

    在管理节点上,进入刚创建的放置配置文件的目录,用 ceph-deploy 执行如下步骤。

    1. 创建集群。
      ceph-deploy new {initial-monitor-node(s)}

      例如:

      ceph-deploy new node1

      在当前目录下用 ls 和 cat 检查 ceph-deploy 的输出,应该有一个 Ceph 配置文件、一个 monitor 密钥环和一个日志文件。详情见 ceph-deploy new -h 。

    2. 把 Ceph 配置文件里的默认副本数从 3 改成 2 ,这样只有两个 OSD 也可以达到 active clean 状态。把下面这行加入 [global] 段:
    3. osd pool default size = 2

      安装 Ceph 。

      ceph-deploy install {ceph-node} [{ceph-node} ...]

      例如:

      ceph-deploy install admin-node node1 node2 node3

      ceph-deploy 将在各节点安装 Ceph 。 注:如果你执行过 ceph-deploy purge ,你必须重新执行这一步来安装 Ceph 。

    4. 配置初始 monitor(s)、并收集所有密钥:
      ceph-deploy mon create-initial

      完成上述操作后,当前目录里应该会出现这些密钥环:

      • {cluster-name}.client.admin.keyring
      • {cluster-name}.bootstrap-osd.keyring
      • {cluster-name}.bootstrap-mds.keyring
      • {cluster-name}.bootstrap-rgw.keyring

    添加OSD

    1. 添加两个 OSD 。为了快速地安装,这篇快速入门把目录而非整个硬盘用于 OSD 守护进程。如何为 OSD 及其日志使用独立硬盘或分区,请参考 ceph-deploy osd 。登录到 Ceph 节点、并给 OSD 守护进程创建一个目录。
      ssh node2
      sudo mkdir /var/local/osd0
      exit
      
      ssh node3
      sudo mkdir /var/local/osd1
      exit

      然后,从管理节点执行 ceph-deploy 来准备 OSD 。

      ceph-deploy osd prepare {ceph-node}:/path/to/directory

      例如:(确保有权限 chmod 777)

      ceph-deploy osd prepare node2:/var/local/osd0 node3:/var/local/osd1

      最后,激活 OSD 。

      ceph-deploy osd activate {ceph-node}:/path/to/directory

      例如:

      ceph-deploy osd activate node2:/var/local/osd0 node3:/var/local/osd1
    2. 用 ceph-deploy 把配置文件和 admin 密钥拷贝到管理节点和 Ceph 节点,这样你每次执行 Ceph 命令行时就无需指定 monitor 地址和 ceph.client.admin.keyring 了。
      ceph-deploy admin {admin-node} {ceph-node}

      例如:

      ceph-deploy admin admin-node node1 node2 node3

      ceph-deploy 和本地管理主机( admin-node )通信时,必须通过主机名可达。必要时可修改 /etc/hosts ,加入管理主机的名字。

    3. 确保你对 ceph.client.admin.keyring 有正确的操作权限。
      确保你对 ceph.client.admin.keyring 有正确的操作权限。
    4. 检查集群的健康状况。
      ceph health

      等 peering 完成后,集群应该达到 active clean 状态。

  • 相关阅读:
    关于 继承、扩展和协议,深度好文
    BearSkill纯代码搭建iOS界面
    漫谈程序猿系列:程序猿零门槛?
    Uva--11324--The Largest Clique【有向图强连通分量】
    iOS_UITextField 基本操作
    苹果官方xcodeprojectbuild设置指南
    <html>
    Matlab 随机数字
    基于中文人员特征的性别判定方法
    小米用户画像的演进及应用解读
  • 原文地址:https://www.cnblogs.com/jugglee/p/8126869.html
Copyright © 2020-2023  润新知