将一台xenserver进行改造以实现在上面建立NFS共享。
本操作具有一定的危险性,请勿在重要生产服务器上使用:如将破坏xenserver的lvm存储,上面的虚拟机将无法动态增加容量,只能通过挂载新空盘增容。
操作步骤
第一步:获取local storage的SR
输入xe sr-list type=lvm , 复制并记下SR的对应uuid :
xe sr-list type=lvm
uuid ( RO) : 0009054e-a1a9-e5fa-2f45-1b350cdd7323
name-label ( RW): Local storage
name-description ( RW):
host ( RO): cvicse-xen26
type ( RO): lvm
content-type ( RO): user
uuid ( RO) : 8f40bb14-0c28-3a64-fb5f-054f01bd1cab
name-label ( RW): Local storage
name-description ( RW):
host ( RO): cvicse-xen27
type ( RO): lvm
content-type ( RO): user
第二步:获取SR对应的PBD
输入xe pbd-list sr-uuid=你的SR UUID ,检测uuid对应的物理存储块pbd的uuid,复制并记下pbd对应uuid:
xe pbd-list sr-uuid=0009054e-a1a9-e5fa-2f45-1b350cdd7323
uuid ( RO) : f155ea86-650d-5e4c-5e0d-727e5e69d97b
host-uuid ( RO): eb97df4a-5bb5-436c-9421-c2fa46f28e8c
sr-uuid ( RO): 0009054e-a1a9-e5fa-2f45-1b350cdd7323
device-config (MRO): device: /dev/disk/by-id/scsi-3600508e00000000058f58715f28b3602-part3
currently-attached ( RO): true
第三步:断开本地存储的SR
xe pbd-unplug uuid=你的 PBD UUID ;
xe pbd-unplug uuid=f155ea86-650d-5e4c-5e0d-727e5e69d97b
第四步:移除本地存储的SR
xe sr-destroy uuid=你的SR UUID :
xe sr-destroy uuid= 0009054e-a1a9-e5fa-2f45-1b350cdd7323
至此可以看到xencenter上面的local storage不见了。
再次输入xe sr-list type=lvm 发现 local storage的确不存在了。
第五步:查看硬盘及分区信息
fdisk –l
Disk /dev/sda: 145.9 GB, 145999527936 bytes
255 heads, 63 sectors/track, 17750 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 499 4008186 83 Linux
/dev/sda2 500 998 4008217+ 83 Linux
/dev/sda3 999 19457 148271917+ 83 Linux
确定将dev/sda3作为nfs。
第七步:建立ext3文件系统
mkfs –t ext3 /dev/sda3
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
16826368 inodes, 33640110 blocks
1682005 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=0
1027 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 11239424, 20480000, 23887872
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 20 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
第七步:建立NFS 服务器
修改/etc/exports 使其异步存储。
vi /etc/exports
/home/share 192.168.55.* (rw,sync,no_root_squash)
实时生效指令:service nfs restart
第八步:实现自动挂载dev/sda3到/home/share
修改 /etc/fstab 自动挂载 /dev/sda3。
/dev/sda3 /home/share ext3 defaults 0 0
实时生效指令:mount /dev/sda3 /home/share
备注:自动挂载时,如果挂载不上,请换一个挂载路径,比如:/home/share不能挂载,
一般来说,直接挂到 “/”下,是不能自动挂载的。
第九步,开放111端口和2049端口
1、可以停止防火墙:service iptables stop
2、也可以修改/etc/sysconfig/iptables开放 111和 2049端口
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 111 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 2049 -j ACCEPT
第十步:只监听本地回环
1、 使得 /etc/sysconfig/network
NETWORKING=yes
2、 使得 /etc/sysconfig/portmap
# PMAP_ARGS=-l portmap
只监听本地回环,注释掉即可
第十一步:
建立spool,使得两台机器在一个spool下,再建立共享NFS storage,至此xenserver的NFS双机共享完成。
错误检查
连接不上nfs服务
首先检查:
1. 启动portmap #service portmap start
2. 启动nfs service nfs start
3. 检测是否成功 rpcino –t 192.68.*.* nfs
(rpcinfo 命令行实用程序对 RPC 服务器进行远程过程调用 (RPC) 并报告发现的情况。)-t 为使用tcp传输协议调用。
若报错 connection refused program is not available
解决方法 重启机器,关闭防火墙 service iptables stop
再开启一遍服务。
转载地址:http://99jty.com/?p=100
参考文档:http://bbs.vmsky.com/forum.php?mod=viewthread&tid=19564