From 794fa0b116fd5bdc51b6e97839bcb6018d4dfc52 Mon Sep 17 00:00:00 2001 From: jhh Date: Mon, 18 May 2020 23:23:58 -0500 Subject: [PATCH] pdp-d stability documentation Issue-ID: POLICY-2356 Signed-off-by: jhh Change-Id: I390c43cb89145f16a35ca1a65a4e6efb0d185852 Signed-off-by: jhh --- docs/development/devtools/drools-s3p.rst | 299 +++++++++++++++++++++ ...p-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e.png | Bin 0 -> 24840 bytes .../devtools/images/ControlLoop-vCPE-Fail.png | Bin 0 -> 21432 bytes ...p-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3.png | Bin 0 -> 26996 bytes .../devtools/images/ControlLoop-vDNS-Fail.png | Bin 0 -> 21654 bytes ...rewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a.png | Bin 0 -> 27189 bytes 6 files changed, 299 insertions(+) create mode 100644 docs/development/devtools/images/ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e.png create mode 100644 docs/development/devtools/images/ControlLoop-vCPE-Fail.png create mode 100644 docs/development/devtools/images/ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3.png create mode 100644 docs/development/devtools/images/ControlLoop-vDNS-Fail.png create mode 100644 docs/development/devtools/images/ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a.png diff --git a/docs/development/devtools/drools-s3p.rst b/docs/development/devtools/drools-s3p.rst index 3082732f..429186b6 100644 --- a/docs/development/devtools/drools-s3p.rst +++ b/docs/development/devtools/drools-s3p.rst @@ -10,3 +10,302 @@ Policy Drools PDP component ~~~~~~~~~~~~~~~~~~~~~~~~~~~ +Both the Performance and the Stability tests were executed against a default ONAP installation in the PFPP tenant, from an independent VM running the jmeter tool to inject the load. + +General Setup +************* + +The kubernetes installation allocated all policy components in the same worker node VM and some additional ones. The worker VM hosting the policy components has the +following spec: + +- 16GB RAM +- 8 VCPU +- 160GB Ephemeral Disk + +The standalone VM designated to run jmeter has the same configuration and was only +used to run this tool allocating 12G of heap memory to the jmeter tool. + +Other ONAP components used during the estability tests are: + +- Policy XACML PDP to process guard queries for each transaction. +- DMaaP to carry PDP-D and jmeter initiated traffic to complete transactions. +- Policy API to create (and delete at the end of the tests) policies for each + scenario under test. +- Policy PAP to deploy (and undeploy at the end of the tests) policies for each scenario under test. + +The following components are simulated during the tests. + +- SO actor for the vDNS use case. +- APPC responses for the vCPE and vFW use cases. +- AAI to answer queries for the usecases under test. + +In order to restrict APPC responses to just the jmeter too driving all transactions, +the APPC component was disabled. + +SO, and AAI actors were simulated internally within the PDP-D by enabling the +feature-controlloop-utils previous to run the tests. + +PDP-D Setup +*********** + +The kubernetes charts were modified previous to the installation with +the changes below. + +The oom/kubernetes/policy/charts/drools/resources/configmaps/base.conf was +modified: + +.. code-block:: bash + + --- a/kubernetes/policy/charts/drools/resources/configmaps/base.conf + +++ b/kubernetes/policy/charts/drools/resources/configmaps/base.conf + @@ -85,27 +85,27 @@ DMAAP_SERVERS=message-router + + # AAI + + -AAI_HOST=aai.{{.Release.Namespace}} + -AAI_PORT=8443 + +AAI_HOST=localhost + +AAI_PORT=6666 + AAI_CONTEXT_URI= + + # MSO + + -SO_HOST=so.{{.Release.Namespace}} + -SO_PORT=8080 + -SO_CONTEXT_URI=onap/so/infra/ + -SO_URL=https://so.{{.Release.Namespace}}:8080/onap/so/infra + +SO_HOST=localhost + +SO_PORT=6667 + +SO_CONTEXT_URI= + +SO_URL=https://localhost:6667/ + + # VFC + + -VFC_HOST= + -VFC_PORT= + +VFC_HOST=localhost + +VFC_PORT=6668 + VFC_CONTEXT_URI=api/nslcm/v1/ + + # SDNC + + -SDNC_HOST=sdnc.{{.Release.Namespace}} + -SDNC_PORT=8282 + +SDNC_HOST=localhost + +SDNC_PORT=6670 + SDNC_CONTEXT_URI=restconf/operations/ + +The AAI actor had to be modified to disable https to talk to the AAI simulator. + +.. code-block:: bash + + ~/oom/kubernetes/policy/charts/drools/resources/configmaps/AAI-http-client.properties + + http.client.services=AAI + + http.client.services.AAI.managed=true + http.client.services.AAI.https=false + http.client.services.AAI.host=${envd:AAI_HOST} + http.client.services.AAI.port=${envd:AAI_PORT} + http.client.services.AAI.userName=${envd:AAI_USERNAME} + http.client.services.AAI.password=${envd:AAI_PASSWORD} + http.client.services.AAI.contextUriPath=${envd:AAI_CONTEXT_URI} + +The SO actor had to be modified similarly. + +.. code-block:: bash + + oom/kubernetes/policy/charts/drools/resources/configmaps/SO-http-client.properties: + + http.client.services=SO + + http.client.services.SO.managed=true + http.client.services.SO.https=false + http.client.services.SO.host=${envd:SO_HOST} + http.client.services.SO.port=${envd:SO_PORT} + http.client.services.SO.userName=${envd:SO_USERNAME} + http.client.services.SO.password=${envd:SO_PASSWORD} + http.client.services.SO.contextUriPath=${envd:SO_CONTEXT_URI} + +The feature-controlloop-utils was started by adding the following script: + +.. code-block:: bash + + oom/kubernetes/policy/charts/drools/resources/configmaps/features.pre.sh: + + #!/bin/bash + bash -c "features enable controlloop-utils" + +The PDP-D uses a small configuration: + + +Stability Test of Policy PDP-D +****************************** + +The 72 hour stability test happened in parallel with the estability run of the API component. + +.. code-block:: bash + + small: + limits: + cpu: 1 + memory: 4Gi + requests: + cpu: 100m + memory: 1Gi + +Approximately 3.75G heap was allocated to the PDP-D JVM at initialization. + +Worker Node performance +======================= + +The VM named onap-k8s-07 was monitored for the duration of the two parallel +stability runs. The table below show the usage ranges: + +.. code-block:: bash + + NAME CPU(cores) CPU% MEMORY(bytes) MEMORY% + onap-k8s-07 <=1374m <=20% <=10643Mi <=66% + +PDP-D performance +================= + +The PDP-D was monitored during the run an stayed below the following ranges: + +.. code-block:: bash + + NAME CPU(cores) MEMORY(bytes) + dev-drools-0 <=142m 684Mi + +Garbagge collection was monitored without detecting any major spike. + +The following use cases were tested: + +- vCPE +- vDNS +- vFirewall + +For 72 hours the following 5 scenarios were run in parallel: + +- vCPE success scenario +- vCPE failure scenario (failure returned by simulated APPC recipient through DMaaP). +- vDNS success scenario. +- vDNS failure scenario. +- vFirewall success scenario. + +Five threads, one for each scenario described above, push the traffic back to back +with no pauses. + +All transactions completed successfully as expected in each scenario. + +The command executed was + +.. code-block:: bash + + jmeter -n -t /home/ubuntu/jhh/s3p.jmx > /dev/null 2>&1 + +The results were computed by taking the ellapsed time from the audit.log +(this log reports all end to end transactions, marking the start, end, and +ellapsed times). + +The count reflects the number of successful transactions as expected in the +use case, as well as the average, standard deviation, and max/min. An histogram +of the response times have been added as a visual indication on the most common transaction times. + +vCPE Success scenario +===================== + +ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e: + +.. code-block:: bash + + count 155246.000000 + mean 269.894226 + std 64.556282 + min 133.000000 + 50% 276.000000 + max 1125.000000 + + +Transaction Times histogram: + +.. image:: images/ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e.png + + +vCPE Failure scenario +===================== + +ControlLoop-vCPE-Fail: + +.. code-block:: bash + + ControlLoop-vCPE-Fail : + count 149621.000000 + mean 280.483522 + std 67.226550 + min 134.000000 + 50% 279.000000 + max 5394.000000 + + +Transaction Times histogram: + +.. image:: images/ControlLoop-vCPE-Fail.png + +vDNS Success scenario +===================== + +ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3: + +.. code-block:: bash + + count 293000.000000 + mean 21.961792 + std 7.921396 + min 15.000000 + 50% 20.000000 + max 672.000000 + +Transaction Times histogram: + +.. image:: images/ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3.png + +vDNS Failure scenario +===================== + +ControlLoop-vDNS-Fail: + +.. code-block:: bash + + count 59357.000000 + mean 3010.261267 + std 76.599948 + min 0.000000 + 50% 3010.000000 + max 3602.000000 + +Transaction Times histogram: + +.. image:: images/ControlLoop-vDNS-Fail.png + +vFirewall Failure scenario +========================== + +ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a: + +.. code-block:: bash + + count 175401.000000 + mean 184.581251 + std 35.619075 + min 136.000000 + 50% 181.000000 + max 3972.000000 + +Transaction Times histogram: + +.. image:: images/ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a.png + + + + diff --git a/docs/development/devtools/images/ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e.png b/docs/development/devtools/images/ControlLoop-vCPE-48f0c2c3-a172-4192-9ae3-052274181b6e.png new file mode 100644 index 0000000000000000000000000000000000000000..788e23138aa236f9f27b324331fb1584c14b5ec8 GIT binary patch literal 24840 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 literal 0 HcmV?d00001 diff --git a/docs/development/devtools/images/ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3.png b/docs/development/devtools/images/ControlLoop-vDNS-6f37f56d-a87d-4b85-b6a9-cc953cf779b3.png new file mode 100644 index 0000000000000000000000000000000000000000..92f82eb6b790a55ce625f4d5d70d479dcc3edf85 GIT binary patch literal 26996 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 Ah5!Hn literal 0 HcmV?d00001 diff --git a/docs/development/devtools/images/ControlLoop-vDNS-Fail.png b/docs/development/devtools/images/ControlLoop-vDNS-Fail.png new file mode 100644 index 0000000000000000000000000000000000000000..e5f4ce3b0c4e5dbb6272c8fc0d19ed41434ec2cd GIT binary patch literal 21654 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 literal 0 HcmV?d00001 diff --git a/docs/development/devtools/images/ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a.png b/docs/development/devtools/images/ControlLoop-vFirewall-d0a1dfc6-94f5-4fd4-a5b5-4630b438850a.png new file mode 100644 index 0000000000000000000000000000000000000000..345ea7d0c54817b3f0b9b39304f80efac1d331d9 GIT binary patch literal 27189 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 literal 0 HcmV?d00001 -- 2.16.6