1.问题
我们有时候在通过云主机挂载云硬盘的时候会出现挂载不上的问题。像这中问题有多种情况导致的。
看一下我遇到的两种情况。
1.权限问题
在cinder节点查看 /var/log/cinder/cinder-volume.log日志
Failed to write persistence file: /var/lib/cinder/volumes/volume-84332a56-2463-4c9a-81f6-1d0f41fd1c39
Original exception being dropped: ['Traceback (most recent call last):\n', ' File "/usr/local/lib/python2.7/dist-packages/cinder/utils.py", line 453, in robust_file_write\n delete=False) as tf:\n', ' File "/usr/lib/python2.7/tempfile.py", line 462, in NamedTemporaryFile\n (fd, name) = _mkstemp_inner(dir, prefix, suffix, flags)\n', ' File "/usr/lib/python2.7/tempfile.py", line 239, in _mkstemp_inner\n fd = _os.open(file, flags, 0600)\n', ' File "/usr/local/lib/python2.7/dist-packages/eventlet/green/os.py", line 109, in open\n fd = __original_open__(file, flags, mode)\n', "OSError: [Errno 13] Permission denied: '/var/lib/cinder/volumes/volume-84332a56-2463-4c9a-81f6-1d0f41fd1c39aAZac6'\n"]
发现要挂载的卷信息所在的/var/lib/cinder/volumes/volume-84332a56-2463-4c9a-81f6-1d0f41fd1c39aAZac6目录 ,cinder-volume服务所在的用户cinder 无法进行读写操作,权限拒绝.查看该目录文件所在用户组:
发现不知道什么原因变为root的用户和用户组了,导致cinder用户无法进行读写操作。
改变该cinder文件夹的所属用户和用户组为cinder后
再重新执行虚拟机挂载命令后,可以重新挂载。
2.环境问题
在nova-compute的节点上的nova-compute.log中发现 no iscsi protocol be found 错误,初步断定
是没有安装open-iscsi 和 tgt导致的,因为nova.conf配置的是iscsi_helper是tgtadm 。所以需要安装tgt和open-iscsi.如下命令
apt-get install tgt
apt-get install open-iscsi
安装后 service tgt restart service open-iscsi restart service nova-compute restart 重启相关服务。
重新挂载云硬盘成功。