Khuyến mãi
Trang chủ » Hướng dẫn » Hướng dẫn cài đặt và cấu hình DRBD trên CentOS 7

Hướng dẫn cài đặt và cấu hình DRBD trên CentOS 7

1. Chuẩn bị

  • 2 server sử dụng OS CentOS 7
  • 2 ổ cứng được gắn vào các node
  • Cấu hình hostname cho các server
  • Mở port 7788 trên các server

Cụ thể:

Node 1

OS: CentOS 7 64 bit
Device: /dev/vda - 10GB
        /dev/vdb - 10GB
Hostname: node1
IP: 192.168.1.11
Gateway: 192.168.1.1
Prefix: 24

Node 2

OS: CentOS 7 64 bit
Device: /dev/vda - 10GB
        /dev/vdb - 10GB
Hostname: node2
IP: 192.168.1.12
Gateway: 192.168.1.1
Prefix: 24

2. Các bước tiến hành

2.1 Cài đặt DRBD

  • Trước khi cài đặt, chúng ta phải cấu hình hostname cho mỗi node và ghi chúng vào hosts
[root@node1 ~] hostnamectl set-hostname node1
[root@node2 ~] hostnamectl set-hostname node2
  • Ghi thêm vào hosts của mỗi server
vi /etc/hosts
192.168.1.11 node1
192.168.1.12 node2
  • Tiếp theo, chúng ta cài đặt DRBD trên cả 2 server. Đầu tiên, chúng ta thêm repos của DRBD và key
rpm -ivh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-elrepo.org
  • Trước khi cài, chúng ta kiểm tra phiên bản mới nhất của DRBD.
yum info *drbd* | grep Name

Name        : drbd90-utils
Name        : drbd90-utils-sysvinit
Name        : kmod-drbd90

Sau khi chạy lệnh trên, chúng ta thấy phiên bản hiện tại là drbd90

  • Chúng ta tiếp tục bước cài đặt DRBD trên cả 2 server.
yum -y install drbd90-utils kmod-drbd90

Chú ý: Nếu key trên bị lỗi, hãy làm bước sau để import các key có sẵn ở /etc/pki/rpm-gpg/ và làm lại bước cài đặt trên.

rpm --import /etc/pki/rpm-gpg/*
  • Kích hoạt module DRBD trên cả 2 server
modprobe drbd
  • Kiểm tra lại xem DRBD đã hoạt động:
lsmod | grep drbd

drbd                  405309  0
libcrc32c              12644  2 xfs,drbd

2.2 Cấu hình DRBD

File cấu hình chính của DRBD nằm là /etc/drbd.conf. File này gọi lại các file cấu hình được khai báo trong phần nội dung. Các file .res dùng để khai báo tài nguyên trên mỗi server mà DRBD sử dụng.

Chúng tạo một file có tên testdata1.res với nội dung như sau:

vi /etc/drbd.d/testdata1.res

resource testdata1 {
protocol C;
volume 0 {
device /dev/drbd0;
disk /dev/vdb1;
meta-disk internal;
}
volume 1 {
device /dev/drbd1;
disk /dev/vdb2;
meta-disk internal;
}
on node1 {
node-id 0;
}
on node2 {
node-id 1;
}
connection {
host node1 address 192.168.1.11:7789;
host node2 address 192.168.1.12:7789;
}
}

Giải thích:

  • resource testdata1: Tên của resource
  • Protocol C: Các resource được cấu hình để synchronous replication
  • node1node2: Danh sách các node và các tùy chọn bên trong
  • device /dev/drbd0: Xác định thiết bị logic được DRBD sử dụng (Nên đặt giống nhau ở trên 2 server)
  • disk /dev/vdb: Xác định thiết bị vật lý dùng để tạo ra thiết bị logic bên trên, và không nhất thiết phải cùng trên trên 2 server. Lưu ý bạn không được định dạng file hệ thống cho phân vùng này.
  • address 192.168.1.11:7789: Xác định địa chỉ IP và Port của mỗi server
  • meta-disk internal: Cho phép sử dụng Meta-data mức nội bộ

Sao chép file cấu hình sang server 2:

[root@node1 ~] scp /etc/drbd.d/testdata1.res node2:/etc/drbd.d/

2.3 Khởi động trên mỗi node

Trên server 1:

[root@node1 ~] drbdadm create-md testdata1

Trên server 2:

[root@node2 ~] drbdadm create-md testdata1

Khi thấy kết quả hiển thị như sau báo hiệu đã cấu hình thành công:

  --==  Thank you for participating in the global usage survey  ==--
initializing activity log
NOT initializing bitmap
Writing meta data...
New drbd meta data block successfully created.
success

2.4 Bật và kích hoạt DRBD daemon

Ở trên 2 server, chúng ta bật và cho DRBD khởi động cùng hệ thống

systemctl start drbd

systemctl enable drbd

2.5 Kích hoạt trên node chính

Tôi chọn node chính là node1, chúng ta cũng có thể chọn node2 làm node chính bằng cách chạy lệnh này lên node2.

[root@node1 ~] drbdadm primary testdata1 --force

Kiểm tra trạng thái:

[root@node1 ~]# drbd-overview

 0:testdata1/0  Connected Primary/Secondary UpToDate/UpToDate

Chú ý: Chúng ta kiểm tra liên tục bằng lệnh trên và khi nào lệnh trả về kết quả tương tự hoặc có chứa nội dung Connected Primary/Secondary thì mới có thể chuyển sang bước 2.6.

2.6 Tạo mà mount file system DRBD

Tạo một file system và mount, ghi dữ liệu lên nó. Các bước thực hiện trên node chính – node mà bạn đã kích hoạt ở bước 2.5

root@node1 ~]# mkfs.ext4 /dev/drbd0
[root@node1 ~]# mount /dev/drbd0 /mnt
[root@node1 ~]# touch /mnt/testfile
[root@node1 ~]# ll /mnt/
total 16
drwx------ 2 root root 1384 Oct  12 08:29 lost+found
-rw-r--r-- 1 root root    0 Oct  12 08:31 testfile

2.7 Test hoạt động replicate trên server 2

Chúng ta chuyển primary node sang node2 để kiểm tra dữ liệu có được replicate

Unmount file system trên node1

[root@node1 ~]# umount /mnt

Chuyển sang chế độ secondary node cho node1

[root@node1 ~] drbdadm secondary testdata1

Trên node2, chúng ta kích hoạt chế độ primary

[root@node2 ~] drbdadm primary testdata1

Mount và kiểm tra dữ liệu bên trong

[root@node2 ~]# mount /dev/drbd0 /mnt
[root@node2 ~]# ll /mnt/
total 16
drwx------ 2 root root 1384 Oct  12 08:29 lost+found
-rw-r--r-- 1 root root    0 Oct  12 08:31 testfile

Kết quả trên cho ta thấy, dữ liệu đã được replicate sang node2.

Chúc các bạn cài đặt thành công!

Hoangtd

Call Back Icon

Xin chào quý khách!

Quý khách đang cần tư vấn dịch vụ, xin vui lòng nhập số điện thoại để chúng tôi gọi lại.

Tổng đài 24/07: 1900 63 68 09

Đăng ký nhanh dịch vụ

Quý khách vui lòng gửi yêu cầu cho BKNS, chúng tôi sẽ liên hệ lại ngay với bạn.