>  기사  >  데이터 베이스  >  MySQL-CentOS6.5_x64 설치 및 구성 drbd8.4.2 샘플 코드

MySQL-CentOS6.5_x64 설치 및 구성 drbd8.4.2 샘플 코드

黄舟
黄舟원래의
2017-03-14 16:43:381341검색

一、主机资源:

width="600" border="1 ">

tr>
이름 IP 配置 备注 td>
마스터 192.168.0.152
Name IP 配置 备注
Master 192.168.0.152 sda/10G,sdb/10G;  
Slave 192.168.0.153 sda/10G,sdb/10G;  
sda/10G,sdb/10G;  
슬레이브 192.168.0.153 sda/10G,sdb/10G;  

******************************************** ****

DRBD 다운로드 주소 : http://oss.linbit.com/drbd/

**** ******************************************

2. 기본 시스템 구성

마스터와 슬레이브는 다음과 같이 구성됩니다.

1. /etc/hosts 파일 구성

 ~]# vi /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.0.152 master
192.168.0.153 slave

2. selinux 비활성화:

# sed -i "7s/enforcing/disabled/" /etc/selinux/config

3. iptables를 비활성화하거나 제거합니다. 여기서는 iptables를 비활성화합니다 :

1) 방화벽 끄기------service iptables stop
2 ) 방화벽 시작------service iptables start
3) 방화벽 다시 시작------service iptables restart
4) 방화벽 상태 확인--service iptables status
5) 영구적으로 끄기 Firewall--chkconfig iptables off
6) 영구 종료 후 --chkconfig iptables on을 활성화합니다

yum update를 실행하여 커널을 업그레이드합니다.

# yum update
Loaded plugins: fastestmirror, presto
Loading mirror speeds from cached hostfile
 * base: mirrors.btte.NET
………

5. /dev/sdb 포맷

#fdisk -l
#fdisk /dev/sdb

6. 다시 시작

reboot

3. DRBD 8.4.2 설치(액티브 및 백업) 노드 구성은 동일합니다.

1. 액티브 및 백업 노드에 DRBD 컴파일 환경을 설치합니다.

# yum -y install gcc flex wget make kernel-devel kernel-headers Git libxslt rpm-build automake autoconf

2. DRBD 설치 파일을 다운로드합니다

# wget http://oss.linbit. com/drbd/8.4/drbd-8.4.2.tar.gz

3. DRBD 파일의 압축을 풀고 설치합니다

#tar -zvxf drbd-8.4.2.tar.gz
# cd drbd-8.4.2
drbd-8.4.2]# ./configure --prefix=/usr/local/drbd --with-km
drbd-8.4.2]# make KDIR=/usr/src/kernels/`uname -r`/
drbd-8.4.2]# make install

4. DRBDdrivermodule

drbd-8.4.2]# cd drbd
drbd-8.4.2]# make clean
drbd-8.4.2]# make KDIR=/usr/src/kernels/`uname -r`/
drbd-8.4.2]# cp drbd.ko /lib/modules/`uname -r`/kernel/lib/
drbd-8.4.2]# depmod              #创建模块依赖关系的列表
drbd-8.4.2]# cp /usr/local/drbd/etc/rc.d/init.d/drbd /etc/rc.d/init.d/
drbd-8.4.2]# chkconfig --add drbd
drbd-8.4.2]# chkconfig drbd on

IV , DRBD 구성 파일 정의 (활성 및 백업 노드 구성이 동일함)

rrreerreee
~]# cp /usr/local/drbd/etc/drbd.d/global_common.conf /usr/local/drbd/etc/drbd.d/global_common-bak.conf
~]# vi /usr/local/drbd/etc/drbd.d/global_common.conf
 global {
        usage-count yes;                         # 是否参加DRBD使用者统计.默认是yes
        # minor-count dialog-refresh disable-ip-verification
}

