Add nbinotifications feature documentation
[transportpce.git] / docs / user-guide.rst
index 6b691f56683fba69af24dee3153757ab4afe7daf..f0d83ce15615e70d131658a219f99021bd8821cd 100644 (file)
@@ -29,7 +29,7 @@ handler, Renderer responsible for the path configuration through optical
 equipment and Optical Line Management (OLM) is associated with a generic block
 relying on open models, each of them communicating through published APIs.
 
-.. figure:: ./images/tpce_architecture.jpg
+.. figure:: ./images/TransportPCE-Diagramm-Magnesium.jpg
    :alt: TransportPCE architecture
 
    TransportPCE architecture
@@ -41,26 +41,29 @@ TransportPCE User-Facing Features
    -  This feature contains all other features/bundles of TransportPCE project.
       If you install it, it provides all functions that the TransportPCE project
       can support.
-
--  **odl-transportpce-api**
-
-   -  This feature contains all Transportpce project specific models defined in "Service-path".
+      It exposes all Transportpce project specific models defined in "Service-path".
       These models complement OpenROADM models describing South and Northbound APIs, and define the
       data structure used to interconnect the generic blocks/functions described on the previous
       diagram.
 
--  **odl-transportpce-ordmodels**
+-  **feature odl-transportpce-tapi**
+
+   -  This feature provides transportPCE a limited support of TAPI version 2.1.2 Northbound interface.
 
-   -  This feature contains all OpenROADM models : Common, Device, Network and Service models.
+-  **feature odl-transportpce-inventory**
 
--  **bundle transportpce-tapimodels**
+   -  This feature is considered experimental. It provides transportPCE with an external connector to
+      a MariaDB inventory currently limited to OpenROADM 1.2.1 devices.
 
-   -  This bundle contains models coming from TAPI version 2.1.2.
+-  **feature odl-transportpce-dmaap-client**
 
--  **bundle transportpce-tapis**
+   -  This feature is considered experimental. It provides a REST client in order to send TPCE notifications
+      to ONAP Dmaap Message router.
 
-   -  This bundle contains limited support of TAPI version 2.1.2 Northbound interface.
+-  **feature odl-transportpce-nbinotifications**
 
+   -  This feature is considered experimental. It provides transportPCE with connectors in order to read/write
+      notifications stored in topics of a Kafka server.
 
 How To Start
 ------------
@@ -68,9 +71,10 @@ How To Start
 Preparing for Installation
 ~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-1. Devices must support the standard OpenROADM Models more precisely versions
-   1.2.1 and 2.1. Limited support is provided for 2.2 and 2.2.1 devices.
-   If WDM is supported on them, the OTN support is considererd experimental at that date.
+1. Devices must support the standard OpenROADM Models more precisely versions 1.2.1 and 2.2.1.
+   Since Magnesium SR0, an OTN experimental support is provided for OpenROADM devices 2.2.1.
+   Magnesium SR2 is the first release managing end-to-end OTN services, as OCH-OTU4,
+   structured ODU4 or again 10GE-ODU2e services.
 
 2. Devices must support configuration through NETCONF protocol/API.
 
@@ -83,4 +87,52 @@ Run OpenDaylight and install TransportPCE Service *odl-transportpce* as below::
 
    feature:install odl-transportpce
 
+if you need TAPI limited support, then run::
+
+   feature:install odl-transportpce-tapi
+
+When installing the TAPI feature, you might encounter a heap memory size problem in Karaf.
+In that case, consider increasing Karaf heap memory size.
+For example by modifying the environment variables JAVA_MIN_MEM and JAVA_MAX_MEM before starting Karaf::
+
+   export JAVA_MIN_MEM=1024M
+   export JAVA_MAX_MEM=4069M
+
+if you need the inventory external connector support limited to 1.2.1 OpenROADM devices, then run::
+
+   feature:install odl-transportpce-inventory
+
+if you need the Dmaap connector support, before running Opendaylight, set DMAAP_BASE_URL as environment variable.
+For example, if the base url of your Dmaap server is "https://dmaap-mr:30226", then::
+
+    export DMAAP_BASE_URL=https://dmaap-mr:30226
+
+if your Dmaap server provides https connection through a self-signed certificate, do not forget to add the certificate
+to the JAVA truststore::
+
+    echo -n | openssl s_client -showcerts -connect dmaap-mr:30226 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > /tmp/dmaap.crt
+    keytool -import -v -trustcacerts -alias dmaap -file /tmp/dmaap.crt -keystore /etc/ssl/certs/java/cacerts -keypass changeit -storepass changeit -noprompt
+
+where dmaap-mr:30226 is the url of your Dmaap server.
+
+Then run in karaf::
+
+   feature:install odl-transportpce-dmaap-client
+
+If you need the NBI-notifications support, before installing odl-transportpce-nbinotifications feature,
+make sure to run ZooKeeper and then the Kafka server.
+By default, it is considered that the Kafka server is installed in localhost and listens on the 9092 port,
+if it isn't the case then set the KAFKA_SERVER environment variable of your system or
+modify the file *'transportpce/features/odl-transportpce-nbinotifications
+/src/main/resources/org.opendaylight.transportpce.nbinotifications.cfg'*::
+
+   suscriber.server=${env:KAFKA_SERVER:-[IP_ADDRESS]:[PORT]}
+   publisher.server=${env:KAFKA_SERVER:-[IP_ADDRESS]:[PORT]}
+
+*where [IP_ADDRESS] and [PORT] are respectively the IP address and the port that host the Kafka server.*
+
+After that, run in karaf::
+
+   feature:install odl-transportpce-nbinotifications
+
 For a more detailed overview of the TransportPCE, see the :ref:`transportpce-dev-guide`.