Trang ChínhTìm kiếmĐăng kýĐăng Nhập

 

 Ứng dụng Heartbeat và DRDB cho Mysq

Go down 
Tác giảThông điệp
buidunghai
Admin
buidunghai

Nam Aries Tổng số bài gửi : 83
Points : 258
Reputation : 0
Birthday : 16/04/1990
Join date : 31/12/2009
Age : 29
Đến từ : yên bái
Job/hobbies : sinh viên

Ứng dụng Heartbeat và DRDB cho Mysq Empty
Bài gửiTiêu đề: Ứng dụng Heartbeat và DRDB cho Mysq   Ứng dụng Heartbeat và DRDB cho Mysq I_icon_minitimeTue Jan 12, 2010 1:58 pm

Là một giải pháp khá phổ biến hiện nay là dùng DRBD để cấu trúc hệ thống HA Cluster cho Mysql . Có thể hiểu , DRBD là chương trình cho phép ta xây dựng RAID1 thông qua mạng . Nói dể hiểu hơn 1 chút thì DRBD là chương trình dùng mạng để đồng bộ dữ liệu partition của HD . Vì vậy , thật ra không cần phải là Mysql, khi xây dựng xong chương trình này, ta sẽ có thể ứng dụng cho apache , mail , ftp , ldap vv… . Với nhu cầu của thành viên HVA nênbài viết này đặt trọng tâm ứng dụng DRBD cho Mysql .

Cấu hình DRBD yêu cầu ta tạo các phần vùng meta data để quản lý phần vùng và tạo phần vùng chứa dữ liệu .

Cài đặt
# yum –y drbd kmod-drbd


Tạo 2 tất cả là 2 phần vùng tại HD /dev/sdb như sau ,
# fdisk /dev/sdb
/dev/sdb1 – Meta data (128M hoặc 256M)
/dev/sdb2 – Data


Chú ý : Để tránh tình trạng lãng phí tài nguyên giải quyết domain , nên cấu hình/etc/hosts tương ứng cho mạng LAN của bạn .

Sau khi fdisk xong , sẽ có kết quả như sau
コマンド (m でヘルプ): p

Disk /dev/sdb: 73.4 GB, 73407820800 bytes
255 heads, 63 sectors/track, 8924 cylinders
Units = シリンダ数 of 16065 * 512 = 8225280 bytes
デバイス Boot Start End Blocks Id System
/dev/sdb1 1 65 522081 83 Linux
/dev/sdb2 66 8924 71159917+ 83 Linux



Copy file /usr/share/doc/drbd/drbd.conf vào /etc/ như sau

/etc/drbd.conf
resource d0 {
protocol C;
startup {
degr-wfc-timeout 120; # 2 minutes.
}
disk {
on-io-error detach;
}
net {
}
syncer {
rate 500M;
al-extents 257;
}
on hvaonline.net {
device /dev/drbd0;
disk /dev/sdb2;
address 192.168.10.10:7788;
meta-disk /dev/sdb1[0];
}
on hvaonline.net {
device /dev/drbd0;
disk /dev/sdb2;
address 192.168.10.11:7788;
meta-disk /dev/sdb1[0];

}
}


Ý nghĩa của các thông số có ý nghĩa như sau ,

Resource : Đặt tên cho resource .

Protocol : Hãy chọn option này là C . Vì trong readme nó ghi vậy .

C: write IO is reported as completed, if we know it has
reached _both_ local and remote DISK.
* for critical transactional data.
B: write IO is reported as completed, if it has reached
local DISK and remote buffer cache.
* for most cases.
A: write IO is reported as completed, if it has reached
local DISK and local tcp send buffer. (see also sndbuf-size)
* for high latency networks
**********
# uhm, benchmarks have shown that C is actually better than B.
# this note shall disappear, when we are convinced that B is
# the right choice "for most cases".
# Until then, always use C unless you have a reason not to.
# --lge
#**********


on-io-error : Xử lý khi bị I/O error

