diff options
author | 2017-06-30 16:15:54 +0200 | |
---|---|---|
committer | 2017-07-19 17:04:52 +0200 | |
commit | a2be5e9d4147b5956980be10176b1861dc7aa6a2 (patch) | |
tree | 1d1ae91a6ec5946f91d71dea2f35826df7ed18d7 /docs/development/gapanalysis/gap-analysis-architecture-options.rst | |
parent | 319038683d45291c0348412e7b037b86bc8f49a4 (diff) |
Adding architecture options
As there are different architecture options
to support VM and contaienr based VNF-s it
is important to list these options and refer
to them in the gap analyzis of the different
projects.
Change-Id: Iff027e96ba48616cbb6705c33cda2cd8086eb97e
Signed-off-by: csatari <gergely.csatari@nokia.com>
Diffstat (limited to 'docs/development/gapanalysis/gap-analysis-architecture-options.rst')
-rw-r--r-- | docs/development/gapanalysis/gap-analysis-architecture-options.rst | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/docs/development/gapanalysis/gap-analysis-architecture-options.rst b/docs/development/gapanalysis/gap-analysis-architecture-options.rst new file mode 100644 index 0000000..c629dfe --- /dev/null +++ b/docs/development/gapanalysis/gap-analysis-architecture-options.rst @@ -0,0 +1,73 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International +.. License. http://creativecommons.org/licenses/by/4.0 +.. (c) Gergely Csatari (Nokia) + +================================== +OpenRetriever architecture options +================================== + +1 Architecture options to support only containers on bare metal +............................................................... +To support containers on bare metal without the support of VM-s only a single +VIM is needed. +This architecture option is targeted by OpenRetriever in OPNFV Euphrates, and +this architecture option is considered in the gap analyzis against +:doc:`OpenStack <gap-analysis-openstack>` and +:doc:`Kubernetes <gap-analysis-kubernetes-v1.5>`. +Examples: Kubernetes, OpenStack with Zun_ and Kuryr_, which as a side effect +also supports VM-s. + +2 Architecture options to support containers and VM-s +..................................................... +There are different architecture options to support container based and VM based +VNF-s in OPNFV. This section provides a list of these options with a brief +description and examples. +In the descriptions providing the same API means, that the same set of API-s are +used (like the OpenStack_ API-s or the Kubernetes_ API), integrted networks mean, +that the network connections of the workloads can be connected without leaving +the domain of the VIM and shared hardware resources mean that it is possible to +start a workload VM and a workload container on the same physical host. + +2.1 Separate VIM-s +================== +There is a separate VIM for VM-s and a separate for containers, they use +different hardware pools, they provide different API-s and their networks are +not integrated. +Examples: A separate OpenStack instance for the VM-s and a separate Kubernetes_ +instance for the containers. + +2.2 Single VIM +============== +One VIM supports both VM-s and containers using the same hardware pool, with +the same API and with integrated networking solution. +Examples: OpenStack with Zun_ and Kuryr_ or Kubernetes_ with Kubevirt_, Virtlet_ or +similar. + +2.3 Combined VIM-s +================== +There are two VIM-s from API perspective, but usually the VIM-s share hardware +pools on some level. This option have suboptions. + +2.3.1 Container VIM on VM VIM +----------------------------- +A container VIM is deployed on top of resources managed by a VM VIM, they share +the same hardware pool, but they have separate domains in the pool, they provide +separate API-s and there are possibilities to integrate their networks. +Example: A Kubernetes_ is deployed into VM-s or bare metal hosts into an +OpenStack deployment optionally with Magnum. Kuryr_ integrates the networks on +some level. + +2.3.2 VM VIM on Container VIM +----------------------------- +A VM VIM is deployed on top of resources managed by a container VIM, they do not +share the same hardware pool, provide different API and do not have integrated +networks. +Example: `Kolla Kubernetes <https://github.com/openstack/kolla-kubernetes>`_ or +`OpenStack Helm <https://wiki.openstack.org/wiki/Openstack-helm>`_. + +.. _Kubernetes: http://kubernetes.io/ +.. _Kubevirt: https://github.com/kubevirt/ +.. _Kuryr: https://docs.openstack.org/developer/kuryr/ +.. _OpenStack: https://www.openstack.org/ +.. _Virtlet: https://github.com/Mirantis/virtlet +.. _Zun: https://wiki.openstack.org/wiki/Zun |