dmaap/message router(MR)
Architecture
Capabilities
Message Router is a RESTful web service used for any needed action with Kaka.
Usage Scenarios
Message Router endpoints are used to create/view/delete a topic in Kafka. Clients can use the Message Router endpoints to publish a message to a topic and subscribe to a topic
Interactions
Message Service REST service uses the message service API to interact with the ZooKeeper/Kafka
Offered APIs
DMaaP Message Router REST API Download docs
API name |
Swagger JSON |
---|---|
DMaaP MessageRouter API |
DMaaP Message Router API 4.0.0 (via swagger2doc)
Topic
POST /topics/create
Create a Topic
Description: AAF Permissions required to create authenticated topics: org.onap.dmaap.mr.topicFactory|:org.onap.dmaap.mr.topic:org.onap.dmaap.mr|create
Consumes: [‘application/json’]
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
body |
body |
Topic details |
Responses
200 - successful operation
401 - unauthorized
403 - forbidden
409 - topic already exist
500 - failed to create a topic
GET /topics
Get all topics
Description:
Produces: [‘application/json’]
Responses
200 - successful operation
500 - failed to return the topics
GET /topics/{topicName}
Get individual topic details
Description:
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
topicName |
path |
topicName |
string |
Responses
200 - successful operation
404 - topic not found
500 - failed to return the topics
GET /topics/listAll
Get all topics list with details
Description:
Produces: [‘application/json’]
Responses
200 - successful operation
500 - failed to return the topics
GET /events/{topic}/{consumergroup}/{consumerid}
Get events from a topic
Description: Subscribe to a topic. If already subscribed read the events from the topic. Basic Auth header is required for subcribing to a topic. AAF permissions required for subscribing to a authenticated topic: org.onap.dmaap.mr.topic|:topic.<topic name>|sub
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
topic |
path |
topic name |
string |
consumergroup |
path |
consumer group |
string |
consumerid |
path |
consumer id |
string |
limit |
query |
limit on the number of messages returned |
string |
timeout |
query |
amount of time in ms server will open the connection with the Kafka while reading the messages |
string |
Responses
200 - successful operation
401 - unauthorized
403 - forbidden
409 - unable to read the messages from the topic
429 - Client is making too many requests. Decrease the number of requests to avoid empty response
500 - internal server error
POST /events/{topic}/
Post events to a topic
Description: post an event to a topic. Basic Auth header is required for subcribing to a topic. AAF permissions required for subscribing to a authenticated topic: org.onap.dmaap.mr.topic|:topic.<topic name>|pub
Consumes: [‘application/json’, ‘text/plain’]
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
topic |
path |
topic name |
string |
partitionKey |
query |
topic partitionkey |
string |
body |
body |
mesage/s to publish to a topic |
Responses
200 - successful operation
400 - Invalid request
401 - unauthorized
403 - forbidden
404 - error while publishing to the topic
500 - internal server error
MirrorMaker
POST /mirrormakers/create
Create a Mirror Maker process and returns the all mirror maker processes
Description: AAF Permissions required: org.onap.dmaap.mr.mirrormaker|*|admin
Consumes: [‘application/json’]
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
body |
body |
Create Mirror Maker |
Responses
200 - successful operation
400 - invalid request
401 - unauthorized
403 - forbidden
503 - list mirror maker not available
POST /mirrormakers/update
Update a Mirror Maker process and returns the all mirror maker processes
Description: AAF Permissions required: org.onap.dmaap.mr.mirrormaker|*|admin
Consumes: [‘application/json’]
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
body |
body |
Update Mirror Maker |
Responses
200 - successful operation
400 - invalid request
401 - unauthorized
403 - forbidden
503 - list mirror maker not available
POST /mirrormakers/listAll
List of mirror maker processes
Description: AAF Permissions required: org.onap.dmaap.mr.mirrormaker|*|admin
Consumes: [‘application/json’]
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
body |
body |
List all Mirror Maker processes |
Responses
200 - successful operation
400 - invalid request
401 - unauthorized
403 - forbidden
503 - list mirror maker not available
POST /mirrormakers/delete
Delete a mirror maker process and return the all mirror maker processes
Description: AAF Permissions required: org.onap.dmaap.mr.mirrormaker|*|admin
Consumes: [‘application/json’]
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
body |
body |
Delete a Mirror Maker process |
Responses
200 - successful operation
400 - invalid request
401 - unauthorized
403 - forbidden
503 - list mirror maker not available
MirrorMaker Whitelist
POST /mirrormakers/createwhitelist
Add a new topic to a mirror maker whitelist and return all the mirror maker processes
Description: AAF Permissions required: rg.onap.dmaap.mr.mirrormaker|*|user , org.onap.dmaap.mr.topicFactory|:org.onap.dmaap.mr.topic:org.onap.dmaap.mr|create
Consumes: [‘application/json’]
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
body |
body |
Add a topic to whitelist |
Responses
200 - successful operation
400 - invalid request
401 - unauthorized
403 - forbidden
503 - list mirror maker not available
POST /mirrormakers/listallwhitelist
List all whitelist
Description: AAF Permissions required: rg.onap.dmaap.mr.mirrormaker|*|user , org.onap.dmaap.mr.topicFactory|:org.onap.dmaap.mr.topic:org.onap.dmaap.mr|create
Consumes: [‘application/json’]
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
body |
body |
List all whitelist |
Responses
200 - successful operation
400 - invalid request
401 - unauthorized
403 - forbidden
503 - list mirror maker not available
POST /mirrormakers/deletewhitelist
Delate a whitelist and returns the all lirror maker processes
Description: AAF Permissions required: rg.onap.dmaap.mr.mirrormaker|*|user , org.onap.dmaap.mr.topicFactory|:org.onap.dmaap.mr.topic:org.onap.dmaap.mr|create
Consumes: [‘application/json’]
Produces: [‘application/json’]
Parameters
Name |
Position |
Description |
Type |
---|---|---|---|
body |
body |
List all whitelist |
Responses
200 - successful operation
400 - invalid request
401 - unauthorized
403 - forbidden
503 - list mirror maker not available
Offered APIs
DMaaP Message Router utilizes an HTTP REST API to service all Publish and Consume transactions. HTTP and REST standards are followed so clients as varied as cURL, Java applications and even Web Browsers will work to interact with Message Router. Message Router uses AAF for user’s authentication and authorization.
General HTTP Requirements
A DMaaP Message Router transaction consists of 4 distinct segments: HTTP URL, HTTP Header, HTTP Body (POST) and HTTP Response. The general considerations for each segment are as follows and are required for each of the specific transactions described in this section.
HTTP URL
http[s]://serverBaseURL{/routing}{resourcePath}
The serverBaseURL points to DMaaP Message Router host/port that will service the request.
The resourcePath specifies the specific service, or Topic, that the client is attempting to reach
HTTP Header
Specifies HTTP Headers, such as Content-Type, that define the parameters of the HTTP Transaction
HTTP Body
The HTTP Body contains the topic content when Publishing or Consuming. The Body may contain topic messages in several formats (like below) but it must be noted, that, except in very specific circumstances, messages are not inspected for content.
Content-Type |
Description |
---|---|
text/plain |
Each line in the POST body is treated as a separate message. No partition key is specified, and therefore no order is guaranteed. This format is mainly for test, as messages are highly likely to be re-ordered when delivered through the Kafka cluster. |
application/json |
The payload maybe a single JSON object or a JSON array of JSON objects. Each object is handled as an individual message. Note that use of this format may result in equivalent but altered JSON objects sent to consumers. That’s because MR uses a standard JSON parser to read each object into memory before pushing the object to the Kafka system. At that point, the JSON object is re-written from the in-memory object. This can result in re-ordered fields or changes in whitespace. If you want to preserve JSON objects exactly, use application/cambria. Following the JSON format is recommended. |
Publishers
Description: Publishes data to Kafka server on the topic mentioned in the URL. Messages will be in the request body
The MessageRouter service has no requirements on what publishers can put onto a topic. The messages are opaque to the service and are treated as raw bytes. In general, passing JSON messages is preferred, but this is due to higher-level features and related systems, not the MessageRouter broker itself.
Request URL
POST http(s)://{HOST:PORT}/events/{topicname}
Request Parameters
Name |
Description |
Param Type |
Data type |
Max Len |
Required |
Format |
Valid/EXample values |
---|---|---|---|---|---|---|---|
Topicname |
topic name to be posted |
Path |
String |
40 |
Y |
org.onap.dmaap.mr.testtopic |
|
content-type |
To specify type of message |
Header |
String |
20 |
N |
application/json |
|
Username |
userid |
Header |
String |
N |
Basic Authentication Header |
||
Password |
Header |
String |
N |
Basic Authentication Header |
|||
partitionKey |
QueryParam |
String |
N |
String value |
?Partitionkey=123 |
- NOTE: To publish data to the authenticated topic, Publisher must
have the AAF permission org.onap.dmaap.mr.topic|:topic.<topic name>|pub.
Publishers may use DMaaP BusController for provisoning the AAF permissions
Response Parameters
Name |
Description |
Type |
Format |
Valid/Example Values |
---|---|---|---|---|
httpStatusCode |
200, 201 etc. |
|||
mrErrorCode |
Numeric error code |
200, 201 etc. |
||
errorMessage |
SUCCESS, or error message. |
|||
helpURL |
helpurl |
|||
transactionid |
transaction-id value |
Response /Error Codes
Response statusCode |
Response statusMessage |
---|---|
200-299 |
Success |
400-499 |
the client request has a problem |
500-599 |
the DMaaP service has a problem |
Error code |
HTTPCode |
Description |
Issue Reason |
---|---|---|---|
DMaaP_MR_ERR_3001 |
413 |
Request Entity too large |
Message size exceeds the batch limit <limit>. Reduce the batch size and try again |
DMaaP_MR_ERR_3002 |
500 |
Internal Server Error |
Unable to publish messages. Please contact administrator |
DMaaP_MR_ERR_3003 |
400 |
Bad Request |
Incorrect Batching format. Please correct the batching format and try again |
DMaaP_MR_ERR_3004 |
413 |
Request Entity too large |
Message size exceeds the message size limit <limit>. Reduce the message size and try again |
DMaaP_MR_ERR_3005 |
400 |
Bad Request |
Incorrect JSON object. Please correct the JSON format and try again |
DMaaP_MR_ERR_3006 |
504 |
Network Connect Timeout Error |
Connection to the DMaaP MR was timed out. Please try again |
DMaaP_MR_ERR_3007 |
500 |
Internal Server Error |
Failed to publish messages to topic <topicName>. Successfully published <count > number of messages. |
Sample Request:
POST Payload- {“message”:”message description”} Content-Type: application/json Example: curl -u XXXX@abc.com:X -H ‘Content-Type:text/plain’ -X POST -d @sampleMsg.txt { “count”: 1,
} |
Sample Response:
HTTP/1.1 200 OK
|
Subscribers
Description: To subscribe to a MessageRouter topic, a subscriber issues a GET to the RESTful HTTP endpoint for events.
Request URL:
GET http(s)://{HOST:PORT}}/events/{topicname}/{consumergroup}/{consumerid}/{timeout=x}
Request Parameters:
Name |
Description |
Param Type |
data type |
MaxLen |
Required |
Format |
Valid/Example Values |
---|---|---|---|---|---|---|---|
topicname |
Topic name to be posted |
Path |
String |
40 |
Y |
||
consumergroup |
A name that uniquely identifies your subscribers |
Path |
String |
Y |
CG1 |
||
consumerid |
Within your subscribers group, a name that uniquely identifies your subscribers process |
Path |
String |
Y |
C1 |
||
content-type |
To specify type of message content(json, text or cambria) |
Header |
String |
20 |
N |
application/json |
|
Username |
userid |
Header |
String |
1 |
N |
||
Password |
Header |
String |
1 |
N |
NOTE: To read data from an authenticated topic, User must have the AAF permission org.onap.dmaap.mr.topic|:topic.<topic name>|sub. Subscribers may use DMaaP BusController for provisioning the permissions in AAF
Response Parameters:
Name |
Description |
Type |
Format |
Valid/Example Values |
---|---|---|---|---|
httpStatusCode |
200, 201 etc. |
|||
mrErrorCode |
Numeric error code |
200, 201 etc. |
||
errorMessage |
SUCCESS, or error message. |
|||
helpURL |
helpurl |
|||
transactionid |
transaction-id value |
28-12-2015::08:18:50:682::<IP>::28122015552391 |
||
ResponseBody |
Messages consumed from topic |
Json |
Json |
Response /Error Codes
Response statusCode |
Response statusMessage |
---|---|
200-299 |
Success |
400-499 |
the client request has a problem |
500-599 |
the DMaaP service has a problem |
Error code |
HTTPCode |
Description |
Issue Reason |
---|---|---|---|
DMaaP_MR_ERR_3008 |
413 |
Request Entity too large |
Message size exceeds the batch limit <limit>.Reduce the batch size and try again |
DMaaP_MR_ERR_3009 |
500 |
Internal Server Error |
Unable to publish messages. Please contact administrator |
DMaaP_MR_ERR_3010 |
400 |
Bad Request |
Incorrect Batching format. Please correct the batching format and try again |
DMaaP_MR_ERR_3011 |
413 |
Request Entity too large |
Message size exceeds the message size limit <limit>.Reduce the message size and try again |
DMaaP_MR_ERR_5012 |
429 |
Too many requests |
This client is making too many requests. Please use a long poll setting to decrease the number of requests that result in empty responses. |
503 |
Service Unavailable |
Service Unavailable. |
Sample Request:
Provisioning
Description: To create, modify or delete the MessageRouter topics. These APIs can also be used by other applications to provision topics in MessageRouter. DMaaP BusController is recommended for topic and AAF permissions provisioning
Create Topic
Request URL:
POST http(s)://{HOST:PORT}/topics/create
Request Parameters:
- NOTE: To Create an authenticated topic, user must have the AAF permission
org.onap.dmaap.mr.topicFactory|:org.onap.dmaap.mr.topic:org.onap.dmaap.mr|create
Response statusCode |
Response statusMessage |
---|---|
200-299 |
Success |
400-499 |
the client request has a problem |
500-599 |
the DMaaP service has a problem |
Error code |
HTTP Code |
Description |
---|---|---|
DMaaP_MR_ERR_5001 |
500 |
Failed to retrieve list of all topics |
DMaaP_MR_ERR_5002 |
500 |
Failed to retrieve details of topic:<topicName> |
DMaaP_MR_ERR_5003 |
500 |
Failed to create topic:<topicName> |
DMaaP_MR_ERR_5004 |
500 |
Failed to delete topic:<topicName> |
Response Parameters
Name |
Description |
Type |
Format |
Valid/Example Values |
---|---|---|---|---|
httpStatusCode |
200, 201 etc. |
|||
mrErrorCode |
Numeric error code |
5005 |
||
errorMessage |
SUCCESS, or error message. |
|||
helpURL |
helpurl |
|||
ResponseBody |
Topic details (owner, trxEnabled=true) |
Json |
Json |
Sample Request:
POST http://<hostname>:3904/topics/createRequest Body {“topicName”:”org.onap.dmaap.mr.testtopic”,”description”:”This is a test Topic “, “partitionCount”:”1”,”replicationCount”:”3”,”transactionEnabled”:”true”} Content-Type: application/json Example: curl -u XXXc@csp.abc.com:xxxxx$ -H ‘Content-Type:application/json’ -X POST -d @topicname.txt http://message-router:3904/topics/create { “writerAcl”: { “enabled”: false, “users”: [] }, “description”: “This is a TestTopic”, “name”: “org.onap.dmaap.mr.testtopic”, “readerAcl”: { “enabled”: false, “users”: []
GetTopic Details
Request URL
GET http(s)://{HOST:PORT}/topics : To list the details of all the topics in Message Router.
GET http(s)://{HOST:PORT}/topics/{topicname} : To list the details of a specified topic.
Request Parameters
Name |
Description |
Param Type |
Data type |
Max Len |
Required |
Format |
Valid/EXample values |
---|---|---|---|---|---|---|---|
topicname |
topic name details |
Body |
String |
20 |
Y |
Json |
org.onap.dmaap.mr.testtopic |
- NOTE: To view an authenticated topic, user must have the AAF permission
org.onap.dmaap.mr.topic|*|view
Response Parameters
Name |
Description |
ParamType |
datatype |
Format |
Valid/Example Values |
---|---|---|---|---|---|
topicname |
topic name details |
Body |
String |
Json |
org.onap.dmaap.mr.testopic |
description |
String |
||||
owner |
|
||||
txenabled |
true or false |
boolean |
Response statusCode |
Response statusMessage |
---|---|
200-299 |
Success |
400-499 |
the client request has a problem |
500-599 |
the DMaaP service has a problem |
Sample Request:
|
Delete Topics
Request URL:
DELETE http(s)://{HOST:PORT}/topics/{topicname}
NOTE: To delete a topic, user must have the AAF permission org.onap.dmaap.mr.topicFactory|:org.onap.dmaap.mr.topic:org.onap.dmaap.mr|destroy
Sample Request:
ex: http://<hostname>:3904/topics/org.onap.dmaap.mr.testopic
Response statusCode |
Response statusMessage |
---|---|
200-299 |
Success |
400-499 |
the client request has a problem |
500-599 |
the DMaaP service has a problem |
Error code |
Description |
HTTP code |
---|---|---|
DMaaP_MR_ERR_5004 |
Failed to delete topic:<topicName> |
500 |
API Inventory
API Name |
API Method |
REST API Path |
Comments |
||
---|---|---|---|---|---|
Topics |
GetAll Topics List |
getTopics() |
/topics |
GET |
|
Get All Topics List with details |
getAllTopics() |
/topics/listAll |
GET |
||
Get individual Topic Details |
getTopic(String topicName) |
/topics/{topicName} |
GET |
||
Create Topic |
createTopic(TopicBean topicBean) |
/topics/create |
POST |
||
Delete Topic |
deleteTopic(String topicName) |
/topics/{topicName} |
DELETE |
Not used in current MR version |
|
Get Publishers for a Topic |
getPublishersByTopicName (String topicName) |
/topics/{topicName}/producers |
GET |
UEB Backward Compatibility |
|
Add a Publisher to write ACL on a Topic |
permitPublisherForTopic (String topicName, String producerId) |
/topics/{topicName}/producers/ {producerId} |
PUT |
||
Remove a Publisher from write ACL on a Topic |
denyPublisherForTopic(String topicName, String producerId) |
/topics/{topicName}/producers/ {producerId} |
DELETE |
||
Get Consumers for a Topic |
getConsumersByTopicName (String topicName) |
/topics/{topicName}/consumers |
GET |
||
Add a Consumer to read ACL on a Topic |
permitConsumerForTopic(String topicName, String consumerId) |
/topics/{topicName}/consumers/ {consumerId} |
PUT |
||
Remove a consumer from write ACL on a Topic |
denyPublisherForTopic(String topicName, String consumerId) |
/topics/{topicName}/consumers/ {consumerId} |
DELETE |
Consumed APIs
Message Router do not consume any API
Delivery
Message Router is comprised of Message Router service and Message Router API. Message Router uses Kafka and ZooKeeper

