LINUX.ORG.RU
ФорумAdmin

build farm for gentoo

 , , , ,


0

1

В общем, интересует вопрос. У кого как организована, если вообще организована, централизованная сборка бинарных пакетов для генты на слабеньких тачках.

Что имеется у меня сейчас, парк слабеньких машин amd/intel + дедик в хетцнере i7-6700+64Gb Ram, задача развернуть на них генту, но чтобы компиляции шла на дедике, оттуда только получать бинарные пакеты.

В чём заключается текущая сложность и запарка: есть готовая гента скомпиленная под amd с флагами -mtune/-march=native, есессно при переносе на дедик rootfs и попытке в неё зачрутится получаю закономерный облом. Пробовал emerge --root=/rootfs --config-root=/rootfs --root-deps но в таком случае многие пакеты не могут найти необходимые build-time deps, что-то ругается на отсутствие пистона. Для примера были взяты libreoffice (сразу спотыкается на поиске cups), qemu (ругается на отсутсвие gtk2 или gtk3)

★★★★★

Последнее исправление: daemonpnz (всего исправлений: 1)

Вам ссылку на гайд о настройке distcc скинуть или на гайд по разворачиванию генты?

Deleted
()
Ответ на: комментарий от Deleted

Спасибо, distcc не надо, удалённость конечных тачек от дедика (т.е build farm) будет узким местом в производительности. Если бы дедик был бы под боком, то я бы ещё подумал на distcc, да и то, пробовали, знаем: где-то выйгрыша нет, где-то есть но несущественен, а где-то и что-то вообще не собирается.

Я так понимаю именно у тебя сборка для слабых тачек организована через distcc, правильно? Мнение учтено.

daemonpnz ★★★★★
() автор топика
Последнее исправление: daemonpnz (всего исправлений: 2)

А тем временем запустил пересборку @system, посмотрим какая доля пакетов не соберётся и с чем это будет связано.

daemonpnz ★★★★★
() автор топика

централизованная сборка бинарных пакетов для генты на слабеньких тачках.

Calculate, sabayon.

devl547 ★★★★★
()
Ответ на: комментарий от devl547

Ещё раз, нужна именно своя сборочка, а не от calculate и sabayon в которых собирают -march/-mtune=i686.

ЗЫ.

-Сок свежий?
-Грушёвый.

daemonpnz ★★★★★
() автор топика
Последнее исправление: daemonpnz (всего исправлений: 1)
Ответ на: комментарий от daemonpnz

поднимай lxc кол-во тачек с разными процовыми семействами, в них собирай, делай репы, подключай на целевых тачках и в путь

Deleted
()
Ответ на: комментарий от Deleted

поднимай lxc кол-во тачек с разными процовыми семействами

Вот тут вот поподробнее. Сейчас на дедике крутится lxc контейнер с гентой, на серваке i7-6700, на клиентской тачке допустим bdver2. Что нужно сделать?

daemonpnz ★★★★★
() автор топика
Ответ на: комментарий от daemonpnz

Итак, пока идёт сборочка, в выводе натыкаюсь на то, что не находятся заголовочные файлы на этапе configure, например для GLU: GL/gl.h. Судя по всему он ищет не в rootfs системы, которая собирается, а в / самой фермы. Как его в этом переубедить?

daemonpnz ★★★★★
() автор топика
Последнее исправление: daemonpnz (всего исправлений: 1)
Ответ на: комментарий от daemonpnz

чтоб делать пакеты именно под архитектуру каждого семейста, поднимаешь Дженту, в make.conf прописываешь нужную march/mtune, собираешь пакеты, потом репо расшариваешь по http/ftp/rsync илм ещё как-то, а можно просто делать march=x86-64 mtune=generic, чтоб одна репка для всех

Deleted
()

Небольшое лирическое отступление, те пакеты, которые собрались таки, например gcc, собираются ~2 раза быстрее, чем на FX-8350 разогнанном до 4700MHz.

daemonpnz ★★★★★
() автор топика
Ответ на: комментарий от Deleted

чтоб делать пакеты именно под архитектуру каждого семейста, поднимаешь Дженту, в make.conf прописываешь нужную march/mtune, собираешь пакеты

и тут мы возвращаемся к

есть готовая гента скомпиленная под amd с флагами -mtune/-march=native, есессно при переносе на дедик rootfs и попытке в неё зачрутится получаю закономерный облом.

ибо инструкции не совпадают между процами

LXC насколько я понимаю сэмулировать недостающие инструкции не сможет.

daemonpnz ★★★★★
() автор топика
Последнее исправление: daemonpnz (всего исправлений: 2)
Ответ на: комментарий от daemonpnz

собери Дженту с инструкциями дедика.

зачем тебе туда её переносить? подними lxc и собирай там. почему не сможет-то? какую march/mtune пропишешь, под такую march/mtune и будут собраны пакеты.

Deleted
()
Последнее исправление: Lifun (всего исправлений: 1)
Ответ на: комментарий от Deleted

Итак, есть дедик, в нём LXC, развёрнутый из последнего stage3, всё работает. Если я поменяю в make.conf march/mtune и начну пересобирать систему, то я напорюсь на то, что потом у меня этот LXC контейнер не запустится. Или ты предлагаешь делать только --buildpgkonly ?

Как сейчас работает частично: Итак, есть дедик, в нём LXC, развёрнутый из последнего stage3, всё работает. Есть дира /farm/c3po, в которой развёрнута rootfs клиентской тачки. Через emerge --root=/farm/c3po --config-root=/farm/c3po --root-deps идёт сборка системы именно для /farm/c3po.

daemonpnz ★★★★★
() автор топика
Последнее исправление: daemonpnz (всего исправлений: 1)
Ответ на: комментарий от daemonpnz

укажи march=x86-64 mtune=generic и собирай пакеты для 64-битных машин, в другой lxc разверни 32-битную и собирай для 32-битных машин

Deleted
()
Ответ на: комментарий от Deleted

Спасибо, но мне не надо x86-64-generic и i686-generic мне тоже не надо. Нужны конкретные march/mtune, например, пока я тестирую эту весчь дома, нужен march/mtune=bdver2

daemonpnz ★★★★★
() автор топика
Ответ на: комментарий от daemonpnz

тогда для каждого конкретного march/mtune свой lxc/virtual_machine.

ну или как-то автоматизировать процесс с добавлением переменных окружения и раскладывания собранных по конкретным репкам

Deleted
()
Последнее исправление: Lifun (всего исправлений: 1)

Сам не разворачивал, но подозреваю, что то, что ты хочешь, реализуется через sys-devel/crossdev, самописный скрипт и cron

XMs ★★★★★
()
Ответ на: комментарий от anonymous

Аноныч, но бульдозер как-то не особо вписывается в

парк слабеньких машин amd/intel

Я бы даже s771-квад не назвал слабеньким.

devl547 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.