公司Openstack要装volume服务,内部文档中装了iscsitarget,
问题出现了:无法动态加载配置,Volume服务不能用。
在网上找很多资料,最后看了篇E文才搞定:http://www.cyberciti.biz/tips/howto-setup-linux-iscsi-target-sanwith-tgt.html
原理是这样的:ubuntu下安装targe服务有2个包都能完成,一个是 iscsitarget,另外一个是tgt
这俩活宝的区别就在于:
A)iscsitarget 是ietd.conf 为主配置文件,用ietadm动态加载;
B)而tgt 是 targets.conf,tgtadm动态加载
而Openstack E版本(Essex)用的 tgtadm动态加载 ,悲催啊!
而网上N多教程都按照前一个来。。。
>>>2012.8.24 补遗,此处 判断有误:
真实情况是 Openstack的 volume 主配置文件有这么一项:”iscsi_helper = tgtadm “
前面说的现象没错,主要是由这个配置决定的!
1 默认选项 iscsi_helper = ietadm 对应的组件是 iscsitarget
2 如果选择 iscsi_helper = tgtadm 对应的组件是 tgt
而公司的文档 默认是 使用了 iscsi_helper = tgtadm
但悲催的是 2个组件居然都装了进去 。。。
>>>2012.8.24 补遗结束
大概的配置方法,网上教程已经很多了。以下文字只是记录一下 我怎么解决这个问题的思路:
1 在翻看文档的时候 我发现 E文 有如下提示:
原来 人家的 target进程是 tgtd 来负责的?
2 而我安装的服务器上呢?
target进程是ietd来负责而不是tgtd!
按照这个思路,我尝试着删除 iscsitarget , 装上tgt 就搞定!
又一血的教训啊 !要真正明白原理 就TMD必须看E文的东西,这事困扰我2天了。
最近在网上找的资料都是 按照 iscsitarget 的套路来的,这个严重误导了我。。。
转载于:https://blog.51cto.com/jzzone/971567