blob: 44f877f510a972b580235ea0e8cca1ff80d34293 [file] [log] [blame]
Matteo Scandoloef5d6f42020-07-27 16:46:38 -07001VOLTHA Deployment Environment
2=============================
3
4All the components in the VOLTHA project are containerized and the default
5deployment environment is ``kubernetes``.
6
7Generally VOLTHA is installed in one of two setups:
8
9- A physical ``kubernetes`` cluster, generally used for production deployments.
10- A virtual ``kind`` cluster, generally used for development.
11
12Regardless of the chosen environment the deployment process is the same,
13more on this later, and the installation can be managed in the same way.
14
15Managing a VOLTHA deployment
16----------------------------
17
18VOLTHA components on top of ``kubernetes`` are managed via ``helm`` charts.
19For more information about ``helm`` please refer to the `Official Documentation
20<https://helm.sh>`_.
21For the sake of this guide all you need to know is that an
22``helm`` chart describes all the information required to deploy a component on top of
23``kubernetes``, such as: containers, exposed ports and configuration parameters.
24
25A VOLTHA deployment is composed, at its very minimum, by:
26
27* Infrastructure
28
29 * A ``kafka`` cluster (can also be a single node)
30 * An ``etcd`` cluster (can also be a single node)
31 * ``ONOS`` (single or multi instance)
32 * [Optional] ``radius`` (for EAPOL based authentication)
33* ``VOLTHA``
34
35 * ``voltha-core`` and ``ofAgent`` (contained in the same ``helm`` chart)
36* Adapters
37
38 * [one or more] adapter pair(s) (OLT adapter + ONU Adapter)
39
40.. figure:: ../_static/voltha_cluster_overview.png
41 :alt: VOLTHA Component Diagram
42 :width: 100%
43
44 VOLTHA Kubernetes deployment
45
46Note that the ``Infrastructure`` components can be deployed outside of the
47``kubernetes`` cluster.
48
49You can read more about VOLTHA deployments in:
50
51- :doc:`lab_setup`
52- :doc:`pod_physical`
53- :doc:`dev_virtual`
54
55.. toctree::
56 :maxdepth: 1
57 :hidden:
58 :glob:
59
60 ./lab_setup.rst
61 ./pod_physical.rst
62 ./dev_virtual.rst
63
64Tooling
65-------
66
67To simplify the installation of VOLTHA we provided a tool called ``kind-voltha``.
68You can read more on :doc:`kind-voltha <../kind-voltha/README>` in its own documentation.