common {
        handlers {
                pri-on-incon-degr "/usr/lib/drbd/notify-pri-on-incon-degr.sh; /usr/lib/drbd/notify-emergency-reboot.sh; echo b > /proc/sysrq-trigger ; reboot -f";
                pri-lost-after-sb "/usr/lib/drbd/notify-pri-lost-after-sb.sh; /usr/lib/drbd/notify-emergency-reboot.sh; echo b > /proc/sysrq-trigger ; reboot -f";
                local-io-error "/usr/lib/drbd/notify-io-error.sh; /usr/lib/drbd/notify-emergency-shutdown.sh; echo o > /proc/sysrq-trigger ; halt -f";
        }

        startup {
                wfc-timeout 30;
                degr-wfc-timeout 30;
                outdated-wfc-timeout 30;
        }

        options {
                # cpu-mask on-no-data-accessible
        }

        disk {
                on-io-error detach;
                fencing resource-and-stonith;
                resync-rate 50M;                 # 设置主备节点同步时的网络速率最大值,单位是字节.
        }

        net {
                protocol C;                 # 使用协议C.表示收到远程主机的写入确认后,则认为写入完成.
                cram-hmac-alg sha1;                  # 设置主备机之间通信使用的信息算法.
                shared-secret "123456";
        }
}
~]# vi /usr/local/drbd/etc/drbd.d/Redis.res
 resource redis{  
        on master {  
                device          /dev/drbd1; #逻辑设备的路径  
                disk            /dev/sdb;  #物理设备  
                address         192.168.0.152:7788;  #IP和监听端口
                meta-disk       internal;  
        }  
        on slave {  
                device          /dev/drbd1;  
                disk            /dev/sdb;  
                address         192.168.0.153:7788;  
                meta-disk       internal;  
        }  
}
~]# modprobe drbd                     #载入DRBD模块
~]# lsmod |grep drbd                  #确认DRBD模块载入成功
drbd                  314184  0 
libcrc32c             1246  1 drbd
~]# drbdadm create-md redis                 #创建元数据
 --==  Thank you for participating in the global usage survey  ==--
The server's response is:

you are the 4070th user to install this version
md_offset 10737414144
al_offset 10737381376
bm_offset 10737053696

Found some data

 ==> This might destroy existing data! <==

Do you want to proceed?
[need to type &#39;yes&#39; to confirm] yes

Writing meta data...
initializing activity log
NOT initializing bitmap
New drbd meta data block successfully created.
success
~]# mkdir -p /usr/local/drbd/var/run/drbd
~]#  drbdadm up redis                             #启用资源
Device &#39;1&#39; is configured!
Command &#39;drbdmeta 1 v08 /dev/sdb internal apply-al&#39; terminated with exit code 20
~]# cat /proc/drbd                                #查看DRBD状态

******** ************************* ************************** ************************ *************************** *************

5. 마스터 노드 기본 노드 설정(마스터 구성)

version: 8.4.2 (api:1/proto:86-101)
GIT-hash: 7ad5f850d711223713d6dcadc3dd48860321070c build by , 2012-12-31 20:26:02
1: cs:Connected ro:Secondary/Secondary ds:Inconsistent/Inconsistent C r-----
ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:10485404
~]# mkdir /drbd                                   #为DRBD分区挂载创建路径
~]# drbdadm primary --force redis               #设置master角色为Primary
~]# mkfs.ext4 /dev/drbd1                          #格式化drbd1(逻辑设备)
 mke2fs 1.41.12 (17-May-2010)
文件系统标签=
操作系统:Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
655360 inodes, 2621351 blocks
131067 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=2684354560
80 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
正在写入inode表: 完成                            
Creating journal (32768 blocks):
Writing superblocks and filesystem accounting information: 完成
This filesystem will be automatically checked every 36 mounts or 180 days, whichever comes first.  
Use tune2fs -c or -i to override.

6. 동기 테스트:

마스터 작업:

~]# mount /dev/drbd1 /drbd                             #挂载DRBD分区
~]# df -h

슬레이브 동작:

文件系统              容量  已用  可用 已用%% 挂载点
/dev/sda3             8.7G  1.1G  7.3G  13% /
tmpfs                 497M     0  497M   0% /dev/shm
/dev/sda1             194M   64M  120M  35% /boot
/dev/drbd1            9.9G  151M  9.2G   2% /drbd
 ~]# ls
anaconda-ks.cfg  drbd-8.4.2  drbd-8.4.2.tar.gz  install.log  install.log.syslog
~]# cp drbd-8.4.2.tar.gz /drbd
~]# ll /drbd
总用量 676
-rw-r--r-- 1 root root 675803 10月 15 21:14 drbd-8.4.2.tar.gz
drwx------ 2 root root  16384 10月 15 21:07 lost+found
~]# umount /dev/drbd1                    #卸载挂载的DRBD分区
~]# drbdadm secondary redis              #主节点角色降级
~]# drbdadm primary redis                   #备节点设置成primary角色
~]# mount /dev/drbd1 /drbd              #备节点挂载DRBD分区
~]# df -h

테스트 완료~!

위 내용은 MySQL-CentOS6.5_x64 설치 및 구성 drbd8.4.2 샘플 코드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.