Answer the question
In order to leave comments, you need to log in
Why do diskless clients take a long time to load via iSCSi?
The iSCSi server is MS Server 2016 Standard. Raised:
- DHCP (sends network settings, sends information - from where and what file to download (menu.lst config), which indicates possible boot options),
- WDS (sends menu.lst a list of possible boot options (grub). Boot option is one , namely the file containing all the information about the connection parameters to iSCSi)
- iSCSi (3 system images for 3 clients. Each image has its own purpose).
As a bootable system - Windows 7 Professional x64 sp1.
iPXE config:
#!ipxe
dhcp net0
set net0/gateway 192.168.1.111
set keep-san 1
sanboot iscsi:192.168.1.111::::iqn.romo
(Ps The third line is due to the fact that the Internet gateway (192.168.1.1) and the iSCSi server (192.168.1.111) are different machines. Without this parameter, the download does not work at all and rests on the blue screen 7b;
the last line is different for each of the computers, the iqn goal changes so that each computer boots from its own image, and not three from one.)
The network is gigabit, 80 megabytes per second one way flies confidently.
The problem is that the system hangs for a long time on the start animation of windows 7, that is, on multi-colored petals. Because of this delay, the download takes about 3 minutes, I didn’t measure it exactly. At the very beginning, I conducted experiments on virtual machines on which the server role was assigned to Server 2008, instead of WDS and dhcp there was the Tftpd64 program. The situation with long loading was the same. Then he transferred everything to physical machines and newer software, the situation has not changed. It's definitely not about the hardware - on the high-speed SSD server, the network works as it should. AND! As soon as this stage passes - everything starts to fly. Programs open quickly, no delays in work. If you do not tell the user that everything is loaded over the network, the user believes that the system has a ssd (I'm not exaggerating).
I assume that the whole point is still in the content of the iPXE config. I ask for the help of those who have dealt with a similar construction of a diskless boot system.
Answer the question
In order to leave comments, you need to log in
I took it off, looked at it, I can’t bring this information to specific conclusions and decisions yet. The situation is as follows: For almost 2 minutes (105 seconds, to be more precise) at startup, the system does nothing at all. After this time, the loading system shows signs of life and quickly completes the process. The most important points: (in the third photo, the Disk IO parameter is highlighted in dark green)
Initialization time (as I understand it) of system files:
From this photo you can see that at the very beginning rdyboost.sys is loaded first, then there is a long pause, after which it loads msiscsi.sys and everything else in no time.
If you look at the server itself, you will notice the following: as soon as ipxe is initialized and transferred to the Windows loader, the server shows that there is a connection to the target. After about 10 seconds, the status is translated into "not connected". On the client, at this moment, I observe an already converging pulsating picture of windows with the inscription Windows 7 below. For about a minute and a half, nothing changes. And now, after this time, the target status is again transferred to connected, and the client begins to show signs of continuing the download.
Reflecting on all sorts of reasons, I did the following:
-Reduced the need to start rdyboost.sys from the mandatory (Start parameter in the registry) "0" to the on-demand "3" (blue screen 7b)
-Changed the need to run msiscsi.sys to mandatory 0 (by default 3) (did not give a result)
-Created a group of drivers, added to this group everything that belongs to iscsi in system drivers (iscsiprt, msiscsi) set this group as high as possible in system file group priority list. Got up right after Boot Bus Extender. If you set the group higher, almost at the very beginning of the attempt to boot, a blue screen 7b crashes. (no result)
-In the parameter HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Disk "TimeOutValue" changed the value from 60 s. up to 15 s. Assuming the system tries to poll the hard drive first (which doesn't exist), giving some timeout to retry the request. (no result)
-Downloaded another ipxe.krn file, assuming that there might be something wrong with it. (visually, the loading at the ipxe initialization stage has changed a little, the system takes just as long to load)
SOLUTION crept up unnoticed:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Psched
Start change from 1 to 0.
New data:
Boot phases
Processes
do boot profiling: remove the boot trace and check what slows down the process.
https://habr.com/ru/post/106684/
Romk_Ride
SOLUTION crept up unnoticed: change
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Psched
Start from 1 to 0.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question