centos7下的glusterfs的安装与使用
环境说明:
两台虚拟主机,IP分别为192.168.1.222和192.168.1.233,分别装上glusterfs。
一、下载glusterfs源码包
https://download.gluster.org/pub/gluster/glusterfs/3.6/
如:glusterfs-3.6.9.tar.gz
二、编译安装
安装必要的依赖
> yum install flex bison openssl openssl-devel acl libacl libacl-devel sqlite-devel libxml2-devel python-devel
安装liburcu
https://github.com/urcu/userspace-rcu
> yum install autoconf automake libtool
> unzip userspace-rcu-master.zip
> cd userspace-rcu-master
> ./bootstrap
> ./configure
> make && make install
> ldconfig
解压并编译安装
> tar xf glusterfs-3.6.9.tar.gz
> cd glusterfs-3.6.9
> ./configure --prefix=/data/glusterfs
> make && make install
添加环境变量
> echo 'export PATH=/data/glusterfs/sbin:$PATH' >> /etc/profile
> source /etc/profile
三、使用glusterfs
分别启动两台主机上的glusterfs
> /data/glusterfs/sbin/glusterd
在222主机上配置可信池
> gluster peer probe 192.168.1.233
如果出现如下问题:
peer probe: failed: Probe returned with unknown errno 107
请查看防火墙是否关闭
查看可信池
> gluster peer status
要使用gluster必须要创建卷,卷有三种类型:
1、分布式卷,把数据写在不同的brick上。
在两台主机上分别创建exp1和exp2目录
> mkdir -p /data/exp1
> mkdir -p /data/exp2
创建分布式卷,exp-volume为卷名,可自定义
> gluster volume create exp-volume 192.168.1.222:/data/exp1 192.168.1.233:/data/exp2
查看卷信息
> gluster volume info
查看卷状态
> gluster volume status
2、复制卷
在两台主机上分别创建exp3和exp4目录
> mkdir -p /data/exp3
> mkdir -p /data/exp4
创建复制卷,复制两份,以tcp协议传输
注意brick数量与replica指定数相等
> gluster volume create rep-volume replica 2 transport tcp 192.168.1.222:/data/exp3 192.168.1.233:/data/exp4
3、条带卷,把一个文件分开存,像条带一样
在两台主机上分别创建exp5和exp6目录
> mkdir -p /data/exp5
> mkdir -p /data/exp6
创建条带卷
注意brick的数量与stripe指定数量相等
> gluster volume create str-volume stripe 2 transport tcp 192.168.1.222:/data/exp5 192.168.1.233:/data/exp6
分别启动我们上面创建的三种卷
> gluster volume start exp-volume
> gluster volume start rep-volume
> gluster volume start str-volume
安装gluster-clinet
> yum install glusterfs-client
挂载卷
> mkdir /mnt/m1 /mnt/m2 /mnt/m3
> mount.glusterfs 192.168.1.222:/exp-volume /mnt/m1
> mount.glusterfs 192.168.1.222:/rep-volume /mnt/m2
> mount.glusterfs 192.168.1.222:/str-volume /mnt/m3
我们创建几个文件写到/mnt/m1下
> echo '1' >> /mnt/m1/test1.txt
> echo '2' >> /mnt/m1/test2.txt
> echo '3' >> /mnt/m1/test3.txt
上面三个文件分别放在了222和233主机下的exp1和exp2目录。
我们创建文件到复制卷/mnt/m2下
> echo 'rep' >> /mnt/m2/rep.txt
rep.txt文件同时会存在222和233主机下的exp3和exp4目录下。
我们创建文件到条带卷/mnt/m3下
> echo '123456789' >> /mnt/m3/str.txt
str.txt文件会被折分成多个小文件保存在222和233主机下的exp5和exp6目录下。
三、分布式复制卷的创建与使用
分别在222和233主机上创建
> mkdir -p /data/t1 /data/t2
文件存放与这里的服务器顺序有关系
注意brick必须为replica指定数量K的N倍,brick以K个为一组,形成N个复制卷
> gluster volume create t-volume replica 2 transport tcp \
192.168.1.222:/data/t1 \
192.168.1.233:/data/t1 \
192.168.1.222:/data/t2 \
192.168.1.233:/data/t2
启动卷
> gluster volume start t-volume
挂载卷
> mkdir /mnt/m4
> mount.glusterfs 192.168.1.222:/t-volume /mnt/m4
创建文件测试
> echo '1' >> /mnt/m4/1.txt
> echo '1' >> /mnt/m4/2.txt
> echo '1' >> /mnt/m4/3.txt
> echo '1' >> /mnt/m4/4.txt
四、卷的设置
启用卷的配额
> gluster volume quota exp-volume enable
关闭卷的配额
> gluster volume quota exp-volume disable
设置配额大小,以系统挂载目录为根目录,即/mnt/m1/data
> gluster volume quota exp-volume limit-usage /data 10GB
查看卷的配额列表
> gluster volume quota exp-volume list
增加brick
> gluster volume add-brick exp-volume 192.168.1.222:/data/exp8
重新均衡一下卷,上面增加的卷才生效
> gluster volume rebalance exp-volume start
删除brick
> gluster volume remove-brick exp-volume 192.168.1.222:/data/exp8 force
> gluster volume rebalance exp-volume start
centos7下的glusterfs的安装与使用的更多相关文章
- SVN CentOS7 下配置svn的安装及基础配置介绍
CentOS7 下配置svn的安装及基础配置介绍 by:授客 QQ:1033553122 目录 一. 二. 三. 四. 五. 六. 七. 一. 实践环境 CentOS 7操作系统(CentO ...
- centos7下源码方式安装gitlab8.9+发送邮件+ldap
CentOS7下源码方式安装gitlab 环境描述 操作系统: centos7 redis: >=2.8 mysql >=5.5.14 git >=2.7.4 架构设计 一台gitl ...
- centos7下mysql5.7的安装与配置
centos7下MySQL5.7的安装与配置 下载 下载地址 根据系统和版本选择红框中的四个RPM包下载即可,然后放到centos7系统中的/opt目录下,等待稍后安装. 安装前的准备 1. 检查系统 ...
- inux centos7下源码 tar安装5.7.26详解
inux centos7下源码 tar安装5.7.26图文详解 官网地址 https://dev.mysql.com/downloads/mysql/ 1.卸载Linux系统上自带的mysql插件(o ...
- CentOS7下MySQL5.7的安装-RPM方式
Installing MySQL on Linux Using RPM Packages 下载安装包 mysql下载地址:https://dev.mysql.com/downloads/mysql/ ...
- CentOS7下通过rpm方式安装MySQL及插入中文问题解决 [原创]
一 CentOS下通过rpm方式安装MySQL CentOS版本:CentOS-7 MySQL版本:MySQL-5.6.22 在网上搜了一下,Linux下安装MYSQL有三种方式: 1) 通过yum命 ...
- centos7下keepalived1.3.4安装与使用
keepalived是集群管理中保证集群高可用的一个服务软件,其功能类似于heartbeat,用来防止单点故障. 一.下载keepalived http://www.keepalived.org/ 如 ...
- 【CentOS】在Centos7 下无图形界面安装 Oracle11g
目标 - 在虚拟机CentOS7中无图形界面安装Oracle11G R2版本 ① 系统要求以及准备 1. 物理内存不小于1G: 查看方式: # grep MemTotal /proc/meminfo ...
- centos7下redis和php-redis安装
centos7下redis安装和php-redis扩展安装 //一直yes就可以了 yum install redis //配置 whereis redis.conf vi /etc/redis.co ...
随机推荐
- jenkins com.jcraft.jsch.JSchException: Auth cancel
jenkins构建时报如下错误: 首先去系统管理--->系统设置上看看SCP插件中的用户名和密码是否正确
- java 中 Integer 传参方式的问题
Java本身都是值传递式的调用,对于对象传递的是地址值.给地址值重新赋值等于重新指向,不会影响外层. 而且这里Integer对象也有特殊性.其实现上可能类似 class Integer{ final ...
- 使用xshell xftp连接centos的过程。
1 配置网络 登录Centtos系统,配置网卡. cd 空格/etc/sysconfig/network-scripts 回车键. ls 查看文件 vi ifcig-eth0 编辑这个文件 修改为 ...
- JAVAWEB 一一 Sturts2+ibatis(框架,Sturts2,用action代替servlet)
web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app version="2 ...
- Structs复习 简单数据校验
jar包 web.XML <?xml version="1.0" encoding="UTF-8"?> <web-app version=&q ...
- Swift类型转换 和 类型别名的定义(typealias)
(一)类型转换 类型转化在 Swift 中是比较严格的,不同类型之间可以认为是不能相互转化的,只能重新产生一个对象和值,并拷贝一份. 1.0 整型数值之间的转换. // 不同类型是不能直接相加的,这时 ...
- Swift自定义UINavigationController(背景颜色、背景图片、返回按钮设置、字体大小等)
1.0 自定义UINavigationController时,背景图片.颜色等只需要设置一次,所以我们可以重写 initializa 这个方法来实现我们想要的效果 override class ...
- NYOJ201-作业题-(dp)
201-作业题 内存限制:64MB 时间限制:3000ms 特判: No通过数:9 提交数:28 难度:3 题目描述: 小白同学这学期有一门课程叫做<数值计算方法>,这是一门有效使用数字计 ...
- Java的学习01
记录每天的学习情况.加油. /** * 测试包装类 * @author 小白 * */ public class TestWrappedClass { public static void main( ...
- OnContextMenu实现禁止鼠标右键
OnContextMenu事件 定义和使用:oncontextmenu 事件在元素中用户右击鼠标时触发并打开上下文菜单.注意:所有浏览器都支持 oncontextmenu 事件, contextmen ...