drbd.9.0版本部署
DRBD9.0部署
1) drbd软件安装
软件:drbd-9.0.0.tar.gz 、 drbd-utils-8.9.5.tar.gz(从8.4.5开始,drbd软件分成了两部分:核心模块和管理工具)、kernel-devel、flex
- 安装drbd
[root@client5 ~] # yum install -y kernel-devel
[root@client5 drbd-utils-8.9.5]# yum install -y flex
[root@client5 package]# tar -zxf drbd-9.0.0.tar.gz
[root@client5 package]# cd drbd-9.0.0
[root@client5 drbd-9.0.0]# make \
KDIR=/usr/src/kernels/2.6.32-431.el6.x86_64
[root@client5 drbd-9.0.0]# make install
- 加载drbd模块到内核:
[root@client5 ~]# cd /lib/modules/2.6.32-431.el6.x86_64/updates/
[root@client5 updates]# cp -p drbd.ko ../kernel/lib/
[root@client5 updates]# depmod
#分析可加载模块的依赖性
[root@client5 updates]# modprobe drbd
#加载drbd模块到内核
[root@client5 updates]# lsmod | grep drbd
drbd 454676 0
# 列出内核已载入模块的状态
# 输出为:
Module(模块名) Size(模块大小) Used by(使用者)
- 安装drbd-utils
[root@client5 package]# tar -zxf drbd-utils-8.9.5.tar.gz
[root@client5 package]# cd drbd-utils-8.9.5
[root@client5 drbd-utils-8.9.5]# ./configure --prefix=/usr/local/drbd-utils --without-83support --without-84support --without-manual
# 由于我装的是9.0版本的drbd,所以不需要83support,也不需要84support,也不需要手册,否则会报错误。
#安装目录为/usr/local/drbd-utils
[root@client5 drbd-utils-8.9.5]# make
[root@client5 drbd-utils-8.9.5]# make install
- 遇到的问题:
#报错如下:
make -C documentation/v9 doc
#make过程会卡在这,这是因为./configure参数有问题,按照上面那样设置就没问题
2) 创建drbd镜像
1. 修改配置文件
[root@client5 drbd-utils]# cd /usr/local/drbd-utils/etc/
[root@client5 etc]# ls
bash_completion.d drbd.conf drbd.d ha.d rc.d xen
#drbd.conf文件无需该动
[root@client5 drbd-utils]# cd /usr/local/drbd-utils/etc/drbd.d/
[root@client5 drbd.d]# ls
global_common.conf
[root@client5 etc]# vim global_common.conf
#在common配置部分的net选项中添加protocol C;即可,表示使用协议C的方式进行数据复制
[root@client5 drbd.d]# vim dbdata.res
resource data {
meta-disk internal;
device /dev/drbd1;
on client5 {
disk /dev/vda1;
address 192.168.122.15:7789;
}
on client6 {
disk /dev/vda1;
address 192.168.122.16:7789;
}
}
#该文件用于定义drbd镜像资源
#两个结点上的以上三个文件必须保持相同,并且两个节点要能够互相解析到彼此。
2. 对节点的drbd操作
- 在两个节点上都执行:
[root@client5 drbd.d]# lsmod | grep drbd
drbd 454676 0
#确保drbd模块已经加载到内核
[root@client5 drbd.d]# dd if=/dev/zero \
of=/dev/hdb1 bs=1M count=100
[root@client5 drbd.d]# drbdadm create-md data
[root@client5 drbd.d]# cp -p \
/usr/local/package/drbd-utils-8.9.5/scripts/drbd /etc/init.d/
[root@client5 drbd.d]# /etc/init.d/drbd start
- 在client5节点上执行:
[root@client5 drbd.d]# drbdadm primary data --force
#设置client5节点为主节点
- 注意:我所用的这个版本的drbd,执行cat /proc/drbd查看不到drbd镜像的信息,我采用的是drbd-overview来查看
[root@client5 ~]# cp -p \
/usr/local/package/drbd-utils-8.9.5/scripts/drbd-overview.pl /usr/sbin
#通过drbd-overview.pl 这个perl脚本查看到的信息类似下面这样:
[root@client5 ~]# drbd-overview.pl
1:data/0 Connected(2*) Primar/Second UpToDa/UpToDa
- 测试drbd镜像
[root@client5 drbd.d]# mkfs.ext4 /dev/drbd1
[root@client5 ~]# mount /dev/drbd1 /mnt/
#挂载文件系统之前确保这个节点是primary
[root@client5 mnt]# mkdir file{1..5}
[root@client5 ~]# umount /mnt
[root@client5 ~]# drbdadm secondary data
[root@client6 ~]# drbdadm primary data
[root@client6 ~]# mount /dev/drbd1 /mnt/
[root@client6 mnt]# ls
file1 file2 file3 file4 file5
drbd.9.0版本部署的更多相关文章
- 运维监控-基于yum的方式部署 Zabbix Agent 4.0 版本
运维监控-基于yum的方式部署 Zabbix Agent 4.0 版本 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 上一篇博客我们分享了如何基于yum的方式部署zabbix 4. ...
- 运维监控-基于yum的方式部署Zabbix Server 4.0 版本
运维监控-基于yum的方式部署Zabbix Server 4.0 版本 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.如何选择zabbix版本 1>.打开zabbix官方 ...
- Mirantis OpenStack 8.0 版本大概性分析
作为 OpenStack 领域标杆性企业之一的 Mirantis 在2016年3月初发布了最新的 MOS 8.0 版本.本文试着基于公开资料进行一些归纳分析. 1. 版本概况 1.1 概况 社区版本: ...
- RDIFramework.NET平台代码生成器V3.0版本全新发布-更新于20160518(提供下载)
最新版本请转到:RDIFramework.NET平台代码生成器V3.1版本全新发布-更新于2016-10-08(提供下载) RDIFramework.NET代码生成器V3.0版本修改了针对3.0版本的 ...
- solr全文检索原理及solr5.5.0 Windows部署
文章原理链接:http://blog.csdn.net/xiaoyu411502/article/details/44803859 自己稍微总结:全文检索主要有两个过程:创建索引,搜索索引 创建索引: ...
- zabbix3.0安装部署文档
zabbix v3.0安装部署 摘要: 本文的安装过程摘自http://www.ttlsa.com/以及http://b.lifec-inc.com ,和站长凉白开的<ZABBIX从入门到精通v ...
- Mirantis OpenStack 8.0 版本
作为 OpenStack 领域标杆性企业之一的 Mirantis 在2016年3月初发布了最新的 MOS 8.0 版本.本文试着基于公开资料进行一些归纳分析. 1. 版本概况 1.1 概况 社区版本: ...
- ELK5.0搭建部署
###关闭防火墙 service iptables stop ###定义vi=vim alias vi=vim vi ~/.bashrc alias vi='vim' yum -y install l ...
- Spark源码分析 之 Driver和Excutor是怎么跑起来的?(2.2.0版本)
今天抽空回顾了一下Spark相关的源码,本来想要了解一下Block的管理机制,但是看着看着就回到了SparkContext的创建与使用.正好之前没有正式的整理过这部分的内容,这次就顺带着回顾一下. S ...
随机推荐
- [Tool] Git 使用 与 Git Flow
目录 简介 Git 命令 Git Flow 简介 Git是目前世界上最先进的分布式版本控制系统(没有之一). Linus花了两周时间自己用C写了一个分布式版本控制系统,这就是Git!一个月之内,Lin ...
- 关于ArcGIS Android的在x86和x64系统中兼容性的问题与解决方案
我们都知道,在配置ArcGIS Android SDK时,需要在jniLibs目录下放置三个文件夹,分别是armeabi.armeabi-v7a.x86三个文件夹,ArcGIS Android针对目标 ...
- Index Scans 索引扫描
官方文档链接地址 http://docs.oracle.com/cd/E11882_01/server.112/e40540/indexiot.htm#CNCPT1170 Index Scans 在索 ...
- php中的捕获异常操作
<?php if(!isset($_SESSION)){ session_start(); } include '../common/mysql.class.php'; include '../ ...
- PHP中对汉字进行UNICODE编码和解码的实现
<?php /** PHP中对汉字进行UNICODE编码和解码的实现 **/ class Helper_Tool{ //php中的unicode编码转中文 static function uni ...
- JAVA基础——内部类详解
JAVA内部类详解 在我的另一篇java三大特性的封装中讲到java内部类的简单概要,这里将详细深入了解java内部类的使用和应用. 我们知道内部类可分为以下几种: 成员内部类 静态内部类 方法内部类 ...
- SVN仓库迁移到Git的完美解决办法
参考文章Converting a Subversion repository to Git 1 使用git svn clone 拷贝svn仓库 cd ~/test_repo git svn clone ...
- Socket实现-Socket I/O
Socket层的核心是两个函数:sosend()和soreceive().这两个函数负责处理所有Socket层和协议层之间的I/O操作. select()系统调用的作用是监控文件描述符的状态.一般用于 ...
- 一个简单的python选课系统
下面介绍一下自己写的python程序,主要是的知识点为sys.os.json.pickle的模块应用,python程序包的的使用,以及关于类的使用. 下面是我的程序目录: bin是存放一些执行文件co ...
- 从一个针对ASP.NET MVC框架的Controller.Action的请求处理顺序来说整个请求过程。
下面引用的所有代码都来自ASP.NET MVC的源码,但是可能只选取每个方法的其中一部分. System.Web.Routing.UrlRoutingModule在管道事件中注册PostResolve ...