dell md3200i mdss (企业管理) 安装的那点事儿(2)

 centos 6.3下:

yum install iscsi-initiator-utils.x86_64
yum install iscsi-initiator-utils-devel.x86_64
yum install device-mapper-multipath.x86_64
yum install device-mapper-multipath-libs.x86_64
yum install device-mapper-multipath.x86_64
yum install device-mapper-multipath-libs.x86_64

yum install postgresql-server.x86_64  #装postgresql 数据库

修改/etc/init.d/postgresql这个文件,指定数据库文件目录,日志文件等。

su postgres

show -R postgres:postgres /data/local/data

initdb --no-locale -D /data/local/data/

pg_ctl start -D /data/local/data/

/etc/fstab中添加,重启自动挂载。 

UUID=6c604036-912e-4f02-a7cd-452b4f8e3b49 /data1    ext3   defaults,_netdev  0  0

debian 6 下:

apt-get install open-iscsi multipath-tools

service open-iscsi restart
service multipath-tools restart

重启完open-iscsi 服务会在/etc/iscsi/initiatorname.iscsi 文件中自动生成一个类似如下的一串值,这个值就是InitiatorName,而且是唯一的。
InitiatorName=iqn.1993-08.org.debian:01:1ca9722138
1ca9722138 这个你可以自己改成自己服务器的ip地址,方便辨识,当然在这个网络中要是唯一的。

在看是否挂载上磁盘multipath -ll 遇到报错:

/proc/misc: No entry for device-mapper found
Is device-mapper driver missing from kernel?
Failure to communicate with kernel device-mapper driver.

解决方法:

modprobe dm-mod

service multipath-tools restart

即可解决。

如果存储上定义了主机,附加了映射,执行multipath -ll 出现这个,
Mar 30 23:24:04 | DM multipath kernel driver not loaded

可能需要重新登入,步骤如下:
iscsiadm -m node -U all #外接主机断开与存储连接。
iscsiadm -m discovery -t sendtargets -p 192.168.200.10
iscsiadm -m node -L all
multipath -ll
就可以看到已经挂载上映射的磁盘,并且在/dev/mapper/ 下可以看到,然后mkfs.ext3 /dev/mapper/xxxxx 对它进行格式化,就可以挂载到服务器的某个目录上了。

==============

后记:

本来想着两台主机同时挂载同一个卷,进行读写,但同时挂载可以实现,但同时读写却不能,(A、B两台服务器挂载同一个卷,在A主机上向挂载的卷中放入一个文件,在B主机的挂载分区中看不到这个文件,需要B断开挂载重新挂载才可以。。),网上搜帖子看到有人这么说:“windows2008  通过iscsi来做共享存储可以实现 但不是你这种实现方式 2008只能实现不同客户端共享这一个存储 并不是共享存储里面划分出来的同一个卷,因为windows 2008不是集群式文件系统,它是本地文件系统。无法实现同一个卷被两个客户端同时写入,只能是一个客户端挂载一个卷,如果是linux内核里面编译了集群式文件系统是可以实现同一个卷被多个客户端同时读写的。你现在这种用法本身是有问题的,写入的数据不可能实现共享的,还很容易丢失数据  生产环境千万不能这么用”。大概意思明白了。

原文地址:https://www.cnblogs.com/wangss/p/5949845.html