From fb90353f2bf5f3c20b5ada3df2ef3f7c1bee47b8 Mon Sep 17 00:00:00 2001 From: Koren Lev Date: Thu, 19 Oct 2017 02:02:00 +0300 Subject: apex-scenario added Change-Id: I0869a92d0fddd4eed9d4bc5f158582299840e577 Signed-off-by: Koren Lev (cherry picked from commit 4e5e9f7eaa08b4d36963be193b546d3ac84cb9e9) --- docs/development/apex-scenario-guide.rst | 282 +++++++++++++++++++++++++++++++ 1 file changed, 282 insertions(+) create mode 100644 docs/development/apex-scenario-guide.rst (limited to 'docs') diff --git a/docs/development/apex-scenario-guide.rst b/docs/development/apex-scenario-guide.rst new file mode 100644 index 0000000..50e4c60 --- /dev/null +++ b/docs/development/apex-scenario-guide.rst @@ -0,0 +1,282 @@ +| Calipso.io +| Installation Guide + +|image0| + +Project “Calipso” tries to illuminate complex virtual networking with +real time operational state visibility for large and highly distributed +Virtual Infrastructure Management (VIM). + +We believe that Stability is driven by accurate Visibility. + +Calipso provides visible insights using smart discovery and virtual +topological representation in graphs, with monitoring per object in the +graph inventory to reduce error vectors and troubleshooting, maintenance +cycles for VIM operators and administrators. + +Table of Contents + +Calipso.io Installation Guide 1 + +1 Pre Requisites 3 + +1.1 Pre Requisites for Calipso “all in one” application 3 + +1.2 Pre Requisites for Calipso UI application 3 + +2 Installation Option used with Apex 4 + +2.1 Micro Services App, single line install 4 + +3 OPNFV Scenario 5 + +3.1 APEX automatic configurator and setup 5 + +3.2 Apex scenario 5 + +3.3 Calipso functest 6 + +TBD 6 + +Pre Requisites +=============== + +Pre Requisites for Calipso “all in one” application +---------------------------------------------------- + + Calipso’s main application is written with Python3.5 for Linux + Servers, tested successfully on Centos 7.3 and Ubuntu 16.04. When + running using micro-services many of the required software packages + and libraries are delivered per micro service, but for an “all in + one” application case there are several dependencies. + + Here is a list of the required software packages, and the official + supported steps required to install them: + +1. Python3.5.x for Linux : + https://docs.python.org/3.5/using/unix.html#on-linux + +2. Pip for Python3 : https://docs.python.org/3/installing/index.html + +3. Python3 packages to install using pip3 : + + **sudo pip3 install falcon (>1.1.0)** + + **sudo pip3 install pymongo (>3.4.0)** + + **sudo pip3 install gunicorn (>19.6.0)** + + **sudo pip3 install ldap3 (>2.1.1)** + + **sudo pip3 install setuptools (>34.3.2)** + + **sudo pip3 install python3-dateutil (>2.5.3-2)** + + **sudo pip3 install bcrypt (>3.1.1)** + + **sudo pip3 install bson** + + **sudo pip3 install websocket** + + **sudo pip3 install datetime** + + **sudo pip3 install typing** + + **sudo pip3 install kombu** + + **sudo pip3 install boltons** + + **sudo pip3 install paramiko** + + **sudo pip3 install requests ** + + **sudo pip3 install httplib2** + + **sudo pip3 install mysql.connector** + + **sudo pip3 install xmltodict** + + **sudo pip3 install cryptography** + + **sudo pip3 install docker** + +1. Git : https://git-scm.com/book/en/v2/Getting-Started-Installing-Git + +2. Docker : https://docs.docker.com/engine/installation/ + +Pre Requisites for Calipso UI application +------------------------------------------ + + Calipso UI is developed and maintained using Meteor Framework + (https://www.meteor.com/tutorials). For stability and manageability + reasons we decided to always build the latest Calipso UI as a Docker + container pre-parameterized for stable and supported behavior. The + required steps for installing the Calipso UI with several options + are listed below. + +Installation Option used with Apex +================================== + +Micro Services App, single line install +--------------------------------------- + + For most users, this will be the fastest and more reliable install + option. We currently have Calipso divided into 7 major containers, + those are installed using a single installer. The Calipso containers + are pre-packaged and fully customized per our design needs. Here are + the required steps for installation using this option: + +1. Follow steps 1- 5 per section 2.1 above. + +2. Install Docker : https://docs.docker.com/engine/installation/ + +3. Install the following python3 libraries using pip3 : docker, pymongo + +4. Although Calipso installer can download all needed containers, if + they doesn’t exist locally already, we recommend doing a manual + download of all 7 containers, providing better control and logging: + + **sudo docker login** # use your DockerHub username and password to + login. + + **sudo docker pull korenlev/calipso:scan** # scan container used to + scan VIM + + **sudo docker pull korenlev/calipso:listen** # listen container to + attach to VIM’s BUS. + + **sudo docker pull korenlev/calipso:api** # api container for + application integration + + **sudo docker pull korenlev/calipso:sensu** # sensu server container + for monitoring + + **sudo docker pull korenlev/calipso:mongo** # calipso mongo DB + container + + **sudo docker pull korenlev/calipso:ui** # calipso ui container + + **sudo docker pull korenlev/calipso:ldap** # calipso ldap container + +1. Check that all containers were downloaded and registered + successfully: + + **sudo docker images** + + Expected results (As of Aug 2017): + + **REPOSITORY TAG IMAGE ID CREATED SIZE** + + **korenlev/calipso listen 12086aaedbc3 6 hours ago 1.05GB** + + **korenlev/calipso api 34c4c6c1b03e 6 hours ago 992MB** + + **korenlev/calipso scan 1ee60c4e61d5 6 hours ago 1.1GB** + + **korenlev/calipso sensu a8a17168197a 6 hours ago 1.65GB** + + **korenlev/calipso mongo 17f2d62f4445 22 hours ago 1.31GB** + + **korenlev/calipso ui ab37b366e812 11 days ago 270MB** + + **korenlev/calipso ldap 316bc94b25ad 2 months ago 269MB** + +1. Run the calipso installer using single line arguments: + + **python3 calipso/app/install/calipso-installer.py--command + start-all --copy q** + + This should launch all calipso modules in sequence along with all + needed configuration files placed in /home/calipso. + +OPNFV Scenario +=============== + +Although calipso is designed for any VIM and for enterprise use-cases +too, service providers can use additional capability to install calipso +with Apex for OPNFV. + +APEX automatic configurator and setup +------------------------------------- + + When using apex to install OPNFV, the Triple-O based OpenStack is + installed automatically and calipso installation can be initiated + automatically after apex completes the VIM installation process for + a certain scenario. + + In this case setup\_apex\_environment.py can be used for creating a + new environment automatically into mongoDB and UI of Calipso + (instead of using the calipso UI to do that as typical user would + do), then detailed scanning can start immediately, the following + options are available for setup\_apex\_environment.py: + + **-m [MONGO\_CONFIG], --mongo\_config [MONGO\_CONFIG]** + + **name of config file with MongoDB server access details** + + **(Default: /local\_dir/calipso\_mongo\_access.conf)** + + **-d [CONFIG\_DIR], --config\_dir [CONFIG\_DIR]** + + **path to directory with config data (Default:** + + **/home/calipso/apex\_setup\_files)** + + **-i [INSTALL\_DB\_DIR], --install\_db\_dir [INSTALL\_DB\_DIR]** + + **path to directory with DB data (Default:** + + **/home/calipso/Calipso/app/install/db)** + + **-a [APEX], --apex [APEX]** + + **name of environment to Apex host** + + **-e [ENV], --env [ENV]** + + **name of environment to create(Default: Apex-Euphrates)** + + **-l [LOGLEVEL], --loglevel [LOGLEVEL]** + + **logging level (default: "INFO")** + + **-f [LOGFILE], --logfile [LOGFILE]** + + **log file (default:** + + **"/home/calipso/log/apex\_environment\_fetch.log")** + + **-g [GIT], --git [GIT]** + + **URL to clone Git repository (default:** + + **https://git.opnfv.org/calipso)** + +Apex scenario +------------- + + Starting Euphrates 1.0 the following scenario added with Apex + installer: + + **os-nosdn-calipso-noha** + + Following CI jobs defined: + + https://build.opnfv.org/ci/job/calipso-verify-euphrates/ + + https://build.opnfv.org/ci/job/apex-testsuite-os-nosdn-calipso-noha-baremetal-euphrates/ + + https://build.opnfv.org/ci/job/apex-os-nosdn-calipso-noha-baremetal-euphrates/ + + Note: destination deploy server needs to have pre-requisites + detailed above. + +Calipso functest +---------------- + +TBD +---- + +.. |image0| image:: media/image1.png + :width: 6.50000in + :height: 4.27153in -- cgit 1.2.3-korg