Điểm:3

Thêm máy chủ vào cấu hình DRBD9 đang chạy

lá cờ mx

Tôi đang sử dụng CentOS7 và tôi hiện có nút HA hai cụm đang chạy máy điều hòa nhịp tim (1.1.23-1.el7_9.1) và DRBD (kmod-drbd90-9.0.22-3.el7_9). Phân vùng sao lưu cho ổ đĩa DRBD được mã hóa LUKS. Chúng tôi đang thêm máy chủ thứ ba vào ngăn xếp, nhưng sau khi cập nhật cấu hình, ổ đĩa drbd trên máy chủ mới không kết nối.

Trạng thái

Trạng thái hiện tại, như được hiển thị bởi hộp mới là:

[root@svr3]# trạng thái drbdadm
vai trò drbd0: Trung học
  đĩa: Không nhất quán
  kết nối svr1: Đang kết nối
  kết nối svr2: Đang kết nối

Từ chính, trạng thái hiển thị là:

[root@svr1]# trạng thái drbdadm
vai trò drbd0: Chính
  đĩa: UpToDate
  vai trò svr2: Phụ
    đĩa ngang hàng: UpToDate
  kết nối svr3: Độc lập

Cấu hình DRBD

Cấu hình hiện tại cho drbd0 tài nguyên là:

tài nguyên drbd0 {
  giao thức C;
  thiết bị/dev/drbd0;
  đĩa /dev/sdb1;
  meta-đĩa nội bộ;
  trên svr1 {
    địa chỉ 10.10.11.1:7789;
    nút-id 1;
  }
  trên svr2 {
    địa chỉ 10.10.11.2:7789;
    nút-id 2;
  }
  trên svr3 {
    địa chỉ 10.10.11.3:7789;
    nút-id 3;
  }
  lưới kết nối {
    máy chủ svr1 svr2 svr3;
  }
}

Trước khi thêm svr3, cấu hình trên svr1 và svr2 như sau:

tài nguyên drbd0 {
  giao thức C;
  thiết bị/dev/drbd0;
  đĩa /dev/sdb1;
  meta-đĩa nội bộ;
  trên svr1 {
    địa chỉ 10.10.11.1:7789;
    nút-id 1;
  }
  trên svr2 {
    địa chỉ 10.10.11.2:7789;
    nút-id 2;
  }
  lưới kết nối {
    máy chủ svr1 svr2;
  }
}

Các đĩa DRBD đã được tạo với tập lệnh sau trên tất cả các hộp:

drbdadm tạo-md --force drbd0
drbdadm lên drbd0

Chỉ trên đĩa chính, phần sau cũng được chạy để thiết lập đĩa:

dd if=/dev/zero of=/dev/sdb1 bs=128M đếm=10
drbdadm chính --force drbd0

cryptsetup -q --keyfile /path/to/keyfile luksFormat /dev/drbd0
cryptsetup --key-file /path/to/keyfile luksOpen /dev/drbd0 luks-drbd

mkfs.ext4 /dev/mapper/luks-drbd

Cấu hình máy tạo nhịp tim

Các tài nguyên DRBD trong máy tạo nhịp tim đã được định cấu hình bằng tập lệnh sau. Tài nguyên PCS không thay đổi vì nó được thiết lập ban đầu để cho phép nút thứ ba trong tương lai.

tài nguyên máy tính tạo drbd0_data ocf:linbit:drbd drbd_resource=drbd0
cái chủ tài nguyên drbd0_clone drbd0_data \
  master-max=1 master-node-max=1 clone-max=3 clone-node-max=1 \
  thông báo = đúng
tài nguyên máy tính tạo drbd0_luks ocf:vendor:luks \
  --group=drbd_resources
pcs tạo tài nguyên drbd0_fs ocf:heartbeat:Filesystem \
  device=/dev/mapper/luks-drbd thư mục=/mnt/data fstype=ext4 \
  --group=drbd_resources

đơn đặt hàng ràng buộc của chiếc quảng cáo drbd0_data sau đó bắt đầu drbd_resources
pcs ràng buộc colocation thêm drbd_resources \
  với drbd0_clone INFINTITY with-rsc-role=Master
thứ tự ràng buộc chiếc drbd0_luks sau đó drbd0_fs

(Các drbd0_luks tài nguyên là tài nguyên tùy chỉnh mà chúng tôi cung cấp về cơ bản chạy cryptsetup luksOpen|luksClose trên phân vùng LUKS nếu thích hợp).

Trạng thái máy tạo nhịp tim hiển thị như sau:

Trực tuyến: [ svr1 svr2 svr3 ]

