Skip to content

Commit

Permalink
5.12 docs
Browse files Browse the repository at this point in the history
  • Loading branch information
xorel committed Jun 15, 2020
1 parent de58c70 commit f749cc4
Show file tree
Hide file tree
Showing 13 changed files with 129 additions and 11 deletions.
32 changes: 24 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# miniONE

**miniONE** is an easy to use deployment tool to build an evaluation OpenNebula cloud based on either virtual machines (KVM) or system containers (LXD). All necessary components to manage and run the virtual machines or containers are installed and configured on your dedicated system with just a single command run.
**miniONE** is an easy to use deployment tool to build an evaluation OpenNebula cloud based on either virtual machines (KVM), system containers (LXD), micro VMs (Firecracker) or Edge deployment on Packet. All necessary components to manage and run the virtual machines or containers are installed and configured on your dedicated system with just a single command run.

**Follow the detailed [tutorial](https://docs.opennebula.io/minione/)**.

Expand All @@ -17,23 +17,31 @@ For **KVM evaluation** on a dedicated physical server for both the front-end and
- physical host
- x86-64 Intel or AMD processor with **virt. capabilities**
- operating system:
- CentOS 7 (RHEL 7)
- Debian 9
- Ubuntu 16.04, 18.04
- CentOS 7 (RHEL 7) or CentOS 8 (RHEL 8)
- Debian 9, 10
- Ubuntu 16.04, 18.04, 20.04

For **LXD evaluation** on a dedicated physical server or virtual machine for both the front-end and one LXD hypervisor node:
- physical host or virtual machine (e.g., Amazon EC2 VM)
- x86-64 Intel or AMD processor
- operating system:
- Ubuntu 18.04
- Ubuntu 18.04, 20.04

For **Firecracker evaluation** on a dedicated physical server or virtual machine for both the front-end and one Firecracker hypervisor node:
- physical host or virtual machine (e.g., Amazon EC2 VM)
- x86-64 Intel or AMD processor
- operating system:
- CentOS 7 (RHEL 7) or CentOS 8 (RHEL 8)
- Debian 9, 10
- Ubuntu 16.04, 18.04, 20.04

For **Edge evaluation** on a dedicated physical server or virtual machine for the front-end and one remote Packet edge physical server for one KVM hypervisor node:
- physical host or virtual machine (e.g., Amazon EC2 VM)
- x86-64 Intel or AMD processor
- operating system:
- CentOS 7 (RHEL 7)
- Debian 9
- Ubuntu 16.04, 18.04
- CentOS 7 (RHEL 7) or CentOS 8 (RHEL 8)
- Debian 9, 10
- Ubuntu 16.04, 18.04, 20.04

## Quickstart

Expand All @@ -56,6 +64,14 @@ Run the commands to deploy the evaluation cloud:
wget 'https://github.com/OpenNebula/minione/releases/latest/download/minione'
sudo bash minione --lxd
```
### Get Firecracker cloud

Run the commands to deploy the evaluation cloud:

```
wget 'https://github.com/OpenNebula/minione/releases/latest/download/minione'
sudo bash minione --firecracker
```

### Get Edge cloud on Packet

Expand Down
83 changes: 83 additions & 0 deletions docs/source/advanced/firecracker-deployment.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
.. _firecracker:

===========
Firecracker
===========

OpenNebula 5.12 introduces the support for microVMs hypervisor called Firecracker which we will cover in this section.

Similarly as for KVM or LXD for the firecracker you need to pass `--firecracker` option. As before, MiniONE prepares
an image for you, specify the image from the Dockerhub registry using the `--fc-marketapp-name` option, by default it's
the latest `alpine` image. As the Firecracker requires special kernel you can specify its name using `--fc-kernel-name`
option usually you don't need to modify this value.


+---------------------------------------+------------------------------------------------------+
| Parameter | Description |
+=======================================+======================================================+
| ``--firecracker`` | Show all available command line switches. |
+---------------------------------------+------------------------------------------------------+
| ``--fc-marketapp-name`` | Dockerhub image for Firecracker |
+---------------------------------------+------------------------------------------------------+
| ``--fc-kernel-name`` | Market app kernel name for Firecracker. |
+---------------------------------------+------------------------------------------------------+

The rest of the parameters, especially the networking remianed the same as for the KVM/LXD -- the integration is seemless.

Examples
========

Verbose deployment of Firecracker environment

.. prompt:: bash # auto

# bash minione --verbose --firecracker

Verbose deployment of Firecracker, import latest ubuntu

.. prompt:: bash # auto

# bash minione --verbose --firecracker --fc-marketapp-name ubuntu


.. _firecracker-dockerhub:

======================================
Image from DockerHub and Kernel update
======================================

Trying different image with Firecracker is a little bit different from KVM and LXD because Firecracker
micro VMs require specific Kernel to be used. This Kernel is available on OpenNebula Public marketplace
and Minione downloads it always during the installation. What remains is to link the Kernel from the VM
template as we show in the following example.

First, go to **Storage** -> **Apps** tab and pick an Image from the DockerHub, e.g. **nginx** like here

|images-sunstone-dockerhub|

Download the image to the only image datastore we have

|images-sunstone-dockerhub-import-nginx|

Now we need to update the VM template, navigate to the **Templates** -> **VMs** -> **nginx** and switch to **Template**
tab.

|images-sunstone-update-template|

Click the **Update** button and switch to **Advanced** mode. Update the **OS** section with this snippet


.. code::
OS = [
KERNEL_CMD = "console=ttyS0 reboot=k panic=1 pci=off i8042.noaux i8042.nomux i8042.nopnp i8042.dumbkbd",
KERNEL_DS = "$FILE[IMAGE=\"kernel\"]" ]
|images-sunstone-update-template-replace-kernel|

After you save the template and wait until the image is fully downloaded it is ready to start the micro VM.

.. |images-sunstone-dockerhub| image:: /images/sunstone-dockerhub.png
.. |images-sunstone-dockerhub-import-nginx| image:: /images/sunstone-dockerhub-import-nginx.png
.. |images-sunstone-update-template| image:: /images/sunstone-update-template.png
.. |images-sunstone-update-template-replace-kernel| image:: /images/sunstone-update-template-replace-kernel.png
1 change: 1 addition & 0 deletions docs/source/advanced/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ Advanced Usage
:maxdepth: 2

Customized Deployment <customized-deployment>
Firecracker Deployment <firecracker-deployment>
Edge Deployment <edge-deployment>
Run Virtual Machine over CLI <run-virtual-machine-cli>
Marketplace over CLI <marketplace-cli>
Expand Down
2 changes: 2 additions & 0 deletions docs/source/basics/marketplace.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ Your OpenNebula installation is integrated with a few marketplaces. The most imp

Also, the images from `public LXD image server <https://us.images.linuxcontainers.org>`_ are available through the "Linux Containers" marketplace for the LXD environments. Please note these images are prepared by 3rd parties and all may not work seamlessly.

.. note:: This seciton covers KVM & LXD setup, for Firecracker you can use images from the `DockerHub registry <https://hub.docker.com/>`_, for more details see :ref:`Firecracker Deployment <firecracker-dockerhub>`.

Check the enabled marketplaces in **Storage → MarketPlaces**:

|images-sunstone-marketplaces|
Expand Down
Binary file added docs/source/images/minione-firecracker.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/source/images/sunstone-dockerhub.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/source/images/sunstone-marketplaces.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/source/images/sunstone-update-template.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
15 changes: 13 additions & 2 deletions docs/source/overview/requirements.rst
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ For KVM evaluation on a dedicated physical server for the front-end and one KVM

* x86-64 Intel or AMD processor with **virt. capabilities**
* physical host or virtual machine supporting the nested virtualization
* operating system: CentOS 7, Debian 9, Ubuntu 16.04 or 18.04
* operating system: CentOS 7 or 8, Debian 9 or 10, Ubuntu 16.04, 18.04 or 20.04


System Containers (LXD)
Expand All @@ -33,7 +33,17 @@ For LXD evaluation on a dedicated physical server or virtual machine for the fro

* x86-64 Intel or AMD processor
* physical host or virtual machine
* operating system: Ubuntu 18.04
* operating system: Ubuntu 18.04 or 20.04

Firecracker Micro VMs
=======================
|images-minione-firecracker|

For Firecracker evaluation on a dedicated physical server or virtual machine for the front-end and one Firecracker hypervisor node the minimal requirements are:

* x86-64 Intel or AMD processor
* physical host or virtual machine
* operating system: CentOS 7 or 8, Debian 9 or 10, Ubuntu 16.04, 18.04 or 20.04

Edge deployment + KVM on Packet
===============================
Expand All @@ -56,4 +66,5 @@ The deployment process with the `miniONE <https://github.com/OpenNebula/minione>

.. |images-minione-kvm.png| image:: /images/minione-kvm.png
.. |images-minione-lxd| image:: /images/minione-lxd.png
.. |images-minione-firecracker| image:: /images/minione-firecracker.png
.. |images-minione-packet| image:: /images/minione-packet.png
2 changes: 1 addition & 1 deletion docs/source/overview/whats.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@ In this guide, we'll go through the special type of deployment, the all-in-one O

While all the installation and configuration steps could be done manually by following the official documentation and would give you a better insight and control over what and how it is configured, we'll focus on the most straightforward approach leveraging the miniONE tool.

The `miniONE <https://github.com/OpenNebula/minione>`_ tool is simple deployment script which prepares the all-in-one OpenNebula environments. Such deployments are mainly intended for evaluation, development and testing, but can also be used as a base for larger short-lived deployments. Usually, it takes just a few minutes to get the environment ready. The tool can prepare evaluation environments for true virtual machines running on KVM hypervisors, or the system containers running on LXD hypervisors. Additional option which we call *Edge deployment* includes OpenNebula frontend and configured KVM hypervisors on public Cloud providers.
The `miniONE <https://github.com/OpenNebula/minione>`_ tool is simple deployment script which prepares the all-in-one OpenNebula environments. Such deployments are mainly intended for evaluation, development and testing, but can also be used as a base for larger short-lived deployments. Usually, it takes just a few minutes to get the environment ready. The tool can prepare evaluation environments for true virtual machines running on KVM hypervisors, or the system containers running on LXD hypervisors. Another option which we call *Edge deployment* includes OpenNebula frontend and configured KVM hypervisors on public Cloud providers. And lastly, you can have environment prepared for running micro VMs on Firecracker hypervisor.
5 changes: 5 additions & 0 deletions docs/source/simple/deploy.rst
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,11 @@ Or, for LXD environment:

# bash minione --lxd

Or, for Firecracker environment:

.. prompt:: bash # auto

# bash minione --firecracker

Or, for Edge environment on Packet:

Expand Down

0 comments on commit f749cc4

Please sign in to comment.