Re: [Sysadmins] Загрузка системы по PXE с корнем на iSCSI (make-initrd?)
Michael A. Kangin писал 19.02.2019 22:19: В смысле - make-initrd? Да, правильно было бы сделать тематическую фичу. С документацией вот к сожалению не очень. По мотивам фичи multipath была сделана фича iscsi, которая добавляет в initrd iscsid/iscsiadm/ip/grep, содержимое /etc/iscsi, модуль iscsi_tcp и модуль для сетевой карты. Также был написан скрипт 075-iscsi, поднимающий интерфейс и логинящийся на target. Скрипт такого вида: #!/bin/sh msg='Starting iscsi...' run() { ifname="eth0" while ! ip li sh dev $ifname > /dev/null 2>&1; do echo "Waiting for interface $ifname to appears..."; sleep 5; done ip li set dev $ifname up ip a a dev $ifname 192.168.0.10/24 ip r a default via 192.168.0.1 while ! ip li sh dev $ifname | grep "UP,LOWER_UP" > /dev/null 2>&1; do echo "Waiting for link up..."; sleep 5; done iscsid iscsiadm -m node -l -T iqn.2014-12.local.iscsi.iscsihost:vm.target } Имя интерфейса, его настройки и имя target'а прибиты гвоздями. Попутно обнаружилась проблема в tools/put-file - elfcheck неадекватно реагирует на симлинки на каталог, которые есть в /etc/iscsi. Пришлось добавить объезд: [ -f "$workdir"/fn ] && elfcheck -f - < "$workdir"/fn > "$workdir"/fn.elf || true Сама target сконфигурирована с опцией node.startup=onboot, в iscsid.conf выставлено iscsid.safe_logout=Yes, в опции соответствующего интерфейса в etcnet добавлено KEEP_UP=yes. Система (UEFI) успешно загружается с target'а с помощью iPXE (sanboot --filename=EFI\altlinux\grubx64.efi ), в initrd поднимает интерфейс и логинится на target, после чего штатным образом монтирует корень и загружается. При остановке/перезагрузке также все выключается штатно. Окультурить бы теперь все это, особенно в части автодетекта модуля сетевой карты, передачи настроек интерфейса и имени target'а... ___ Sysadmins mailing list Sysadmins@lists.altlinux.org https://lists.altlinux.org/mailman/listinfo/sysadmins
Re: [Sysadmins] Загрузка системы по PXE с корнем на iSCSI (make-initrd?)
On 02/18/2019 12:44 AM, Evgeny Sinelnikov wrote: Насколько я понимаю, основная доступная наработка - это сборка нового образа с помощью mkimage-profiles. В смысле - make-initrd? Да, правильно было бы сделать тематическую фичу. С документацией вот к сожалению не очень. ___ Sysadmins mailing list Sysadmins@lists.altlinux.org https://lists.altlinux.org/mailman/listinfo/sysadmins
Re: [Sysadmins] Загрузка системы по PXE с корнем на iSCSI (make-initrd?)
пт, 15 февр. 2019 г. в 10:33, Москаленко Алексей Владимирович : > > Michael A. Kangin писал 14.02.2019 19:25: > > Посмотрите iPXE, оно умеет и ядро с инитрд грузить по iSCSI. > > https://ipxe.org/sanuri > Это похоже поможет загрузиться без использования TFTP/HTTP (iPXE я как > раз и использую для загрузки по сети много чего). Спасибо, посмотрю. > > > Хотя, поддержку в initrd это конечно не отменяет. > А без этого корень не смонтировать в любом случае. Может есть > какой-нибудь черновой вариант, типа фичи iscsi для make-initrd? Сеть > поднимать он умеет, осталось научить загрузить модули ядра, запустить > iscsid, залогиниться на таргет и смонтировать его как /... > > Попробую что-нибудь наваять сам, если никаких наработок нет... > Насколько я понимаю, основная доступная наработка - это сборка нового образа с помощью mkimage-profiles. Хотя, если взять то же ядро, что и в инсталяторе, то можно докидать cpio-файлов (он умеет распаковывать цепочку пристыкаованных друг за другоом архивов) с необходимыми файлами и сделать загрузку вручную, после этого можно добавить необходимый функционал в профиль mkimage для генерации образов. -- Sin (Sinelnikov Evgeny) ___ Sysadmins mailing list Sysadmins@lists.altlinux.org https://lists.altlinux.org/mailman/listinfo/sysadmins
Re: [Sysadmins] Загрузка системы по PXE с корнем на iSCSI (make-initrd?)
Michael A. Kangin писал 14.02.2019 19:25: Посмотрите iPXE, оно умеет и ядро с инитрд грузить по iSCSI. https://ipxe.org/sanuri Это похоже поможет загрузиться без использования TFTP/HTTP (iPXE я как раз и использую для загрузки по сети много чего). Спасибо, посмотрю. Хотя, поддержку в initrd это конечно не отменяет. А без этого корень не смонтировать в любом случае. Может есть какой-нибудь черновой вариант, типа фичи iscsi для make-initrd? Сеть поднимать он умеет, осталось научить загрузить модули ядра, запустить iscsid, залогиниться на таргет и смонтировать его как /... Попробую что-нибудь наваять сам, если никаких наработок нет... On 02/14/2019 02:46 PM, Москаленко Алексей Владимирович wrote: Встала задача - загружать бездисковую машину с iSCSI. Нативной поддержки загрузки с iSCSI у машины нет, поэтому видится вариант с загрузкой ядра+initrd по PXE, далее монтирование корня с iSCSI. Не пытался ли кто-нибудь реализовать такое в инфраструктуре Altlinux? С загрузкой ядра и initrd вопросов нет, а как правильно корень с iSCSI смонтировать? В make-initrd похоже поддержки корня на iSCSI нет (судя по https://bugzilla.altlinux.org/show_bug.cgi?id=27354). Может, есть какие-либо наработки в этой области? ___ Sysadmins mailing list Sysadmins@lists.altlinux.org https://lists.altlinux.org/mailman/listinfo/sysadmins
Re: [Sysadmins] Загрузка системы по PXE с корнем на iSCSI (make-initrd?)
Посмотрите iPXE, оно умеет и ядро с инитрд грузить по iSCSI. https://ipxe.org/sanuri Хотя, поддержку в initrd это конечно не отменяет. On 02/14/2019 02:46 PM, Москаленко Алексей Владимирович wrote: Встала задача - загружать бездисковую машину с iSCSI. Нативной поддержки загрузки с iSCSI у машины нет, поэтому видится вариант с загрузкой ядра+initrd по PXE, далее монтирование корня с iSCSI. Не пытался ли кто-нибудь реализовать такое в инфраструктуре Altlinux? С загрузкой ядра и initrd вопросов нет, а как правильно корень с iSCSI смонтировать? В make-initrd похоже поддержки корня на iSCSI нет (судя по https://bugzilla.altlinux.org/show_bug.cgi?id=27354). Может, есть какие-либо наработки в этой области? ___ Sysadmins mailing list Sysadmins@lists.altlinux.org https://lists.altlinux.org/mailman/listinfo/sysadmins