pass_on : Report the io-error to the upper layers. (chưa hiểu lắm )

call-local-io-error : Chạy script mang tên call-local-io-error

detach : The node drops its backing storage device, and continues in disk less mode. (Chưa hiểu lắm)

Đọc module của drbd
lsmod |grep drbd
modprobe drbd minor_count=1


Kết quả khi nhúng drbd vào .
# modinfo drbd
filename: /lib/modules/2.6.9-42.ELsmp/kernel/drivers/block/drbd.ko
author: Philipp Reisner , Lars Ellenberg
description: drbd - Distributed Replicated Block Device v8.0.7
license: GPL
parm: minor_count:Maximum number of drbd devices (1-255)
alias: block-major-147-*
parm: allow_oosONT USE!
license: GPL
author: Evgeniy Polyakov
description: Generic userspace <-> kernelspace connector.
parm: cn_idx:Connector's main device idx.
parm: cn_val:Connector's main device val.
vermagic: 2.6.9-42.ELsmp SMP 686 REGPARM 4KSTACKS gcc-3.4




Tạo metadata.(chạy trên cả 2 máy chủ . )
# drbdadm create-md d0


Khởi động và kiểm tra như sau . (chạy trên cả 2 máy chủ )

# drbdadm up all
# cat /proc/drbd
# service drbd start



Vào host 192.168.10.10, dùng lệnh sau để thành primary
#drbdadm -- --overwrite-data-of-peer primary all



-> Phần 2 : Tạo filesystem cho 2 node

Tại bước này , sẽ tạo file system và mount nó theo các trình tự sau

Tại Primary : 192.168.10.10
# mke2fs -j /dev/drbd0



Mount /dev/drdb0 đã tạo
#mkdir /mnt/drbd
#mount /dev/drbd0 /mnt/drbd/


Xong bước này xem như đã có sẵn những thứ cần thiết để đồng bộ dữ liệu .

Thử failover bằng tay như sau

tại Primary node : 192.168.10.10
# umount /mnt/drbd/
# drbdsetup /dev/drbd0 secondary


Tại Secondary node : 192.168.10.11
# drbdsetup /dev/drbd0 primary
# mount /dev/drbd0 /mnt/drbd/


Cuối cùng , tạo một file nào đó và xem phía primary:192.168.10.10 có tồn tại nó hay không .


-> Phần 3 : Setup Mysql để đồng bộ dữ liệu .

1. Cài đặt mysql -> Tìm trên HVA
2. cấu hình mysql

Phần này là dễ nhất , bạn chỉ cần ấn định tại basedir vào dưới directory /mnt/drdb là xong .

Ví dụ file cấu hình .

# Example MySQL config file for medium systems.

# The following options will be passed to all MySQL clients
[client]
#password = your_password
port = 3306
socket = /tmp/mysql.sock

# Here follows entries for some specific programs

# The MySQL server
[mysqld]
port = 3306
socket = /tmp/mysql.sock
basedir=/mnt/drbd/data
skip-locking
key_buffer = 16M
max_allowed_packet = 1M
table_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M


# Replication Master Server (default)
# binary logging is required for replication
log-bin


# required unique id between 1 and 2^32 - 1
# defaults to 1 if master-host is not set
# but will not function as a master if omitted
server-id = 1

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates

[isamchk]
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

[myisamchk]
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

[mysqlhotcopy]
interactive-timeout




-> Phần 4 : Dùng heartbeat để giám sát 2 máy chủ .

Đón đọc và làm thử post kết quả lên cho vui nha bà con
albino albino albino albino
Về Đầu Trang Go down
http://buidunghai.no1.vn
 
Ứng dụng Heartbeat và DRDB cho Mysq
Về Đầu Trang 
Trang 1 trong tổng số 1 trang

Permissions in this forum:Bạn không có quyền trả lời bài viết
Skill .Ebook. Hack>security :: Thể loại :: *****(^_^) Web,hosting (^_^)-
Chuyển đến