DRBD 作为 XEN VM 的块设备 (Centos 5.3)

Sab*_*oth 1 xen drbd

我在 2 个服务器节点之间设置了一个 drbd 资源 - 在两者之间进行同步测试时一切正常。(我想使用 drbd、xen 和 heartbeat 创建一个 HA 集群)

但是,当我尝试使用 Centos 作为来宾操作系统创建 XEN VM 时,我进入安装时的分区屏幕,但是当我选择分区类型时,下一个屏幕显示以下错误:

“发生错误 - 未找到可在其上创建新文件系统的有效设备。请检查您的硬件以查找此问题的原因。”

这是第一次尝试创建这样的设置,搜索谷歌并没有太大帮助......

我的 DRBD 和 XEN 配置文件....

DRBD(只是相关的部分)

在 xennode0 { 设备 /dev/drbd0; 磁盘 /dev/sda5; 地址XXXX:7788;内部灵活元磁盘;}

在 xennode1 { 设备 /dev/drbd0; 磁盘 /dev/sda5; 地址XXXX:7788;元磁盘内部;}

XEN

kernel = "/boot/xeninstall/vmlinuz" ramdisk = "/boot/xeninstall/initrd.img" extra = "text" name = "VM" maxmem = 3000 memory = 3000 vcpus = 4 on_poweroff = "destroy" on_reboot = "restart " on_crash = "restart" vfb = [ ] disk = [ "phy:/dev/drbd0,sda1,w", "tap:aio:/srv/xen/xenswap.img,sda2,w" ] vif = [ "mac =00:16:3e:11:67:ae,bridge=xenbr0"] 根 = "/dev/sda1 ro"

提前致谢!

Sab*_*oth 5

好吧,好像我把头发拉出来解决了这个问题,让我回答我的问题,省去别人拉头发的麻烦:)

解决方案:

在玩完之后,大量的谷歌搜索和重新分区等......我来到了一个像魅力一样工作的设置。

可能有一种更快的方法来做到这一点,但我不会让这个答案过于复杂

我对这样的分区进行了标准安装(我有一个 500g 的硬盘):

/boot 100mb 
/swap 4gb 
/     40gb 
Run Code Online (Sandbox Code Playgroud)

磁盘空间的余额将保留为未分区的空间。

然后,我按照以下步骤创建了一个名为 /dev/sda4 的主分区:

~: fdisk /dev/sda
~: (fdisk shell) p4   (for primary partition # 4)
~: (fdisk shell) t    (hit t and enter to edit the partition type)
~: (fdisk shell) 08e  (Linux LVM)
Run Code Online (Sandbox Code Playgroud)

重启服务器使新分区生效。

现在通过以下方式创建逻辑卷:

~: pvcreate /dev/sda4
~: vgcreate xenvg -s 4M /dev/sda4    # (xenvg is the name of my virtual group, you can rename it)
~: lvcreate -L400G -n xenroot xenvg  # (xenroot is going to be my drbd  resource and root partition for my DomU)
~: lvcreate -L4G  -n xenswap xenvg   # (xenswap is my swap file for my DomU)
Run Code Online (Sandbox Code Playgroud)

现在您有了正确的分区,您可以继续使用以下配置文件指令 (drbd.conf) 安装 DRBD

仅在此处显示 2 个重要指令...

{
device  /dev/drbd0;
disk    /dev/xenvg/xenroot;
}
Run Code Online (Sandbox Code Playgroud)

你的 XEN VM 配置文件需要看起来像这样(同样,只是重要的一个)

{
disk = [ "drbd:xenvm,xvda,w","phy:xenvg/xenswap,xvdb,w" ]
}
Run Code Online (Sandbox Code Playgroud)

我希望这可以帮助那里的人...