=====================================================
 ONAP Integration > Bootstrap > Vagrant Minimal ONAP
=====================================================

This directory contains a set of Vagrant scripts that will automatically set up:

- Devstack,
- RKE-based Kubernetes cluster (single control plane node and single worker plane node),
- Operator's machine with configured tools (kubectl, helm).

This is intended to show a beginning ONAP operator how to set up and configure an environment that
can successfully deploy minimal ONAP instance from scratch. Its main purpose are ONAP demos and
proofs of concepts. It is not intended to be used as a production ONAP environment.

NOTE: the Devstack instance is NOT SECURED, with default credentials:

+-------+----------------+
| User  | Password       |
+-------+----------------+
| admin | default123456! |
+-------+----------------+
| demo  | default123456! |
+-------+----------------+


Quickstart
----------

Following set of commands can be used to prepare a machine running Ubuntu 18.04 for this setup:

.. code-block:: sh
   sudo sed -i'.bak' 's/^#.*deb-src/deb-src/' /etc/apt/sources.list
   sudo apt-get update
   sudo apt-get build-dep vagrant ruby-libvirt
   sudo apt-get install qemu libvirt-bin ebtables dnsmasq-base
   sudo apt-get install libxslt-dev libxml2-dev libvirt-dev zlib1g-dev ruby-dev

   sudo apt-get install sshfs

   wget https://releases.hashicorp.com/vagrant/2.2.7/vagrant_2.2.7_x86_64.deb
   sudo dpkg -i vagrant_2.2.7_x86_64.deb

   vagrant plugin install vagrant-libvirt
   vagrant plugin install vagrant-sshfs

   sudo mv /etc/apt/sources.list{.bak,}
   rm vagrant_2.2.7_x86_64.deb


Requirements
------------

+-------------+-----+-------+---------+
| Machine     | CPU |  RAM  | Storage |
+-------------+-----+-------+---------+
| Operator    |  1  | 1GiB  |  32GiB  |
+-------------+-----+-------+---------+
| Devstack    |  1  | 4GiB  |  32GiB  |
+-------------+-----+-------+---------+
| K8s Control |  1  | 1GiB  |  32GiB  |
+-------------+-----+-------+---------+
| K8s Worker  |  8  | 64GiB |  64GiB  |
+-------------+-----+-------+---------+
| TOTAL       | 11  | 70GiB |  160GiB |
+-------------+-----+-------+---------+

Table above is based on current experience and may be subject to change.


Prerequisites
-------------

Virtualisation provider
~~~~~~~~~~~~~~~~~~~~~~~

Environment has been tested using libvirt_ provider with vagrant-libvirt_ plugin. Plugin
documentation provides detailed `installation instructions`_ that will guide through the process.

.. note::
   Remember to uncomment `deb-src` repositories for `apt-get build-dep` step on Debian/Ubuntu.

.. _libvirt: https://libvirt.org
.. _vagrant-libvirt: https://github.com/vagrant-libvirt/vagrant-libvirt
.. _`installation instructions`: https://github.com/vagrant-libvirt/vagrant-libvirt#installation

Virtual machine manager
~~~~~~~~~~~~~~~~~~~~~~~

Environment has been tested using latest Vagrant_ as of writing this documentation (`v2.2.6`_). Some
features (e.g. triggers_) might not be supported on older versions.

.. _Vagrant: https://www.vagrantup.com/downloads.html
.. _`v2.2.6`: https://github.com/hashicorp/vagrant/blob/v2.2.6/CHANGELOG.md#226-october-14-2019
.. _triggers: https://www.vagrantup.com/docs/triggers/

Synced Folders
~~~~~~~~~~~~~~

Environment uses reverse-SSHFS-based file synchronization for applying non-upstream changes. This
requires installing vagrant-sshfs_ plugin and presence of `sshfs` package on the host system.

.. _vagrant-sshfs: https://github.com/dustymabe/vagrant-sshfs#install-plugin


Running
-------

Additional `--provider` flag or setting `VAGRANT_DEFAULT_PROVIDER` environmental variable might be
useful in case there are multiple providers available.

.. note::
   Following command should be executed within the directory where `Vagrantfile` is stored
   (`integration/bootstrap/vagrant-minimal-onap`).

.. code-block:: sh
   vagrant up --provider=libvirt


Usage
-----

Once ready (bringing up machines might initially take some time), tools for cluster management will
be available on Operator's machine. It can be accessed by executing:

.. code-block:: sh
   vagrant ssh operator

Although appropriate context is set for `kubectl` on login, when interacting with the cluster the
`onap` namespace has to be explicitly specified. Example:

.. code-block:: sh
   # Operator's machine shell
   kubectl -nonap get pods
