Re: [Sysadmins] Загрузка системы по PXE с корнем на iSCSI (make-initrd?)

2019-02-19 Пенетрантность Москаленко Алексей Владимирович

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?)

2019-02-19 Пенетрантность Michael A. Kangin

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?)

2019-02-17 Пенетрантность Evgeny Sinelnikov
пт, 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?)

2019-02-14 Пенетрантность Москаленко Алексей Владимирович

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?)

2019-02-14 Пенетрантность Michael A. Kangin

Посмотрите 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