我的 ubuntu 16.04 启动时间一直很长(几分钟)。当我运行
systemd-analyze blame
第一行是
2min 687ms open-iscsi.service
该盒子确实设置了一个 iscsi 驱动器(一个单独的 NAS 盒子),但我 99% 的时间都关闭这个驱动器,这可以解释较长的启动时间。
我的问题是,如何设置我的系统,以便等待 iscsi 连接失败不会减慢启动过程?
我尝试过的事情:
我尝试在 /etc/iscsi/iscsid.conf 中将 replacement_timeout 设置为 -1
node.session.timeo.replacement_timeout = -1
但这并不能避免2分钟的等待时间。
编辑:附加信息
1/ /etc/fstab 中没有该磁盘的条目
2/ 服务状态提供一些信息
$ service open-iscsi status
● open-iscsi.service - Login to default iSCSI targets
Loaded: loaded (/lib/systemd/system/open-iscsi.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since mer. 2017-12-20 13:35:25 CET; 5h 23min ago
Docs: man:iscsiadm(8)
man:iscsid(8)
Process: 1511 ExecStart=/sbin/iscsiadm -m node --loginall=automatic (code=exited, status=8)
Process: 1500 ExecStartPre=/bin/systemctl --quiet is-active iscsid.service (code=exited, status=0/SUCCESS)
Main PID: 1511 (code=exited, status=8)
déc. 20 13:35:25 hippo-camp iscsiadm[1511]: iscsiadm: initiator reported error (8 - connection timed out)
déc. 20 13:35:25 hippo-camp iscsiadm[1511]: iscsiadm: Could not login to [iface: default, target: whitebox.target-2, portal: 192.168.0.99,3260].
déc. 20 13:35:25 hippo-camp iscsiadm[1511]: iscsiadm: initiator reported error (8 - connection timed out)
déc. 20 13:35:25 hippo-camp iscsiadm[1511]: iscsiadm: Could not log into all portals
déc. 20 13:35:25 hippo-camp iscsiadm[1511]: Logging in to [iface: default, target: whitebox.target--1, portal: 192.168.0.99,3260] (multiple)
déc. 20 13:35:25 hippo-camp iscsiadm[1511]: Logging in to [iface: default, target: whitebox.target-2, portal: 192.168.0.99,3260] (multiple)
déc. 20 13:35:25 hippo-camp systemd[1]: open-iscsi.service: Main process exited, code=exited, status=8/n/a
déc. 20 13:35:25 hippo-camp systemd[1]: Failed to start Login to default iSCSI targets.
déc. 20 13:35:25 hippo-camp systemd[1]: open-iscsi.service: Unit entered failed state.
déc. 20 13:35:25 hippo-camp systemd[1]: open-iscsi.service: Failed with result 'exit-code'.
答案1
解决方法:一种解决方法是禁用 iscsi 服务,如下所示:
systemctl disable iscsi.service
systemctl disable iscsid.service
systemctl stop isci.service
systemctl stop iscsid.service
更令人满意的解决方案是能够使 iscsi 连接在启动过程中不阻塞。
答案2
介绍:
我有 (4) 台运行 Ubuntu 20.04 LTS 的 Raspberry Pi 和 Docker 主机。其中一台主机-“主持人 1在这个答案中 - 由于 ,启动时间比同类中的其他 (3) 个长了近 2 分钟open-iscsi
。
我尝试快速重新启动服务并重新启动,但问题仍然存在。
简短回答:
缓存open-iscsi
导致了问题。我将其清除,以下方法解决了问题:
sudo rm -rf /etc/iscsi/nodes
sudo rm -rf /etc/iscsi/send_targets
sudo systemctl reboot
随后该服务与其他 (3) 个主机一样迅速崛起。
较长的答案:
为了找出故障,我进行了以下故障排除:
对比分析:
服务依赖关系排序:
由于有 (4) 个主机,使用比较分析system-analyze plot
可以全面、细致地了解一项服务相对于其他服务何时、何地和多长时间上升,从而得出答案:
sudo systemd-analyze plot > host1.svg
sudo systemd-analyze plot > host2.svg
sudo systemd-analyze plot > host3.svg
sudo systemd-analyze plot > host4.svg
我将这些文件 SCP 到我的 Macbook 中:
scp [email protected]:/home/ubuntu/host1.svg .
scp [email protected]:/home/ubuntu/host2.svg .
scp [email protected]:/home/ubuntu/host3.svg .
scp [email protected]:/home/ubuntu/host4.svg .
然后我右键单击open with
(4) 个文件并选择我的 Web 浏览器。现在我有一个选项卡,其中包含我可以比较的每个文件。
所有服务都以相同的顺序启动,因此我能够排除 open-iscsi 在网络完全启动之前启动的问题。因此所有主机都以相同的顺序加载相同的服务。因此我可以排除服务排序依赖关系是罪魁祸首。
Open-iSCSI 配置文件:
接下来我比较了open-iscsi
(4) 个主机的 eqch 配置文件:
/etc/iscsi/initiatorname.iscsi
/etc/iscsi/iscsid.conf
这些仅在 CHAP 身份验证设置方面有所不同。除此之外,所有主机的 open-iscsi 配置文件之间都完全相同。因此,我可以排除 open-iscsi 配置不一致是导致问题的原因。
缓存:
配置后我更改了密码主持人 1。我怀疑这可能会给我带来麻烦。所以我想:这是一个免费的解决方案,可以消除连接缓存:
sudo rm -rf /etc/iscsi/nodes
sudo rm -rf /etc/iscsi/send_targets
sudo systemctl reboot
重启后我又做了system-analyze plot
一次主持人 1:
sudo systemd-analyze plot > host1-Post-Cache-Delete.svg
这表明问题已得到解决,问题在于 open-iscsi 缓存中的错误 CHAP 或其他连接信息。
结论:
如果您担心删除任何内容,请执行以下操作:
cp -rp /etc/iscsi/nodes /etc/iscsi/nodes-BACKUP
但除此之外,我建议直接清除缓存,而不是像我一样进行冗长的故障排除;希望这可以节省其他人的宝贵时间。一旦您知道问题出在哪里,问题就很容易解决 ;-)
答案3
因此,对于那些因为启动时 iscsi 速度慢而偶然遇到这个问题的人来说。
就我的情况而言,当我只想要真实 IP 时,我却意外地以某种方式添加了 truenas 服务器的所有 docker IP。
systemd-analyze blame
向我展示了 2 分钟的 iscsi.service
journalctl -r | grep iscsi
显示它正在尝试连接多个 docker 地址。
Jun 05 14:16:40 nobara iscsid[1589]: iscsid: connect to 172.17.48.228:3260 failed (Network is unreachable)
Jun 05 14:16:29 nobara iscsid[1589]: iscsid: connect to 172.17.227.35:3260 failed (Network is unreachable)
Jun 05 14:16:29 nobara iscsid[1589]: iscsid: connect to 172.17.48.228:3260 failed (Network is unreachable)
Jun 05 14:16:29 nobara iscsid[1589]: iscsid: connect to 172.16.0.1:3260 failed (Network is unreachable)
Jun 05 14:16:29 nobara iscsid[1589]: iscsid: connect to 172.17.175.190:3260 failed (Network is unreachable)
Jun 05 14:16:29 nobara iscsid[1589]: iscsid: connect to 172.17.99.166:3260 failed (Network is unreachable)
Jun 05 14:16:29 nobara iscsid[1589]: iscsid: connect to 172.17.176.217:3260 failed (Network is unreachable)
Jun 05 14:16:29 nobara iscsid[1589]: iscsid: connect to 172.17.0.10:3260 failed (Network is unreachable)
Jun 05 14:16:29 nobara iscsid[1589]: iscsid: connect to 172.17.211.202:3260 failed (Network is unreachable)
Jun 05 14:16:29 nobara iscsid[1589]: iscsid: connect to 172.17.227.35:3260 failed (Network is unreachable)
Jun 05 14:16:29 nobara iscsid[1589]: iscsid: connect to 172.17.48.228:3260 failed (Network is unreachable)
Jun 05 14:16:29 nobara iscsid[1589]: iscsid: connect to 172.17.175.190:3260 failed (Network is unreachable)
Jun 05 14:16:29 nobara iscsid[1589]: iscsid: connect to 172.17.211.202:3260 failed (Network is unreachable)
Jun 05 14:16:18 nobara iscsid[1589]: iscsid: connect to 172.17.176.217:3260 failed (Network is unreachable)
Jun 05 14:16:18 nobara iscsid[1589]: iscsid: connect to 172.17.0.10:3260 failed (Network is unreachable)
Jun 05 14:16:18 nobara iscsid[1589]: iscsid: connect to 172.17.211.202:3260 failed (Network is unreachable)
Jun 05 14:16:18 nobara iscsid[1589]: iscsid: connect to 172.17.227.35:3260 failed (Network is unreachable)
Jun 05 14:16:18 nobara iscsid[1589]: iscsid: connect to 172.17.48.228:3260 failed (Network is unreachable)
Jun 05 14:16:18 nobara iscsid[1589]: iscsid: connect to 172.17.0.1:3260 failed (Network is unreachable)
Jun 05 14:16:18 nobara iscsid[1589]: iscsid: connect to 172.17.175.190:3260 failed (Network is unreachable)
Jun 05 14:16:18 nobara iscsid[1589]: iscsid: connect to 172.17.176.217:3260 failed (Network is unreachable)
Jun 05 14:16:18 nobara iscsid[1589]: iscsid: connect to 172.17.0.10:3260 failed (Network is unreachable)
我发现我已经注册了很多节点
sudo iscsiadm -m node
我必须在每个
sudo iscsiadm --mode node --portal 172.17.227.35:3260 --targetname .2005-10.org.freenas.ctl:t -o delete