fix regex expression to find IPV4 address
[samplevnf.git] / VNFs / DPPD-PROX / helper-scripts / rapid / README
index b198c51..198b6db 100644 (file)
@@ -1,5 +1,5 @@
 ##
-## Copyright (c) 2010-2019 Intel Corporation
+## Copyright (c) 2010-2020 Intel Corporation
 ##
 ## Licensed under the Apache License, Version 2.0 (the "License");
 ## you may not use this file except in compliance with the License.
@@ -54,20 +54,20 @@ clouds:
 
 Packer could be run from docker image, you will need to create following alias:
 
-alias packer='docker run -it -v "$PWD":/root/project -w /root/project hashicorp/packer:light $@'
-
+alias packer='docker run -it --env OS_CLOUD=$OS_CLOUD -v "$PWD":/root/project -w /root/project hashicorp/packer:light $@'
+and make sure the OS_CLOUD variable is set to the correct cloud: in the clouds.yaml example above, you would first
+export OS_CLOUD=overcloud
 
 There are 2 files: centos.json and deploycentostools.sh, allowing you to create
 an image automatically. Run
   # packer build centos.json
-Edit centos.json to reflect the settings of your environment: The following fields need to
-be the ID's of your system:
+Edit centos.json to reflect the settings of your environment: The following fields need to populated
+with the values of your system:
   - "source_image_name": Needs to be the name of the Centos cloud image
   - "flavor": Needs to be the ID or name of the flavor existing in your OpenStack environment that will be used
     to start the VM in which we will install all tools
-  - "networks": ID of the network that will be used for the VM
-  - "use_floating_ip": true or false
-  - "floating_ip_network": ID of the floating ip network in case floating ip are being used
+  - "network_discovery_cidrs": Should contain the CIDR of the network you want to use e.g. "10.6.6.0/24"
+  - "floating_ip_network": ID or name of the floating ip network in case floating ip are being used
   - "security_groups": ID or name of the security group being used
 
 Refer to Packer docs for more details:
@@ -76,20 +76,36 @@ https://www.packer.io/docs/builders/openstack.html
 Note that this procedure is not only installing the necessary tools to run PROX,
 but also does some system optimizations (tuned). Check deploycentostools.sh for more details.
 
-Now you can run the createrapid.py file. Use help for more info on the usage:
-  # ./createrapid.py --help
-
-createrapid.py will use the OpenStack CLI to create the flavor, key-pair, network, image,
-servers, ...
-It will create a <STACK>.env file containing all info that will be used by runrapid.py
-to actually run the tests. Logging can be found in the CREATE<STACK>.log file
-You can use floating IP addresses by specifying the floating IP network
---floating_network NETWORK
-or directly connect through the INTERNAL_NETWORK by using the following parameter:
---floating_network NO
-/etc/resolv.conf will contain DNS info from the "best" interface. Since we are
-deploying VMs with multiple interface on different networks, this info might be
-taken from the "wrong" network (e.g. the dataplane network).
+Now you need to create a stack, that will deploy the PROX VMs using the PROX
+image built in the previous step. The stack needs to have an ouput section
+with the following outputs:
+outputs:
+  number_of_servers:
+    value: 
+      - <NUMBER_OF_SERVERS>   # A list of <NUMBER_OF_SERVERS>
+  server_name:
+    value: 
+      - - <SERVER_NAME>       # A list containing a list of <SERVER_NAME>
+  data_plane_ips:
+    value: 
+      - - <DATA_PLANE_IPS>    # A list containing a list of <DATA_PLANE_IPS>
+  data_plane_macs:
+    value: 
+      - - <DATA_PLANE_MACS>   # A list containing a list of <DATA_PLANE_MACS>
+  mngmt_ips:
+    value: 
+      - - <MNGMT_IP>          # A list containing a list of <MNGMT_IP>
+where
+    * <NUMBER_OF_SERVERS> is an int
+    * <SERVER_NAME> is a string
+    * <DATA_PLANE_IPS> is a list of strings
+    * <DATA_PLANE_MACS> is a list of strings
+    * <MNGMT_IP> is a string
+createrapid.py will take the input from config_file, to create an ssh keypair
+and stack (if not already existing). The tool will use the yaml files as
+specified in the config_file and create a <STACK>.env file, containing
+input used for runrapid.py.
 
 Now you can run the runrapid.py file. Use help for more info on the usage:
   # ./runrapid.py --help
@@ -114,8 +130,6 @@ openstack subnet create --network  fast-network  --subnet-range 20.20.20.0/24 --
 openstack port create --network fast-network --vnic-type direct --fixed-ip subnet=fast-subnet Port1
 openstack port create --network fast-network --vnic-type direct --fixed-ip subnet=fast-subnet Port2
 openstack port create --network fast-network --vnic-type direct --fixed-ip subnet=fast-subnet Port3
-Make sure to use the network and subnet in the createrapid parameters list. Port1, Port2 and Port3
-are being used in the *.env file.
 
 Note when doing tests using the gateway functionality on OVS:
 When a GW VM is sending packets on behalf of another VM (e.g. the generator), we need to make sure the OVS
@@ -130,9 +144,9 @@ neutron port-update xxxxxx --port_security_enabled=False
 
 An example of the env file generated by createrapid.py can be found below.
 Note that this file can be created manually in case the stack is created in a
-different way (not using the createrapid.py). This can be useful in case you are
-not using OpenStack as a VIM or when using special configurations that cannot be
-achieved using createrapid.py. Fields needed for runrapid are:
+different way than what is described in this text. This can be useful in case
+you are not using OpenStack as a VIM or when using special configurations that
+cannot be achieved using createrapid.py. Fields needed for runrapid are:
 * all info in the [Mx] sections
 * the key information in the [ssh] section
 * the total_number_of_vms information in the [rapid] section
@@ -145,20 +159,20 @@ total_number_of_machines = 3
 [M1]
 name = rapid-VM1
 admin_ip = 10.25.1.109
-dp_ip = 10.10.10.4
-dp_mac = fa:16:3e:25:be:25
+dp_ip1 = 10.10.10.4
+dp_mac1 = fa:16:3e:25:be:25
 
 [M2]
 name = rapid-VM2
 admin_ip = 10.25.1.110
-dp_ip = 10.10.10.7
-dp_mac = fa:16:3e:72:bf:e8
+dp_ip1 = 10.10.10.7
+dp_mac1 = fa:16:3e:72:bf:e8
 
 [M3]
 name = rapid-VM3
 admin_ip = 10.25.1.125
-dp_ip = 10.10.10.15
-dp_mac = fa:16:3e:69:f3:e7
+dp_ip1 = 10.10.10.15
+dp_mac1 = fa:16:3e:69:f3:e7
 
 [ssh]
 key = prox.pem
@@ -167,11 +181,3 @@ user = centos
 [Varia]
 vim = OpenStack
 stack = rapid
-vms = rapid.vms
-image = rapidVM
-image_file = rapidVM.qcow2
-dataplane_network = dataplane-network
-subnet = dpdk-subnet
-subnet_cidr = 10.10.10.0/24
-internal_network = admin_internal_net
-floating_network = admin_floating_net