Open vAIR is a lightweight solution based on the vAIR project, designed for use as a development environment and virtualization system. The program operates in interactive mode, providing a flexible and convenient tool for managing virtual infrastructure.
To install Open vAIR on a clean Linux system, follow these steps. It is recommended to use Ubuntu 20.04, which is the most tested version. Ubuntu 22.04 is also supported.
-
Ensure all system packages are up to date. Execute the following commands:
sudo apt update && sudo apt upgrade -y
Important: Don't forget to restart the system after executing these commands to apply all changes.
-
Execute the following commands to create and configure a user:
-
Create a user:
sudo useradd -s /bin/bash -d /opt/aero -m aero
-
Assign necessary permissions:
sudo chmod +x /opt/aero
-
Add the user to the superuser list:
echo "aero ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/aero
-
Switch to the new user:
sudo -u aero -i
-
-
Download the project repository:
# GitHub git clone https://github.com/Aerodisk/openvair.git # GitFlic git clone https://gitflic.ru/project/aerodisk_open_vair/openvair.git # GitVerse git clone https://gitverse.ru/Aerodisk/openvair.git # GitLab git clone https://git.aerodisk.ru/openvair/openvair.git
-
Configure the configuration file:
vi ~/openvair/project_config.toml
Before installing Open vAIR, you need to set the login and password in
the /opt/aero/openvair/project_config.toml
file. This data is required for
system authorization and access to all application functions.
Configuration example:
[default_user]
login = ''
password = ''
Note: The login and password fields must be filled in by the user. Otherwise, the installation will be aborted.
If the application needs to be run on a separate host as a server, configure tunneling to the virtual network. Determine the local IP address of the host by executing the command:
ip a
Specify the obtained IP address in the configuration file:
[web_app]
host = '192.168.1.2'
port = 8000
- Run the installation script:
./openvair/install.sh
Upon completion of the installation, you will receive a message with the current application address, login, and password for working with the system.
To remove Open vAIR, run the uninstallation script:
./openvair/uninstall.sh
Documentation can be found in the /docs/build/index.html
file, which will be
created after the project installation. Documentation is also available at
the /docs/
endpoint after installation is complete.
The web-app daemon ensures automatic startup and restart of the main FastAPI
based application, which is responsible for API and GUI operations. The
application is accessible at the address specified in the web_app section of
the config.toml file. By default, this is http://127.0.0.1:8000
.
- Check daemon status:
sudo systemctl status web-app.service
- Restart daemon:
sudo systemctl restart web-app.service
- Stop daemon:
sudo systemctl stop web-app.service
- View daemon logs:
sudo journalctl -fu web-app.service
Service-layer daemons perform remote function calls of the service layer.
Each module has its own service-layer daemon. To check the status and view
logs, use similar commands, changing the service name to
<module_name>-service-layer.service
.
For example:
sudo systemctl status storage-service-layer.service
Domain daemons perform remote function calls of the domain layer. Each
module has its own domain daemon. To check the status and view logs, use
similar commands, changing the service name to
<module_name>-domain.service
.
sudo systemctl status storage-domain.service
- Project introduction: on-boarding.
- How to contribute to the project: howto-contribute.
- Code of conduct: code-of-conduct.
- Code convention: code-convention.
- To work with the user interface (Frontend), use the repository Open vAIR UI.
- To work with the documentation, use the repository Open vAIR docs.
Instructions for contributing to the project:
- Fork the repository
- Create a new branch (git checkout -b feature/your-feature)
- Make changes and commit (git commit -m 'Added new feature')
- Push changes (git push origin feature/your-feature)
- Create a Pull Request