Logging
Note
This section is used to describe the informational or diagnostic messages emitted from a software component and the methods or collecting them.
This section is typically: provided for a platform-component and sdk; and referenced in developer and user guides
This note must be removed after content has been added.
Where to Access Information
Message Router uses logback framework to generate logs and all the logs are emitted to the console.
Error / Warning Messages
Following are the error codes
Installation
Environment
Message Router is developed using Kafka, Zookeeper and Java. AJSC framework is used to create the REST service and Docker was used to package the service.
Steps
Message Router has 3 docker containers. Dmaap_container, kafka_container and zookeeper_container. Zookeeper runs on 172.18.0.2, kafka runs on 172.18.0.3 and dmaap on 172.18.0.4.
Clone message service repo
git clone http://gerrit.onap.org/r/dmaap/messagerouter/messageservice
copy messageservice/bundleconfig-local/etc/appprops/MsgRtrApi.properties to /var/tmp directory
In /var/tmp/MsgRtrApi.properties, change value of below variables as shown below:
config.zk.servers=172.18.0.2(Change as per where ZooKeepeer is deployed)
kafka.metadata.broker.list=172.18.0.3:9092(Change as per where Kafka is deployed)
Install docker and docker-compose
Go to messageservice/src/main/resources/docker-compose and run:
docker-compose up # add -d argument to start process as a daemon (background process)
This should start 3 containers.
Run docker ps. It should show 3 containers.
Testing
For publishing, create a sample.txt file with some content in the directory where you will run below rest api. Run below rest api:
curl -H “Content-Type:text/plain” -X POST -d @sample.txt http://172.18.0.4:3904/events/TestTopic1
For subscribing, run below rest api:
curl -H “Content-Type:text/plain” -XGET http://172.18.0.4:3904/events/TestTopic1/CG1/C1?timeout=1000
Note: You will only receive messages which have been published after you have subscribed to a topic.
Steps for local development and test
On Intel dev machine, in terminal (> indicates prompt) : 1) Build kafka11aaf
> git clone https://gerrit.onap.org/r/dmaap/kafka > cd kafka11aaf > mvn clean install -Pdocker
- Build messageservice
- > git clone https://gerrit.onap.org/r/dmaap/messagerouter/messageservice
anonymous http, can’t push changes
> cd messageservice > mvn clean install -Pdocker
- Run tests
- > cp bundleconfig-local/etc/appprops/MsgRtrApi.properties /var/tmp/
- edit /var/tmp/MsgRtrApi.properties
config.zk.servers=zookeeper kafka.metadata.broker.list=kafka:9092 - docker-compose network maps service name(zookeeper, kafka) to IP
set docker preferences/file sharing to access /var/tmp
> cd src/main/resources/docker-compose - edit docker-compose.yml
- remove “nexus3.onap.org:10001/” from kafka and dmaap image names to
use local images
> docker-compose up -d - create sample.txt file (as above)(content of file not important) > curl -H “Content-Type:text/plain” -X POST -d @sample.txt http://localhost:3904/events/TestTopic1
On Arm: 1) Build kafka11aaf
> git clone https://gerrit.onap.org/r/dmaap/kafka > cd kafka11aaf > mvn clean install -Pdocker -Ddocker.pull.registry=docker.io
ensure we pull Arm version of base image
- Build messageservice
- > git clone https://gerrit.onap.org/r/dmaap/messagerouter/messageservice
anonymous http, can’t push changes
> cd messageservice > mvn clean install -Pdocker -Ddocker.pull.registry=docker.io
ensure we pull Arm version of base image
- Run tests
- > cp bundleconfig-local/etc/appprops/MsgRtrApi.properties /var/tmp/
- edit /var/tmp/MsgRtrApi.properties
config.zk.servers=zookeeper kafka.metadata.broker.list=kafka:9092 - docker-compose network maps service name(zookeeper, kafka) to IP
set docker preferences/file sharing to access /var/tmp
> cd src/main/resources/docker-compose - edit docker-compose.yml
- remove “nexus3.onap.org:10001/” from from kafka and dmaap image names to
use local images
- replace ‘nexus3.onap.org:10001/onap/dmaap/zookeeper:1.0.0’ with
multi-platform ‘zookeeper’
> docker-compose up -d - create sample.txt file (as above)(content of file not important) > curl -H “Content-Type:text/plain” -X POST -d @sample.txt http://localhost:3904/events/TestTopic1
Configuration
Deploy the ZooKeeper and Kafka and update the following 2 properties in MsgRtrApi.properties
Administration
Processes
NA
Actions
NA
Human Interfaces
Message Router does not have human interfaces
Release Notes
Istanbul Maintenance
Abstract
This document provides the DMaaP Message Router release notes for the Istanbul release.
Summary
Securities Issues addressed
Release Data
DMaaP Message Router Project |
|
Docker images |
|
Release designation |
9.0.1 Istanbul Maintenance |
Release date |
2022-02-17 |
New features
Remediate log4j bug (DMAAP-1691)
Known Limitations, Issues and Workarounds
System Limitations
Known Vulnerabilities
Workarounds
Security Notes
References
For more information on the ONAP Guilin release, please see:
Quick Links: - DMAAP project page - Passing Badge information for DMAAP
Release Notes
Istanbul
Abstract
This document provides the DMaaP Message Router release notes for the Istanbul release.
Summary
Securities Issues addressed
Release Data
DMaaP Message Router Project |
|
Docker images |
|
Release designation |
9.0.0 Istanbul |
Release date |
2021-10-14 |
New features
Consolidate msgrtr and message-service repos (DMAAP-1582)
Remove redundant data (DMAAP-1638)
Sonar fixes (DMAAP-1564)
Remove Python 2.7 (DMAAP-1489)
Sec vulnerabilities fix (DMAAP-1608)
Known Limitations, Issues and Workarounds
System Limitations
Known Vulnerabilities
Workarounds
Security Notes
References
For more information on the ONAP Guilin release, please see:
Quick Links: - DMAAP project page - Passing Badge information for DMAAP
Honolulu
Abstract
This document provides the DMaaP Message Router release notes for the Honolulu release.
Summary
Securities Issues addressed
Release Data
DMaaP Message Router Project |
|
Docker images |
|
Release designation |
8.0.0 Honolulu |
Release date |
2021-04-01 |
New features
Fix Security Vulnerabilities (listed in “Known Vulnerabilities” below) - DMAAP-1515
Alter Project Lead information - DMAAP-1538
Update certs - DMAAP-1565
Update AAF Artifacts - DMAAP-1565
Known Limitations, Issues and Workarounds
System Limitations
Known Vulnerabilities
CVE-2018-11307
CVE-2018-12022
CVE-2018-12023
CVE-2019-17571
SONATYPE-2010-0053
CVE-2020-11994
SONATYPE-2015-0174
CVE-2020-5397
SONATYPE-2012-0050
Workarounds
Security Notes
References
For more information on the ONAP Guilin release, please see:
Quick Links: - DMAAP project page - Passing Badge information for DMAAP
Guilin maintenance
Version: 7.0.1
Abstract
This document provides the release notes for the Guilin Maintenance release
Summary
This maintenance release is primarily to resolve bugs identified during Guilin release testing.
Release Data
DMaaP Message Router Project |
|
Docker images |
Same as Guilin Release |
Release designation |
Guilin Maintenance Release |
Release date |
2021/04/19 |
New features
None
Bug fixes
DMAAP-1547 Update certificats for DMaaP message router
Known Issues
Same as Guilin Release
Guilin
Abstract
This document provides the DMaaP Message Router release notes for the Guilin release.
Summary
Release Data
DMaaP Message Router Project |
|
Docker images |
|
Release designation |
7.0.0 guilin |
Release date |
2020-11-18 |
New features
Known Limitations, Issues and Workarounds
System Limitations
Known Vulnerabilities
CVE-2016-1000027
CVE-2018-11307
CVE-2019-13990
SONATYPE-2018-0624
CVE-2018-12022
SONATYPE-2019-0414
SONATYPE-2019-0808
CVE-2019-10241
CVE-2019-12406
CVE-2020-5408
CVE-2019-10246
CVE-2019-10247
CVE-2020-5397
SONATYPE-2012-0050
SONATYPE-2017-0507
SONATYPE-2019-0469
CVE-2018-12023
SONATYPE-2018-0624
CVE-2019-20444
CVE-2019-20445
CVE-2019-16869
SONATYPE-2020-0029
SONATYPE-2020-0103
CVE-2019-17571
CVE-2020-5398
CVE-2018-17196
Workarounds
Security Notes
References
For more information on the ONAP Guilin release, please see:
Quick Links: - DMAAP project page - Passing Badge information for DMAAP
Frankfurt
Abstract
This document provides the DMaaP Message Router release notes for the Frankfurt release.
Summary
Release Data
DMaaP Message Router Project |
|
Docker images |
|
Release designation |
6.0.0 frankfurt |
Release date |
2020-06-04 |
New features
Kafka and Zookeeper images are created using confluent community edition 5.3.0
Prometheus monitoring
Protected all the Kafka operations using AAF
Remove the AAF dependency by toggling a flag
Known Limitations, Issues and Workarounds
System Limitations
Known Vulnerabilities
CVE-2016-1000027
CVE-2018-11307
CVE-2019-13990
SONATYPE-2018-0624
CVE-2018-12022
SONATYPE-2019-0414
SONATYPE-2019-0808
CVE-2019-10241
CVE-2019-12406
CVE-2020-5408
CVE-2019-10246
CVE-2019-10247
CVE-2020-5397
SONATYPE-2012-0050
SONATYPE-2017-0507
SONATYPE-2019-0469
CVE-2018-12023
SONATYPE-2018-0624
CVE-2019-20444
CVE-2019-20445
CVE-2019-16869
SONATYPE-2020-0029
SONATYPE-2020-0103
CVE-2019-17571
CVE-2020-5398
CVE-2018-17196
Workarounds
Security Notes
References
For more information on the ONAP Frankfurt release, please see:
Quick Links: - DMAAP project page - Passing Badge information for DMAAP
ElAlto
Version: 1.1.16
- Release Date
2019-10-10
New Features
Cert based authentication support in Message Router
Improved Kafka and Zookeeper cluster lookup
Pluggable Kafka server.properties,log4j.properties and Message Router logback.xml
Bug Fixes
Fixed for security vulnerabilities in Message Router
Fixed authorization issues in Message Router
- Known Issues
NA
Security Notes
DMAAP code has been formally scanned during build time using NexusIQ and all Critical vulnerabilities have been addressed, items that remain open have been assessed for risk and determined to be false positive. The DMAAP open Critical security vulnerabilities and their risk assessment have been documented as part of the Dublin.
Quick Links:
- Upgrade Notes
NA
Deprecation Notes
Dublin
Version: 1.1.14
- Release Date
2019-06-06
New Features
Upgrade Kafka to v1.1.1
Support for Authenticated topics
Add Scaling support
Support for multi-site applications
Add MirrorMaker to allow for message replication across Kafka clusters
- Bug Fixes
NA
- Known Issues
NA
Security Notes
DMAAP code has been formally scanned during build time using NexusIQ and all Critical vulnerabilities have been addressed, items that remain open have been assessed for risk and determined to be false positive. The DMAAP open Critical security vulnerabilities and their risk assessment have been documented as part of the Dublin.
Quick Links:
- Upgrade Notes
NA
Deprecation Notes
Casablanca
Version: 1.1.8
- Release Date
2018-11-30
New Features
DMaaP client changes to fix some known issues
Kafka upgrade to 0.11.0.1 and corresponding changes in the Message Router
New Kafka image was created instead of using the publicly available Kafka image
- Bug Fixes
NA
Known Issues
If the ZooKeeper is restarted, Message Router works as expected only after restarting the Message Router . Refer Jira for more details
Security Notes
DMAAP code has been formally scanned during build time using NexusIQ and all Critical vulnerabilities have been addressed, items that remain open have been assessed for risk and determined to be false positive. The DMAAP open Critical security vulnerabilities and their risk assessment have been documented as part of the Casablanca.
Quick Links:
- Upgrade Notes
NA
Deprecation Notes
Beijing
Version: 1.1.4
- Release Date
2018-06-07
New Features
Topic creation with out AAF
DMaaP client changes to call the message Router with out authentication
Kafka upgrade from 0.8.11 to 1.1.0
Fixes for docker image packaging issues
- Bug Fixes
NA
- Known Issues
NA
Security Notes
DMAAP code has been formally scanned during build time using NexusIQ and all Critical vulnerabilities have been addressed, items that remain open have been assessed for risk and determined to be false positive. The DMAAP open Critical security vulnerabilities and their risk assessment have been documented as part of the project.
Quick Links: - DMAAP project page - Passing Badge information for DMAAP - Project Vulnerability Review Table for DMAAP
- Upgrade Notes
NA
Deprecation Notes
Amsterdam
Version: 1.0.1
- Release Date
2017-11-16
New Features:
Pub/sub messaging metaphor to broaden data processing opportunities
A single solution for most event distribution needs to support a range of environments
Standardized topic names
Implements a RESTful HTTP API for provisioning
Implements a RESTful HTTP API for message transactions (i.e. pub, sub)
Implements a RESTful HTTP API for transaction metrics
Topic registry and discovery
- Bug Fixes
- Known Issues
DMAAP-164 The dependency from kafka for zookeeper created issues when the vm is restarted
Other