-
Notifications
You must be signed in to change notification settings - Fork 24
apps_intro
The public OpenNebula Marketplace offers ready-to-use appliances, which are preconfigured Virtual Machines that provide various services for your OpenNebula cloud. Some appliances comprise multiple VMs, such as the OneKE Service which provides a Kubernetes distribution with VMs for the master nodes, worker nodes, and virtual router. Others provide functionality for the OpenNebula cloud, such as the virtual router itself.
Appliances are integrated into the OpenNebula cloud by means of contextualization packages. These packages predefine the configuration of the VM(s) in an appliance, before the appliance is deployed. They allow to define user credentials, network parameters, disk partitions and filesystems, and custom actions to run during boot.
The OpenNebula one-apps project offers you the possibility of downloading the contextualization packages and scripts that preconfigure OpenNebula appliances, so you can modify them to create your own appliances customized to your needs.
This page provides details on the life cycle of an OpenNebula appliance. For details on how to manage (browse, download and instantiate) an OpenNebula Marketplace app, please see Managing Marketplace Appliances.
For an overview of what you can do with one-apps, please refer to the OneApps Quick Intro.
The other pages in this wiki are divided by component: the contextualization packages themselves, and individual appliances.
Every appliance goes through the following stages:
- Installation (build time)
- Configuration (instantiation time)
- Bootstrap (instantiation time)
These stages are handled by a script in the appliance: /etc/one-appliance/service. In the first stage, the script is triggered during the image build. In the remaining stages, it's triggered as part of the regular OS contextualization. The selected stage is an argument of this script.
To find out more about the service script and the appliance-specific contextualization parameters, run with argument help:
$ /etc/one-appliance/service helpIn the one-apps distribution, this script is included as appliances/service.sh:
/user/one-apps$ ls appliances/
example Harbor lib MinIO OneKE scripts service.rb service.sh VRouter WordpressThis stage was already performed during the image build for all the appliances in the OpenNebula Marketplace. It includes the configuration of the package repositories and installation of all packages required by the service the appliance is meant to deliver.
For example for the WordPress Appliance: install Apache, MySQL, download and extract WordPress
This stage configures the installed services on the virtual machine (with defaults or user-provided contextualization parameters), enables and runs them. At the end of this stage, the services are ready to use.
For example for the WordPress Appliance: create database, configure connections, setup web virtual hosts and place SSL certificates, enable and start web server and database
Bootstrap is an optional stage, It makes additional configuration of the running service based on user-provided contextualization parameters. There are no defaults for this stage, it's skipped if all required parameters aren't specified.
It offers an opportunity to streamline the service start to a fully configured service, avoiding any manual steps which would be necessary (e.g., click through the initial web wizard).
For example for the WordPress Appliance: configure initial WordPress blog name and administrator
After the successful run of Configure and Bootstrap stages, you can find service-related information (credentials, connection settings) in the file /etc/one-appliance/config. If any of the stages fail, there are debug logs for each stage which can help with problem troubleshooting:
/var/log/one-appliance/ONE_install.log/var/log/one-appliance/ONE_configure.log/var/log/one-appliance/ONE_bootstrap.log
- OpenNebula Apps Overview
- OS Appliances Update Policy
- OneApps Quick Intro
- Build Instructions
- Linux Contextualization Packages
- Windows Contextualization Packages
- OneKE (OpenNebula Kubernetes Edition)
- Virtual Router
- Overview & Release Notes
- Quick Start
- OpenRC Services
- Virtual Router Modules
- Glossary
- WordPress
- Harbor Container Registry
- MinIO
- vLLM AI
- NVIDIA Fabric Manager
- Rancher CAPI
- Development