Установка Афанасия (сервер и рендер) на локальной машине

Ответить
Аватара пользователя
romanvolodin
Сообщения: 4
Зарегистрирован: Чт ноя 02, 2017 8:51 am
Откуда: Питер

Установка Афанасия (сервер и рендер) на локальной машине

Сообщение romanvolodin »

Хочу использовать Афанасия на локальной машине как очередь задач. Т.е. накидал заданий, а они ночью рендерятся.

До этого пользовался Афанасием, но это было в студиях и всё настраивал сисадмин. Сейчас приходится разбираться самому.
Документация, как справочник, вполне себе неплоха, но как руководство - не очень. Приходится много гуглить и теребить сисадмина (а он подробностей не помнит, потому что "настроил и забыл" :).

В итоге имею две основные цели:
- Получить работающий Афанасий.
- Получить документацию по установке и настройке, записав свои действия.


Итак, имею виртуальную машину с Убунтой 20.04 и Афанасий 3.1.1:

1) Скачиваю https://sourceforge.net/projects/cgru/f ... z/download

2) Распаковываю архив и запускаю установку:

Код: Выделить всё

sudo ./install_cgru.sh
Отвечаю Y на вопросы об установке зависимостей.

3) Запускаю Keeper, вижу, что на иконке нет зеленой буквы R. Значит что-то незапустилось, выясняю что:

Код: Выделить всё

systemctl status afrender.service
systemctl status afserver.service
С первой командо всё ок. Вторая говорит "нет такого сервиса"

4) Запускаю:

Код: Выделить всё

sudo systemctl enable --now /opt/cgru/afanasy/systemd/afserver.service
5) Настроили блендер, смогли запустить задачу на рендер.
В папку /tmp считает, в другую не хочет, говорит "недостаточно прав"

6) Создаём файл /opt/cgru/afanasy/nonrootuser
И вписываем туда своего пользователя

7) Перезапускаем сервисы:

Код: Выделить всё

sudo systemctl restart afserver.service
sudo systemctl restart afrender.service
Всё еще "недостаточно прав". Перезагрузка так же не помогла.

8) Помогло следующее - заменить имя пользователя, от которого запускается сервер:

Код: Выделить всё

sed --in-place "s/User=render/User=$USER/g" /opt/cgru/afanasy/systemd/afrender.service
sudo systemctl enable --now /opt/cgru/afanasy/systemd/afserver.service
sudo systemctl restart afrender.service
После этого всё заработало. Я смог отправить задачи на рендер из Блендера и Нюка, всё посчиталось.


Вопросы:
1) Почему сервис afserver не запускается сам? Потому что сервер, чаще всего, не нужен на пользовательской машине?
2) Почему не сработал /opt/cgru/afanasy/nonrootuser? Для чего он нужен?
3) Всё ли я сделал правильно? Или что-то упустил? Чтобы не огрести проблем в будущем.
Аватара пользователя
Timur
Site Admin
Сообщения: 178
Зарегистрирован: Вс июл 09, 2017 4:59 pm
Откуда: Королёв
Контактная информация:

Re: Установка Афанасия (сервер и рендер) на локальной машине

Сообщение Timur »

Здравствуйте!

На сервере надо ещё afanasy-server пакет устанавливать:
https://cgru.readthedocs.io/en/latest/i ... x-packages

Код: Выделить всё

sudo ./install_cgru.sh
С переходом на SystemD все настройки сервисов, в том числе и пользователя идёт через настройки (оверрайды) SystemD.
По SystemD есть куча докумантации.

Файл /opt/cgru/afanasy/nonrootuser был во времена init.d. Сейчас его по идее быть не должно, в том числе и в документации.
Может он остался с прошлых времён? Или я что-то упустил и где-то он создаётся или есть в документации?

ps
Я бы запускал рендер на ферме от специального пользователся даже для локального рендера, чтоб отслеживать кто что создал, и почему это не может быть render?
Хотя, если ферма чисто для одной машины и пользователя, то возможно проще запускать от основного пользователя машины.
Тимур Хайрулин
CGRU 3.3.1 Ubuntu 22.04LTS, MS Windows 10 (clients only).
Аватара пользователя
romanvolodin
Сообщения: 4
Зарегистрирован: Чт ноя 02, 2017 8:51 am
Откуда: Питер

Re: Установка Афанасия (сервер и рендер) на локальной машине

Сообщение romanvolodin »

Timur писал(а): Чт фев 25, 2021 8:16 am На сервере надо ещё afanasy-server пакет устанавливать:
https://cgru.readthedocs.io/en/latest/i ... x-packages
Да, это понятно. И я его установил. Несколько смутило, что надо явно выполнить

Код: Выделить всё

sudo systemctl enable --now /opt/cgru/afanasy/systemd/afserver.service
чтобы запустить сервер Афанасия.


Timur писал(а): Чт фев 25, 2021 8:16 am С переходом на SystemD все настройки сервисов, в том числе и пользователя идёт через настройки (оверрайды) SystemD.
Спасибо, почитаю. Скорее всего, вернусь с вопросами :)


Timur писал(а): Чт фев 25, 2021 8:16 am Файл /opt/cgru/afanasy/nonrootuser был во времена init.d. Сейчас его по идее быть не должно, в том числе и в документации.
Может он остался с прошлых времён? Или я что-то упустил и где-то он создаётся или есть в документации?
Нет, текущей документации его нет, только что проверил. Его упомянул сисадмин и я его отрыл в какой-то древней документации.


Timur писал(а): Чт фев 25, 2021 8:16 am ps
Я бы запускал рендер на ферме от специального пользователся даже для локального рендера, чтоб отслеживать кто что создал, и почему это не может быть render?
Хотя, если ферма чисто для одной машины и пользователя, то возможно проще запускать от основного пользователя машины.
Здесь не понятно, потому что не понимаю как Афанасий работает с пользователями.
"запускал рендер на ферме от специального пользователся даже для локального рендера" - имеется в виду запускать сервис afrender от пользователя render? Тогда рендер будет запущен от пользвателя render?
"чтоб отслеживать кто что создал, и почему это не может быть render" - это фразу вообще не понял.
Аватара пользователя
Timur
Site Admin
Сообщения: 178
Зарегистрирован: Вс июл 09, 2017 4:59 pm
Откуда: Королёв
Контактная информация:

Re: Установка Афанасия (сервер и рендер) на локальной машине

Сообщение Timur »

1. Чтобы поставить афсервер, надо запустить:

Код: Выделить всё

sudo ./install_afserver.sh
Этот пакет как раз и устанавливает сервис. А все бинарники и так всегда приходят в afanasy-common.
https://cgru.readthedocs.io/en/latest/i ... ation.html

2. С переходом на SystremD сервисы стали более гибкими, и можно стандартыми задокументированными средствами менять пользователя серсиса, отпала необходимость придумывать для этого спецальный файл.

3. Афрендер с пользователями не работает. От кого запущен, тот и будет создавать файлы. Поэтому если будет запущен от специального пользователя, то можно будет отследить, что файл создал именно афрендер. И если это может помоч, то лучше настроить права пользователся render, а не сервис запускать от другого пользователя.
Тимур Хайрулин
CGRU 3.3.1 Ubuntu 22.04LTS, MS Windows 10 (clients only).
Ответить