linux – drbd服务无法启动/ WFConnection

前端之家收集整理的这篇文章主要介绍了linux – drbd服务无法启动/ WFConnection前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我最近将我的drbd设置从Ubutnu迁移到了centos 7,我得到了一个奇怪的错误

我可以正常加载和卸载模块,整个过程似乎都有效

#>modprobe drbd
#>lsmod | grep drbd
drbd       373504     2
...

我现在可以发布drbdadm up drbdres命令,查看资源的状态,似乎一切正在运行.我也可以卸载模块

#>rmmod drbd
#>lsmod | grep drbd
#>drbdadm cstate all
0: Failure: (127) Device minor not allocated 
...
#> lsmod | grep drbd
drbd       373504     2
...

所以我可以加载模块,drbdadm能够加载它但不会带来任何资源,而文档声称init脚本会这样做,所以drbd显然不会以这种方式初始化模块.

Normally,all resources configured in /etc/drbd.conf are automatically
enabled upon system startup by the /etc/init.d/drbd init script.

(来源:http://www.drbd.org/users-guide-8.3/s-enable-disable.html)

如果我尝试运行init.d脚本,我会得到一个奇怪的错误

#>/etc/init.d/drbd start script i get:
Starting DRBD resources:
sh: modinfo: command not found
open(".") Failed: permission denied
#>

我能够找到发生这种情况的线路:

$DRBDADM="drbdadm"
...

out=$(&DRBDADM sh-nop 2>&1); ex=?
[[ $ex = 127 ]] && exit 5 #LSB for "not installed"
log_daemon_msg "Starting DRBD resources"
if [[ $ex != 0 ]] ; then
    printf"\n%s\n" "$out" >&2
    exit1
fi

我插入一行来记录$ex,它说“3”,所以这似乎意味着:

drbdadm sh-nop返回“open(”.“)失败:权限被拒绝”这是错误“3”.

我不知道这应该告诉我什么,跑步

#>drbdadm sh-nop

不会在终端返回任何内容或写入我知道的日志.我也无法在任何调用open(“.”)的文件中找到一个点.

我不是linux上的专家,ecs特别是centOS / redhat,因为我习惯debian,我只能说Ubuntu 14.04在drbd83下运行良好.我现在已经转换到了centOS 7上的drbd84,文档没有说明触摸我的配置模块部分的变化.
唯一的问题是我不能再将元数据存储在内部,因为整个drbd设备将作为磁盘传递给虚拟机.

我希望错误在于我“以debian方式做事”因为我找不到drbd的任何配置问题.

我会附加我的配置:

global {
    usage-count no;
}

common {
    syncer {
        rate 100M;
    }

}
resource drbdres {
    device minor 0;

    net {
        protocol C;
    }
    startup {
        wfc-timeout     0;
        degr-wfc-timeout    60;
    }
    disk {
        on-io-error     detach;
    }
    #NODES

    on node1 {
        disk        /dev/mapper/vmachines-lvdrbd;
#       device      drbddisk;
        address     192.168.8.133:7788;
        Meta-disk   /dev/mapper/vmachines-lvdrbdMeta; #!internal
    }

    on node2 {
        disk        /dev/mapper/vmachines-lvdrbd;
#       device      drbddisk;
        address     192.168.8.132:7788;
        Meta-disk   /dev/mapper/vmachines-lvdrbdMeta; #!internal
    }
}

如果我连接我的第二台主机测试设置而不管这些问题,都启动drbd,并且卡在状态“WFConnection”,他们为其他主机配置的IP地址是正确的,所以我假设服务确实不是由drbdadm启动,它只是加载模块,如果没有加载.

感谢任何提示或帮助,

问候
BillDoor

(原件:https://stackoverflow.com/questions/25680702/centos-7-drbd-cannot-start-service)

编辑:

我配置的存储库:

Centos7 base
ELrepo e17
Centos7 extras
centos7 updates

我安装了包:

drbd84-utils.x86_64
drbd84-utils-sysvinit.x86_64
kmod-drbd.x86_64

我发布了yum install drbd84来安装drbd

解决方法

我知道这是一个老帖子,但我想我会为想要/需要启用SELinux的人提供解决方案.通过为DRBD创建本地SELinux策略来执行此操作.

如果你为“drbd_t”grep’/var/log/audit/audit.log’,你会看到一些错误;将这些错误传递给’audit2allow’将允许您生成一个新的SELinux策略包,允许先前被拒绝的操作.然后,您可以使用’semodule -i’安装该策略:

# grep drbd_t /var/log/audit/audit.log | audit2allow -M drbdlocal
******************** IMPORTANT ***********************
To make this policy package active,execute:

semodule -i drbdlocal.pp

# semodule -i drbdlocal.pp

如果您遇到另一个SELinux错误,您可以重新运行上述两个命令来创建/安装新的策略包,直到您没有更多错误.

原文链接:https://www.f2er.com/linux/399353.html

猜你在找的Linux相关文章