Files
Personal/NEBULA/nebula.md
2026-03-22 21:45:39 +00:00

126 lines
4.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# И так. Я решил поднять небулу
## Мной, в качестве сервера выбран debian 13 (16Cores, 32GB RAM + 2tb SSD)
## Обязательно проверяйте, чтобы у вашего хостера/home-server была виртуализация
### Начало установки
## Для начала установим MariaDB сервер да и nginx
```
apt install nginx certbot python3-certbot-nginx -y
apt-get install mariadb-server curl gnupg2 -y
mysql
CREATE DATABASE opennebula;
GRANT ALL PRIVILEGES ON opennebula.* TO 'oneadmin' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
EXIT;
```
После этого сделаем парочку очень важных шагов
Поменяем наш hostname
`hostname opennebula`
И заменим хостнейм возле нашего внешнего IP
```
nano /etc/hosts добавляем наш текущий hostname туда
```
## Затем начнём установку самой небулы
Сначала скачаем и добавим GPG ключ
```
curl -fsSL https://downloads.opennebula.io/repo/repo2.key| gpg --dearmor -o /etc/apt/trusted.gpg.d/opennebula.gpg
```
Затем скачаем саму небулу
```
echo "deb https://downloads.opennebula.io/repo/7.1/Debian/13 stable opennebula" | sudo tee /etc/apt/sources.list.d/opennebula.list
```
Обновим и установим репозитроий с небулой
```
apt-get update -y
apt-get install opennebula opennebula-fireedge opennebula-gate opennebula-flow -y
```
После успешной установки запустим следующую команду для установки необходимых зависимостей
```
/usr/share/one/install_gems
```
# Теперь настроим нашу небулу
```
nano /etc/one/oned.conf
```
И в этом файле мы меняем следующие строчки
```
DB = [ BACKEND = "sqlite",
TIMEOUT = 2500 ]
```
На эти
```
DB = [ BACKEND = "mysql",
SERVER = "localhost",
PORT = 0,
USER = "oneadmin",
PASSWD = "password",
DB_NAME = "opennebula",
CONNECTIONS = 25,
COMPARE_BINARY = "no" ]
```
Сохраняем изменения
И после этого сгенерим пароль oneadmin при помощи
```
cat /var/lib/one/.one/one_auth
```
После этого
```
systemctl start opennebula opennebula-fireedge opennebula-flow opennebula-gate
systemctl enable opennebula opennebula-fireedge opennebula-flow opennebula-gate
```
Думали всё?
Начинаем дебажить
В целом, нам, для начала, необходимо создать Host. Это место, где будут крутиться наши виртуалки
Имя хоста обязательно должно совпадать с записью в `/etc/hosts`, так-же, если хост находится на одном с небулой сервере, то необходимо что-бы он был с ip 127.0.0.1
Далее
Проверим возможность Oneadmin общаться с самим собой
```
su - oneadmin
ssh -o StrictHostKeyChecking=no localhost
```
Если нас пустило без пароля - шик
Пишем
```
usermod -a -G libvirt,kvm oneadmin
```
После этого мы почти готовы поднимать VM, но ещё не совсем
```
ln -s /usr/bin/qemu-system-x86_64 /usr/bin/qemu-kvm-one
systemctl restart libvirtd
```
Далее `nano /etc/libvirt/qemu.conf`
И туда пишем
```
user = "oneadmin"
group = "oneadmin"
dynamic_ownership = 1
```
После
```
apt-get install -y apparmor-utils
aa-complain /usr/sbin/libvirtd
systemctl restart libvirtd
chown -R oneadmin:oneadmin /var/lib/one/datastores
chmod -R 770 /var/lib/one/datastores
```
```
Установим "гуакд"
```
systemctl enable --now opennebula-guacd
```
Проверим его работоспособность
`ss -tlnp | grep 4822`
Далее идём в
```
nano /etc/one/sunstone-server.conf
```
И убеждаемя, что в самом конце этого файла у нас написанно
```
:private_fireedge_endpoint: http://localhost:2616
:public_fireedge_endpoint: http://ip_addr_of_your_server(Domain):2616
:fireedge_verify_ssl: false
```