thmsdt | 9803c16 | 2019-04-25 08:16:14 +0200 | [diff] [blame] | 1 | .. This work is licensed under a Creative Commons Attribution 4.0 |
| 2 | .. International License. http://creativecommons.org/licenses/by/4.0 |
| 3 | .. Copyright 2019 ONAP Contributors. All rights reserved. |
| 4 | |
andreasgeissler | f3ba182 | 2019-05-24 13:22:42 +0200 | [diff] [blame] | 5 | .. _doc_guide_user_des_pre-onb: |
| 6 | |
thmsdt | 9803c16 | 2019-04-25 08:16:14 +0200 | [diff] [blame] | 7 | Pre-Onboarding |
| 8 | ============== |
| 9 | |
andreasgeissler | 3502b06 | 2019-06-05 21:14:56 +0200 | [diff] [blame] | 10 | * `Create a Tenant`_ (will be moved to "Service Deployment") |
| 11 | * `Generate Manifest and Package Artifacts`_ (for HEAT based VNFs) |
| 12 | * `Validate xNF Package (VNF/PNF)`_ |
| 13 | |
| 14 | .. _doc_guide_user_des_pre-onb_cre-ten: |
thmsdt | 9803c16 | 2019-04-25 08:16:14 +0200 | [diff] [blame] | 15 | |
| 16 | Create a Tenant |
| 17 | --------------- |
| 18 | |
andreasgeissler | 3502b06 | 2019-06-05 21:14:56 +0200 | [diff] [blame] | 19 | .. note:: |
| 20 | This section is not really belonging to the "Design" phase, |
| 21 | but to the preparation of the "Service Deployment" and will be |
| 22 | moved in the next release |
| 23 | |
thmsdt | 9803c16 | 2019-04-25 08:16:14 +0200 | [diff] [blame] | 24 | Each service requires a tenant_ (a group of users who share a common access) |
| 25 | in which resources are stored in the cloud. This process is performed using |
| 26 | facilities of the network cloud, outside of ONAP. Confirm that the tenant is |
| 27 | created and note the tenant ID. |
| 28 | |
| 29 | ONAP admin users can configure a cloud-owner to add new cloud resources. |
| 30 | These are the computing and networking resources, that will support |
| 31 | running VNFs. A cloud-owner holds a keystone URL, login, region and |
| 32 | password, in the case of an Openstack cluster. A cloud-owner also |
| 33 | belongs to a region. The region name should be the same as the Openstack |
| 34 | region. Prior to creation of a cloud-owner, its region must be created |
| 35 | first. Multiple tenants can share the same cloud-owner. Note that these |
| 36 | tenants are ONAP tenants, not Openstack tenants. Tenant register |
| 37 | services that customers are allowed to deploy. Finally, the customer is |
| 38 | like an instance of the tenant. |
| 39 | |
| 40 | Note: there is no GUI (yet) to configure these objects. REST requests |
| 41 | are sent to AAI to achieve the configuration. For a detailed list of |
| 42 | required REST commands see: |
| 43 | |
| 44 | https://wiki.onap.org/display/DW/running+vFW+Demo+on+ONAP+Amsterdam+Release |
| 45 | |
| 46 | The overall process is as follows: |
| 47 | |
| 48 | #. Create a region and a cloud-owner. This steps registers Openstack |
| 49 | credentials. This is the only step requiring entering Openstack specific |
| 50 | parameters. |
| 51 | |
| 52 | #. Create a complex. The complex describes the coverage of the region with |
| 53 | a street address etc. |
| 54 | |
| 55 | #. Create a service. The service name should match the name of the service |
| 56 | onboarded in SDC. |
| 57 | |
| 58 | #. Create a tenant. Tenant in ONAP stores a design for a generic customer. |
| 59 | |
| 60 | #. Associate tenants with their allowed services. |
| 61 | |
| 62 | #. Create an instance of the tenant or customer. The customer is visible in |
| 63 | VID. A VID user can deploy allowed services on this new customer. |
| 64 | |
| 65 | |image1| |
| 66 | |
| 67 | |
andreasgeissler | 3502b06 | 2019-06-05 21:14:56 +0200 | [diff] [blame] | 68 | .. _doc_guide_user_des_pre-onb_gen-man: |
thmsdt | 9803c16 | 2019-04-25 08:16:14 +0200 | [diff] [blame] | 69 | |
| 70 | Generate Manifest and Package Artifacts |
| 71 | --------------------------------------- |
| 72 | |
andreasgeissler | 3502b06 | 2019-06-05 21:14:56 +0200 | [diff] [blame] | 73 | .. note:: |
| 74 | This section describes the steps required to package a given HEAT |
| 75 | template into a zip-file, which can be onboarded to SDC. Instructions |
| 76 | to create TOSCA based VNF or PNF Onboarding Packages are not described |
| 77 | here |
| 78 | |
thmsdt | 9803c16 | 2019-04-25 08:16:14 +0200 | [diff] [blame] | 79 | Before onboarding resources, run generate-manifest.py to generate a |
| 80 | MANIFEST file. These steps are performed outside SDC. |
| 81 | |
andreasgeissler | 3502b06 | 2019-06-05 21:14:56 +0200 | [diff] [blame] | 82 | **Prerequisites:** Obtain Heat/ENV files and other files required for |
| 83 | onboarding. The requirements are found in the following document. |
thmsdt | 9803c16 | 2019-04-25 08:16:14 +0200 | [diff] [blame] | 84 | |
andreasgeissler | 3502b06 | 2019-06-05 21:14:56 +0200 | [diff] [blame] | 85 | |
Hagop Bozawglanian | 786dd1f | 2019-08-14 22:22:00 +0000 | [diff] [blame] | 86 | `Heat requirements <../../../../submodules/vnfrqts/requirements.git/docs/Chapter5/Heat/index.html>`_ |
thmsdt | 9803c16 | 2019-04-25 08:16:14 +0200 | [diff] [blame] | 87 | |
| 88 | #. Put the Heat, ENV, nested Heat, and other files used by get-file in templates |
| 89 | in a directory. |
| 90 | |
| 91 | Naming guidelines: |
| 92 | |
| 93 | - The base Heat should include "base" in the name. |
| 94 | - The ENV file name should match the name of the Heat file with which it |
| 95 | is associated. |
| 96 | - All get-file file names need to be unique. |
| 97 | |
| 98 | #. Put the python script in a directory one level above the directory that |
| 99 | contains the Heat/ENV and other files. |
| 100 | |
| 101 | For example, [dir x]/[dir y] |
| 102 | |
| 103 | - [dir y] contains the Heat/ENV files and other files |
| 104 | - [dir x] contains the python script |
| 105 | |
andreasgeissler | 3502b06 | 2019-06-05 21:14:56 +0200 | [diff] [blame] | 106 | #. Run the script on the Windows command line (not valid anymore): |
thmsdt | 9803c16 | 2019-04-25 08:16:14 +0200 | [diff] [blame] | 107 | |
andreasgeissler | 3502b06 | 2019-06-05 21:14:56 +0200 | [diff] [blame] | 108 | .. code-block:: python |
thmsdt | 9803c16 | 2019-04-25 08:16:14 +0200 | [diff] [blame] | 109 | |
andreasgeissler | 3502b06 | 2019-06-05 21:14:56 +0200 | [diff] [blame] | 110 | python generate-manifest.py -f "dir y" |
thmsdt | 9803c16 | 2019-04-25 08:16:14 +0200 | [diff] [blame] | 111 | |
| 112 | #. Examine the manifest file and confirm that is correct. |
| 113 | |
| 114 | #. Package all Heat/ENV files, all other files, and the MANIFEST.json |
| 115 | into one .zip file. |
| 116 | |
andreasgeissler | 3502b06 | 2019-06-05 21:14:56 +0200 | [diff] [blame] | 117 | .. _doc_guide_user_des_pre-onb_val: |
| 118 | |
| 119 | Validate xNF Package (VNF/PNF) |
| 120 | ------------------------------ |
| 121 | |
| 122 | VNF and PNF packages have to follow the requirements described in: |
| 123 | |
Hagop Bozawglanian | 786dd1f | 2019-08-14 22:22:00 +0000 | [diff] [blame] | 124 | `VNF and PNF Modeling Requirements <../../../../submodules/vnfrqts/requirements.git/docs/Chapter5/index.html>`_ |
andreasgeissler | 3502b06 | 2019-06-05 21:14:56 +0200 | [diff] [blame] | 125 | |
Hagop Bozawglanian | 786dd1f | 2019-08-14 22:22:00 +0000 | [diff] [blame] | 126 | `ONAP Management Requirements <../../../../submodules/vnfrqts/requirements.git/docs/Chapter7/index.html>`_ |
andreasgeissler | 3502b06 | 2019-06-05 21:14:56 +0200 | [diff] [blame] | 127 | |
| 128 | For Validation of VNF and PNF packages the tools delivered by VNFSDK can be |
| 129 | used: |
| 130 | |
| 131 | .. toctree:: |
| 132 | :maxdepth: 1 |
| 133 | :titlesonly: |
| 134 | |
| 135 | ../../../onap-provider/vnfvalidator.rst |
| 136 | |
| 137 | Prior to resource onboarding, the Certification Group does the following: |
| 138 | |
| 139 | - for VNF and PNF |
| 140 | - Validation of the delivered xNF package and artifacts |
| 141 | - using the VNF Validation Tools |
| 142 | - in case of VNF |
| 143 | - onboards the Heat template(s) and metadata to the SDC catalog |
| 144 | - creates a test VF |
| 145 | - runs the Heat scanning tools |
| 146 | - shares the results with any group that approves Virtual Functions |
| 147 | |
| 148 | In parallel, the Certification Group onboards the VF Image and OS to a |
| 149 | standalone ONAP instance (the "sandbox") and performs the following: |
| 150 | |
| 151 | - security scan |
| 152 | - compatibility test for the OS and vendor binary |
| 153 | - malware scan |
| 154 | |
| 155 | The Certification group then instantiates the VF image using the vendor |
| 156 | Heat (if provided) in order to validate that the VM can run on the Network |
| 157 | Cloud. |
| 158 | |
| 159 | No VF functionality testing is performed at this stage. |
| 160 | |
thmsdt | 9803c16 | 2019-04-25 08:16:14 +0200 | [diff] [blame] | 161 | |
| 162 | .. |image1| image:: media/tenant.png |
| 163 | .. _tenant: https://wiki.onap.org/display/DW/Glossary#Glossary-tenant |