zoukankan      html  css  js  c++  java
  • GlusterFS部署


    该文档是纯GlusterFS,而非红帽的GlusterFS,需注意!!!
    声明:如需在单个节点上执行的都会有用户和主机名,如没有命令前没有用户名和主机名则为所有节点都执行
    wiki
    官网

    硬件、环境介绍

    node1/CentOS7.9/192.168.1.111/桥接/2G/2核/80G、20G
    node2/CentOS7.9/192.168.1.112/桥接/2G/2核/80G、20G
    
    注:2台机上的20G用来做GlusterFS使用
    

    安装

    2台机上都需要安装glusterfs,这里使用centos的源

    systemctl stop firewalld && systemctl disable firewalld
    sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config
    setenforce 0
    mount /dev/sr0 /mnt/usb1        ===>该步按需
    
    yum -y install centos-release-gluster
    yum clean all && yum makecache
    yum -y install glusterfs-server
    
    systemctl start glusterd && systemctl enable glusterd
    glusterd --version
    
    cat /usr/lib/firewalld/services/glusterfs.xml     ===> 查看开启的规则信息
    
    [root@node1 ~]# vim /etc/hosts
    192.168.1.111   node1
    192.168.1.112   node2
    
    # 将node2添加到gluster中
    [root@node1 ~]# gluster peer probe node2
    [root@node1 ~]# gluster peer status
    Number of Peers: 1
    
    Hostname: node2
    Uuid: 2543bce7-bb6a-4974-ad54-67d3d3f2d72d
    State: Peer in Cluster (Connected)
    
    # 查看池中的主机
    [root@node1 ~]# gluster pool list
    UUID					Hostname 	State
    2543bce7-bb6a-4974-ad54-67d3d3f2d72d	node2    	Connected 
    6b5efcf3-e34f-4fac-87bc-fda1ae6e4189	localhost	Connected 
    

    配置LV

    两个节点都在本地虚拟机先添加一块磁盘,用于当作存储,两个节点都要操作如下命令

    # 创建pv
    pvcreate /dev/sdb
    vgcreate opop /dev/sdb
    
    # 创建thin
    lvcreate -L 5G  -T opop/opop-thin-pool
    注:-T表示创建的是thin pool
    
    # 创建lv
    lvcreate -V 2G -T opop/opop-thin-pool  -n  opop-brick
    
    而后可用lvdisplay查看详细信息。
    其实上述这些操作都可以不用做,直接对磁盘进行格式化就行。
    
    mkfs.xfs -i size=512 /dev/opop/opop-brick
    
    # 挂载
    mkdir -p /data/brick1
    mount /dev/opop/opop-brick /data/brick1
    echo '/dev/opop/opop-brick /data/brick1  xfs defaults  1  2' >> /etc/fstab
    
    注:已经被设置为共享卷的文件夹是不能再被挂载
    
    df -h | grep data
    /dev/mapper/opop-opop--brick  2.0G   33M  2.0G    2% /data/brick1
    
    
    ===================
    如果selinux关闭的话,这个可不设置
    # semanage fcontext  -a -t glusterd_brick_t /data1/brick1
    # restorecon -Rv /data/
    # ll -Z /data
    ===================
    

    创建分布式卷

    这种默认创建出来的就是分布式卷

    [root@node1 ~]# gluster volume create gv0 node1:/data/brick1/brick node2:/data/brick1/brick
    
    
    [root@node1 ~]# gluster volume info gv0 
     
    Volume Name: gv0
    Type: Distribute
    Volume ID: 1b19e7ff-4608-4576-ab4f-fe8ef764102e
    Status: Created                ====>默认的状态是Create,需要启动
    Snapshot Count: 0
    Number of Bricks: 2
    Transport-type: tcp
    Bricks:
    Brick1: node1:/data/brick1/brick
    Brick2: node2:/data/brick1/brick
    Options Reconfigured:
    storage.fips-mode-rchecksum: on
    transport.address-family: inet
    nfs.disable: on
    
    
    # 启动volume
    gluster volume start gv0 
    # 查看状态
    gluster volume status gv0
    

    客户端挂载使用

    这里就把node2当客户端来使用
    [root@node2 ~]# yum -y install glusterfs-fuse
    
    # 挂载
    [root@node2 ~]# mkdir /gluster_client
    [root@node2 ~]# mount -t glusterfs node1:/gv0  /gluster_client
    [root@node2 ~]# echo 'node1:/gv0 /gluster_client  glusterfs  defaults,_netdev,backup-volfile-servers=node2 1 2' >> /etc/fstab
    
    # 写文件
    [root@node2 ~]# for i in `seq -w 1 100`; do cp -rp /var/log/messages /gluster_client/copy-test-$i; done
    
    [root@node2 ~]# ls -lA /gluster_client/copy* | wc -l
    
    # 查看客户端节点上面的brick下面的数据文件
    [root@node2 ~]# ll -lA /data/brick1/brick/copy-test-0* | wc -l
    
    # 删除分布式卷
    # umount /gluster_client/
    # gluster volume stop gv0 // 停止卷
    # gluster volume delete gv0 // 删除卷
    
  • 相关阅读:
    树与堆
    Python基础
    python基础
    Flask基础知识
    其他(MySQL)
    发生错误:请确认您的电脑是否安装了excel软件,并且您的浏览器是否允许远行excel!具体操作请查阅帮助.
    idea启动项目,报java.lang.OutOfMemoryError: PermGen space 和启动项目很慢的问题解决
    安装jdk,tomcat,oracle,PL/SQL的一些问题
    linux下安装jdk8,nginx
    mybatic中xml新增一条数据获取自增id
  • 原文地址:https://www.cnblogs.com/smlile-you-me/p/15364121.html
Copyright © 2011-2022 走看看