Tài nguyên đang hoạt động:

 Bộ chính/phụ: drbd0_clone [drbd0_data]
     Bậc thầy: [ svr1 ]
     Nô lệ: [ svr2 svr3 ]
 Nhóm tài nguyên: drbd_resources
     drbd0_luks (ocf::vendor::luks): Đã bắt đầu svr1
     drbd0_fs (ocf::heartbeat::Filesystem): Đã bắt đầu svr1

Nỗ lực kết nối

Tôi đã thử nhiều lần lặp lại quy trình sau:

[root@svr1]# drbdadm ngắt kết nối drbd0

[root@svr2]# drbdadm ngắt kết nối drbd0

[root@svr3]# drbdadm ngắt kết nối drbd0
[root@svr3]# drbdadm connect --discard-my-data drbd0

[root@svr1]# drbdadm kết nối drbd0
drbd0: Lỗi: (162) Yêu cầu cấu hình không hợp lệ
Lệnh 'drbdsetup connect drbd0 3' kết thúc bằng mã thoát 10

[root@svr2]# drbdadm kết nối drbd0
drbd0: Lỗi: (162) Yêu cầu cấu hình không hợp lệ
Lệnh 'drbdsetup connect drbd0 3' kết thúc bằng mã thoát 10

Sau này, đầu ra của trạng thái drbdadm như hình ở đầu bài.Tôi gặp lỗi tương tự nếu tôi cố chạy drbdadm điều chỉnh drbd0 trên svr1 hoặc svr2.

Nếu tôi cố chạy drbdadm xuống drbd0 trong khi drbd0_luks resource được bật, tôi nhận được thông tin sau:

[root@svr1]# drbdadm xuống drbd0
drbd0: Thay đổi trạng thái không thành công: (-12) Thiết bị được mở bởi ai đó
thông tin bổ sung từ kernel:
/dev/drbd0 được mở bởi cryptsetup (pid 11777) lúc 2021-11-01 16:50:51
Lệnh 'drbdsetup down drbd0' kết thúc bằng mã thoát 11

Nếu tôi vô hiệu hóa drbd0_luks tài nguyên, tôi có thể chạy drbdadm xuống drbd0, nhưng điều chỉnh lệnh không thành công như sau:

[root@svr1]# drbdadm điều chỉnh drbd0
0: Lỗi: (162) Yêu cầu cấu hình không hợp lệ
Lệnh 'drbdsetup đính kèm 0 /dev/sdb1 /dev/sdb1 internal' được kết thúc bằng mã thoát 10

vì vậy tôi cho rằng ít nhất tôi cũng cần nhiều như vậy để thiết lập và chạy. Tại thời điểm này, tôi chỉ đang nắm lấy ống hút, nhưng tôi không chắc ống hút chính xác tiếp theo sẽ với lấy là gì.

Matt Kereczman avatar
lá cờ nr
Bạn sẽ thấy thêm thông tin trong nhật ký, nhưng ruột của tôi nói rằng bạn có thể không có chỗ cho siêu dữ liệu (nút thứ 3) bổ sung.Khi bạn tạo siêu dữ liệu lần đầu tiên (trên 2 nút), bạn có thể đã chuyển cờ `create-md` cờ `--max-peers=3` để dự trữ một số vị trí bitmap bổ sung. Với khối lượng LUKS và FS đã được tạo, việc mở rộng siêu dữ liệu sẽ phải ghi đè lên phần cuối của FS. Vui lòng đăng bất kỳ nội dung nào từ nhật ký trong khi chạy `drbdadm up` / `drbdadm down` và điều đó sẽ cung cấp thêm thông tin.
lá cờ mx
Dựa trên những gì tôi đã thấy và kết hợp với việc đọc (và cuối cùng là hiểu) blog này: https://www.neteye-blog.com/2020/04/adding-node-to-drbd-device-with-wrong- max-peers/ Tôi nghĩ rằng đó chính xác là tình huống mà chúng tôi đang gặp phải. Thật không may, cách chúng được xây dựng ban đầu khiến chúng tôi không thể mở rộng phân vùng hỗ trợ đó, vì vậy tôi đoán chúng tôi sẽ xây dựng lại trong tương lai như là lựa chọn ít đau đớn nhất.
Matt Kereczman avatar
lá cờ nr
Bạn cũng có thể chuyển đổi sang siêu dữ liệu bên ngoài (giả sử bạn có một số thiết bị khối nhỏ khác mà bạn có thể sử dụng cho nó), nhưng nó sẽ yêu cầu `umount` và `down` trên các thiết bị DRBD.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.