美文网首页
ceph.文件系统

ceph.文件系统

作者: 余带盐 | 来源:发表于2019-01-15 15:11 被阅读0次
    • 说明

    第一台主机ip是192.168.122.19,作为管理节点
    第二台主机ip是192.168.122.191,作为存储节点,第二台主机需要2块硬盘,操作系统装到第一块硬盘,第二块用于ceph

    • 配置本地源(所有主机)

    ceph-pkg.tar.gz放到每个主机/opt目录下
    cd /opt
    tar xzvf ceph-pkg.tar.gz
    mv ceph-pkg.repo /etc/yum.repos.d
    cd /etc/yum.repos.d
    mkdir bak
    mv C* bak/
    yum makecache
    yum install -y epel-release
    mv epel.repo epel-testing.repo bak

    • 修改配置

    sudo vi /etc/centos-release

    CentOS Linux release 7.5.1804 (Core)
    

    注:原来是DeltaOS8Server release 8.0.2 (Core)

    • 关防火墙(所有主机)
    1. 停止firewall
      systemctl stop firewalld.service
      systemctl disable firewalld.service
    2. 停止 NetworkManager
      systemctl stop NetworkManager
      systemctl disable NetworkManager
    3. 关闭 selinux
      vi /etc/selinux/config
    #SELINUX=enforcing
    SELINUX=disabled
    
    1. 重启
      reboot
    • 修改hostname(所有主机)

    vi /etc/hostname

    node1
    

    reboot
    注:第二台主机是node2

    • 配置hosts(所有主机)

    vi /etc/hosts

    192.168.122.19 node1 admin-node
    192.168.122.191 node2
    
    • 配置chrony(所有主机)
    1. 下载:yum install chrony
    2. 配置:vi /etc/chrony.conf
    #server 0.centos.pool.ntp.org iburst
    #server 1.centos.pool.ntp.org iburst
    #server 2.centos.pool.ntp.org iburst
    #server 3.centos.pool.ntp.org iburst
    server ntp1.aliyun.com iburst
    
    
    image.png
    1. 启动
      systemctl enable chronyd
      systemctl start chronyd
    • 创建用户(所有主机)
    1. 账号
      adduser cephuser
      passwd cephuser
    2. 添加sudoers文件的写权限
      chmod u+w /etc/sudoers
    3. 配置sudo无需密码
      vi /etc/sudoers
      root ALL=(ALL) ALL下添加
    cephuser ALL=(ALL)  NOPASSWD: ALL
    
    1. 删除写权限
      chmod u-w /etc/sudoers
    • (管理节点)
    1. 在管理节点使用cephuser用户执行创建ssh秘钥,并拷贝到各个节点(注意,这里面的命令要一行一行执行,没法连续)
      su cephuser
      ssh-keygen
      ssh-copy-id cephuser@node1
      ssh-copy-id cephuser@node2
      exit
      注:正因为 ceph-deploy 不支持输入密码,你必须在管理节点上生成 SSH 密钥并把其公钥分发到各 Ceph 节点。
    2. 配置ceph-deploy自动登录(管理节点)
      su cephuser
      vi ~/.ssh/config
    Host node1
      Hostname node1
      User cephuser
    Host node2
      Hostname node2
      User cephuser
    

    exit

    1. 下载 ceph-deploy (管理节点)
      yum install ceph-deploy python-pip -y
    • 开始
    1. 创建目录(管理节点,使用cephuser)
      su cephuser
      cd ~
      mkdir my-cluster
      cd my-cluster
      注:这个目录用于保存 ceph-deploy 生成的配置文件和密钥对。
    2. 创建集群(管理节点,在my-cluster目录下)
      sudo chmod 600 /home/cephuser/.ssh/config
      ceph-deploy new node1
      image.png
      注:如果出现ImportError: No module named pkg_resources,那么安装pip:yum -y install python-pip,再执行本指令
    3. 修改默认的3个OSD节点为1个
      vi ceph.conf
    [global]
    ...
    osd pool default size = 1
    
    1. 安装ceph
      ceph-deploy install node1 node2 --local-mirror=/opt/ceph-pkg/ --no-adjust-repos --release=kraken
      注:第一个node即node1就是管理节点(admin-node)
      注意:如果出现[ceph_deploy][ERROR ] RuntimeError: NoSectionError: No section: 'ceph',那么是超时造成的,再执行一遍命令就行。
    2. 配置初始 monitor(s)
      ceph-deploy mon create-initial
      image.png
    3. 把keyring文件分发到各个节点
      ceph-deploy admin admin-node node1 node2
    4. 部署 manager
      ceph-deploy mgr create node1
    5. 创建osd目录
      ssh node2
      sudo mkdir /data/osd2 -p
      exit
    6. 准备osd
      ceph-deploy osd create node2 --data /dev/vdb
      注:这里node2需要额外挂载一块磁盘,名字不一定是vdb,可以在node2中通过sudo fdisk -l查看
    7. 查看健康
      sudo chmod 755 /etc/ceph/ceph.client.admin.keyring
      ceph health
      image.png
    8. 查看集群状态及存储(node1 node2都可以)
      ceph -s
      image.png
    9. 动态查看集群状态(相当于 tail)
      ceph -w
      引用:使用ceph-deploy安装Ceph 12.x
      官网:存储集群快速入门
    • 用法
    1. 创建2个存储池
      ceph osd pool create pool1 64
      ceph osd pool create pool2 64
    2. 查看存储池
      ceph osd lspools
      image.png
      引用:存储池
    3. 创建文件系统
      ceph fs new cephfs pool1 pool2
      image.png
      根据上图可以看出 pool1作为元数据存储,pool2作为数据存储
    4. 查看文件系统
      ceph fs ls
      image.png
    5. 查看mds状态
      ceph mds stat
      image.png
    6. 创建元数据服务器(非常重要,涉及到cephfs能否挂载)
      ceph-deploy mds create node1
    7. 再次查看
      ceph mds stat
      image.png
    8. 查询密码
      cat /etc/ceph/ceph.client.admin.keyring
    key = AQAqhz1cnZIOExAAwU9l6vfCx8lBt1sfp8HFXQ==
    
    1. 挂载
      mount -t ceph 192.168.122.19:/ /home/mnt/ -o name=admin,secret=AQAqhz1cnZIOExAAwU9l6vfCx8lBt1sfp8HFXQ==

    相关文章

      网友评论

          本文标题:ceph.文件系统

          本文链接:https://www.haomeiwen.com/subject/gceedqtx.html