aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docs/conf.py2
-rw-r--r--docs/development/devtools/apex-s3p.rst80
-rw-r--r--docs/development/devtools/images/frankfurt/apex_s3p_jm-1.pngbin0 -> 149789 bytes
-rw-r--r--docs/development/devtools/images/frankfurt/apex_s3p_jm-2.pngbin0 -> 311321 bytes
-rw-r--r--docs/development/devtools/images/frankfurt/apex_s3p_vm-1.pngbin0 -> 176069 bytes
-rw-r--r--docs/development/devtools/images/frankfurt/apex_s3p_vm-2.pngbin0 -> 146018 bytes
-rw-r--r--docs/development/devtools/pap-s3p.rst29
-rw-r--r--docs/development/devtools/zip/frankfurt/apex_s3p_result.tarbin0 -> 4648960 bytes
-rw-r--r--docs/installation/oom.rst24
-rw-r--r--docs/release-notes.rst49
-rw-r--r--integration/pom.xml2
-rw-r--r--pom.xml4
12 files changed, 144 insertions, 46 deletions
diff --git a/docs/conf.py b/docs/conf.py
index 78ab3480..a1c6023b 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -13,4 +13,4 @@ intersphinx_mapping = {}
html_last_updated_fmt = '%d-%b-%y %H:%M'
def setup(app):
- app.add_stylesheet("css/ribbon_onap.css")
+ app.add_stylesheet("css/ribbon.css")
diff --git a/docs/development/devtools/apex-s3p.rst b/docs/development/devtools/apex-s3p.rst
index d3a8d410..784c4cbf 100644
--- a/docs/development/devtools/apex-s3p.rst
+++ b/docs/development/devtools/apex-s3p.rst
@@ -267,6 +267,86 @@ After the test stop, we can generate a HTML test report via command
:download:`result.zip <zip/result.tar>`
+
+Frankfurt release
+^^^^^^^^^^^^^^^^^^
+
+The 72 hour Stability Test for apex-pdp has the goal of introducing a steady flow of transactions using jMeter.
+
+The input event will be submitted through the rest interface of DMaaP , which then triggers a grpc request to CDS. Based on the response, another DMaaP event is triggered.
+
+This test will be performed in an OOM deployment setup. The test will be performed in a multi-threaded environment where 5 threads running in JMeter will keep sending events for the duration of 72 hours.
+
+Test Plan Frankfurt release
+---------------------------
+
+The 72 hours stability test will run the following steps in a 5 threaded loop.
+
+- **Create Policy** - creates a policy using the policy/api component
+- **Deploy Policy** - deploys the policy in the existing PdpGroup
+- **Check Health** - checks the health status of apex
+- **Send Input Event** - trigger 'unauthenticated.DCAE_CL_OUTPUT' event of DMaaP.
+- **Get Output Event Response** - check for the triggered output event.
+- **Undeploy Policy** - undeploys the policy from PdpGroup
+- **Delete Policy** - deletes the policy using the policy/api component
+
+The following steps can be used to configure the parameters of the test plan.
+
+- **HTTP Header Manager** - used to store headers which will be used for making HTTP requests.
+- **HTTP Request Defaults** - used to store HTTP request details like Server Name or IP, Port, Protocol etc.
+- **User Defined Variables** - used to store the following user defined parameters:
+
+================== ============================================================================ ============================
+**Name** **Description** **Default Value**
+================== ============================================================================ ============================
+wait Wait time after each request (in milliseconds) 120000
+threads Number of threads to run test cases in parallel. 5
+threadsTimeOutInMs Synchronization timer for threads running in parallel (in milliseconds). 150000
+================== ============================================================================ ============================
+
+
+Download and update the jmx file presented in the apex-pdp git repository - `jmx file path <https://gerrit.onap.org/r/gitweb?p=policy/apex-pdp.git;a=tree;f=testsuites/apex-pdp-stability/src/main/resources;h=99d373033a190a690d4e05012bc3a656cae7bc3f;hb=refs/heads/master>`_.
+
+- HTTPSampler.domain - The ip address of the VM in which the apex container is running
+- HTTPSampler.port - The listening port, here is 23324
+- ThreadGroup.druation - Set the duration to 72 hours (in seconds)
+
+Use the CLI mode to start the test
+
+.. code-block:: bash
+
+ ./jmeter.sh -n -t ~/apexPdpStabilityTestPlan.jmx -Jusers=1 -l ~/stability.log
+
+
+Stability Test Results Frankfurt release
+-----------------------------------------
+
+The stability test plan was triggered for 72 hours, injecting input events to apex-pdp from 5 client threads running in JMeter.
+
+After the test stops, we can generate an HTML test report via the command:
+
+.. code-block:: bash
+
+ ~/jMeter/apache-jmeter-5.2.1/bin/jmeter -g stability.log -o ./result/
+
+============================================== =================================================== ================================ ============= ============
+**Number of Client Threads running in JMeter** **Number of Server Threads running in Apex engine** **Total number of input events** **Success %** **Error %**
+============================================== =================================================== ================================ ============= ============
+5 4 26766 100% 0%
+============================================== =================================================== ================================ ============= ============
+
+**VisualVM Screenshot**
+
+.. image:: images/frankfurt/apex_s3p_vm-1.png
+.. image:: images/frankfurt/apex_s3p_vm-2.png
+
+**JMeter Screenshot**
+
+.. image:: images/frankfurt/apex_s3p_jm-1.png
+.. image:: images/frankfurt/apex_s3p_jm-2.png
+
+:download:`result.zip <zip/frankfurt/apex_s3p_result.tar>`
+
Setting up Performance Tests in APEX
++++++++++++++++++++++++++++++++++++
diff --git a/docs/development/devtools/images/frankfurt/apex_s3p_jm-1.png b/docs/development/devtools/images/frankfurt/apex_s3p_jm-1.png
new file mode 100644
index 00000000..07b28590
--- /dev/null
+++ b/docs/development/devtools/images/frankfurt/apex_s3p_jm-1.png
Binary files differ
diff --git a/docs/development/devtools/images/frankfurt/apex_s3p_jm-2.png b/docs/development/devtools/images/frankfurt/apex_s3p_jm-2.png
new file mode 100644
index 00000000..cb68c897
--- /dev/null
+++ b/docs/development/devtools/images/frankfurt/apex_s3p_jm-2.png
Binary files differ
diff --git a/docs/development/devtools/images/frankfurt/apex_s3p_vm-1.png b/docs/development/devtools/images/frankfurt/apex_s3p_vm-1.png
new file mode 100644
index 00000000..7ecbbea9
--- /dev/null
+++ b/docs/development/devtools/images/frankfurt/apex_s3p_vm-1.png
Binary files differ
diff --git a/docs/development/devtools/images/frankfurt/apex_s3p_vm-2.png b/docs/development/devtools/images/frankfurt/apex_s3p_vm-2.png
new file mode 100644
index 00000000..548f2b72
--- /dev/null
+++ b/docs/development/devtools/images/frankfurt/apex_s3p_vm-2.png
Binary files differ
diff --git a/docs/development/devtools/pap-s3p.rst b/docs/development/devtools/pap-s3p.rst
index 2002327f..5ae58ff5 100644
--- a/docs/development/devtools/pap-s3p.rst
+++ b/docs/development/devtools/pap-s3p.rst
@@ -151,15 +151,23 @@ The jmx file is present in the policy/pap git repository.
Install simulators in VM1
-------------------------
-For installing simulator, there is a script placed at `install simulator script <https://gerrit.onap.org/r/gitweb?p=policy/pap.git;a=blob;f=testsuites/stability/src/main/resources/simulatorsetup/setup_components.sh;h=86de3c1efcb468431a2395eef610db209a613fc3;hb=refs/heads/master>`_
+Clone PAP to VM1 using the following command :
-Copy the script & all related files in virtual machine and run it.
+.. code-block:: bash
+
+ root@policytest-policytest-3-p5djn6as2477:~$ git clone http://gerrit.onap.org/r/policy/pap
+
+For installing simulator, execute the script `setup_components.sh` as shown below:
+
+.. code-block:: bash
+
+ root@policytest-policytest-3-p5djn6as2477:~$ ./pap/testsuites/stability/src/main/resources/simulatorsetup/setup_components.sh
After installation make sure that following 4 docker containers are up and running.
.. code-block:: bash
- root@policytest-policytest-3-p5djn6as2477:/home/ubuntu/simulator# docker ps
+ root@policytest-policytest-3-p5djn6as2477:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
887efa8dac12 nexus3.onap.org:10001/onap/policy-api "bash ./policy-api.sh" 6 days ago Up 6 days 0.0.0.0:6969->6969/tcp policy-api
0a931c0a63ac pdp/simulator:latest "bash pdp-sim.sh" 6 days ago Up 6 days pdp-simulator
@@ -169,15 +177,24 @@ After installation make sure that following 4 docker containers are up and runni
Install PAP in VM2
------------------
-For installing PAP, there is a script placed at `install pap script <https://gerrit.onap.org/r/gitweb?p=policy/pap.git;a=blob;f=testsuites/stability/src/main/resources/papsetup/setup_pap.sh;h=dc5e69e76da9f48f6b23cc012e14148f1373d1e1;hb=refs/heads/master>`_
+Clone PAP to VM2 using the following command :
+
+.. code-block:: bash
+
+ root@policytest-policytest-3-p5djn6as2477:~$ git clone http://gerrit.onap.org/r/policy/pap
+
+For installing PAP, execute the script `setup_pap.sh` as shown below:
+
+.. code-block:: bash
-Copy the script & all related files in virtual machine and run it.
+ root@policytest-policytest-3-p5djn6as2477:~$ cd pap/testsuites/stability/src/main/resources/papsetup/
+ root@policytest-policytest-3-p5djn6as2477:~$ ./setup_pap.sh <VM2_IP> <VM1_IP>
After installation make sure that following docker container is up and running.
.. code-block:: bash
- root@policytest-policytest-0-uc3y2h5x6p4j:/home/ubuntu/pap# docker ps
+ root@policytest-policytest-0-uc3y2h5x6p4j:~$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
42ac0ed4b713 nexus3.onap.org:10001/onap/policy-pap:2.2.3-SNAPSHOT "bash ./policy-pap.sh" 3 days ago Up 3 days 0.0.0.0:6969->6969/tcp, 0.0.0.0:9090->9090/tcp policy-pap
diff --git a/docs/development/devtools/zip/frankfurt/apex_s3p_result.tar b/docs/development/devtools/zip/frankfurt/apex_s3p_result.tar
new file mode 100644
index 00000000..1b4eeea4
--- /dev/null
+++ b/docs/development/devtools/zip/frankfurt/apex_s3p_result.tar
Binary files differ
diff --git a/docs/installation/oom.rst b/docs/installation/oom.rst
index f40d33eb..9da56682 100644
--- a/docs/installation/oom.rst
+++ b/docs/installation/oom.rst
@@ -85,13 +85,29 @@ After undeploying policy, loop on monitoring the policy pods until they go away.
kubectl get pods -n onap
**Step 4** Delete NFS persisted data for Policy
-Sudo to root if you logged in using another account such as ubuntu.
.. code-block:: bash
rm -fr /dockerdata-nfs/dev-policy
-**Step 5** Re-Deploy Policy pods
+**Step 5** Make sure there is no orphan policy database persistent volume or claim.
+
+First, find if there is an orphan database PV or PVC with the following commands:
+
+.. code-block:: bash
+
+ kubectl get pvc -n onap | grep policy
+ kubectl get pv -n onap | grep policy
+
+If there are any orphan resources, delete them with
+
+.. code-block:: bash
+
+ kubectl delete pvc <orphan-policy-mariadb-resource>
+ kubectl delete pv <orphan-policy-mariadb-resource>
+
+**Step 6** Re-Deploy Policy pods
+
After deploying policy, loop on monitoring the policy pods until they come up.
.. code-block:: bash
@@ -103,7 +119,9 @@ Restarting a faulty component
*****************************
Each policy component can be restarted independently by issuing the following command:
-kubectl delete pod <policy-pod> -n onap
+.. code-block:: bash
+
+ kubectl delete pod <policy-pod> -n onap
Exposing ports
**************
diff --git a/docs/release-notes.rst b/docs/release-notes.rst
index c5d327fb..31b056a2 100644
--- a/docs/release-notes.rst
+++ b/docs/release-notes.rst
@@ -206,42 +206,21 @@ POLICY-XACML
POLICY-DROOLS-PDP
~~~~~~~~~~~~~~~~~
-* Support for offline mode.
- - The OOM deployment now supports offline mode for PDP-D by default.
-
-* Parameterize mvn repo urls and proxy settings
- - This allows the users to build the docker images for drools-pdp and drools-application using their own CI pipelines if needed.
-
-* TOSCA Policy Type design for operational policy supported by Drools so that policy is compliant with TOSCA policies
-* pip updated to pip3 in docker.
-* Extend PDP-D capabilities so that it can instantiate new drools controller instances for executing native Drools policies deployed from PAP.
-* Updated drools to use the redesigned Actors in policy/models.
-* Server Pool feature for supporting multiple active Drools PDP hosts.
-* server-pool is a resilient implementation that supports redundancy within and across data centers involving multiple PDP-Drools. Implementation involves hashing of which PDP-Drools owns which transaction and routing transactions to the appropriate PDP-Drools. By implementing as a feature, any deployment can choose to use or not use server-pool for its redundancy needs.
+* Support for PDP-D in offline mode to support locked deployments. This is the default ONAP installation.
+* Parameterize maven repository URLs for easier CI/CD integration.
+* Support for Tosca Compliant Operational Policies.
+* Support for TOSCA Compliant Native Policies that allows creation and deployment of new drools-applications.
+* Validation of Operational and Native Policies against their policy type.
+* Support for a generic Drools-PDP docker image to host any type of application.
+* Experimental Server Pool feature that supports multiple active Drools PDP hosts.
POLICY-DROOLS-APPLICATIONS
~~~~~~~~~~~~~~~~~~~~~~~~~~
-* Support for offline mode.
-* Rate limiting DCAE flooding of ONSETs
- - Policy will get flooded with potentially hundreds of ONSETs at once being picked up from DMaaP. Processing of multiple ONSETs (potentially hundreds in a batch read) of the same underlying unique network alarm severely impacts performance.
-
-* Design Operational Policy Type for Drools
- - Design and preload the drools operational policy type.
- - Backwards compatible support for tosca operational policies in usecases.
- - Tosca compliant vCPE, vFirewall, vDNS
-
-* PDP-D support for native Drools policy execution
- - Topics are decoupled from controllers. Native policies require topics configured at installation. Topics can also be overridden or new ones added when being placed in the mounted config directory.
-
-* Update Drools to use new actors.
- - Add frankfurt rules for Actor redesign
- - Usecases controller disabled (to be removed shortly after Frankfurt release) and the Frankfurt controller will be used.
-
-* Delete template.demo sub-module and amsterdam controllers
-* Removed vLB from drools-apps.
-* Replace URL with host/port/contextURI in the controlloop properties.
- - Corresponding changes in base.conf file in OOM which is mounted.
+* Removal of DCAE ONSET alarm duplicates (with different request IDs).
+* Support of a new controller (frankfurt) that supports the ONAP use cases under the new actor architecture.
+* Deprecated the "usecases" controller supporting the use cases under the legacy actor architecture.
+* Deleted the unsupported "amsterdam" controller related projects.
Known Limitations, Issues and Workarounds
=========================================
@@ -249,6 +228,10 @@ Known Limitations, Issues and Workarounds
System Limitations
------------------
+The policy API component requires a fresh new database when migrating to the frankfurt release.
+Therefore, upgrades require a fresh new database installation.
+Please see the
+`Installing or Upgrading Policy <https://onap.readthedocs.io/en/frankfurt/submodules/policy/parent.git/docs/installation/oom.html#installing-or-upgrading-policy>`__ section for appropriate procedures.
Known Vulnerabilities
---------------------
@@ -258,7 +241,7 @@ Known Vulnerabilities
Workarounds
-----------
-
+* `POLICY-2463 <https://jira.onap.org/browse/POLICY-2463>`_ - Parse incoming object using JSON.Parse() or cast the object to a String
Security Notes
--------------
diff --git a/integration/pom.xml b/integration/pom.xml
index 352f8103..a9881e4b 100644
--- a/integration/pom.xml
+++ b/integration/pom.xml
@@ -37,7 +37,7 @@
<properties>
<java.version>11</java.version>
<version.logback>1.2.3</version.logback>
- <version.dmaap>1.1.9</version.dmaap>
+ <version.dmaap>1.1.11</version.dmaap>
<version.powermock>2.0.4</version.powermock>
<version.eclipselink>2.7.5</version.eclipselink>
<version.jackson>2.10.0.pr3</version.jackson>
diff --git a/pom.xml b/pom.xml
index 505c0ccf..7321b46f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -23,7 +23,7 @@
<parent>
<groupId>org.onap.oparent</groupId>
<artifactId>oparent</artifactId>
- <version>3.0.0</version>
+ <version>3.1.0-SNAPSHOT</version>
<relativePath />
</parent>
<groupId>org.onap.policy.parent</groupId>
@@ -32,7 +32,7 @@
<packaging>pom</packaging>
<properties>
- <oparent.version>3.0.0</oparent.version>
+ <oparent.version>3.1.0-SNAPSHOT</oparent.version>
</properties>
<modules>