References
- - CPS-1616Getting issue details... STATUS
- Impl. Proposal CM Event Subscription LCM: Create
- Impl. Proposal CM Event Subscription LCM: Delete
Requirements
Functional
# | Interface | Requirement | Additional Information | Signoff |
---|---|---|---|---|
1 | CPS-E-08 | NCMP will forward 'CM Notifications Subscription' LCM Create events to the appropriate DMI Plugins responsible for the CM Handles (ids) defined in the LCM Events. | ||
2 | CPS-E-08 | NCMP will forward 'CM Notifications Subscription' LCM Delete events to the appropriate DMI Plugins responsible for the CM Handles is defined in the LCM Events. | ||
3 | CPS-E-08 | NCMP responds using Kafka message(s) with the result of the LCM operation These messages wil use agreed status fields:
| ||
4 | CPS-E-08 | All events should use Cloud Events format | https://cloudevents.io/ |
Error Handling
# | Error Scenario | Expected behavior |
---|---|---|
1 | Non responding DMIs (configurable timeout) | An error message listing the 'pending' CM Handle IDs and statusMessage as "partially applied subscription" with relevant statuscode. |
2 | Non Existing or non-valid CM Handle Ids | An error message listing the 'rejected' CM Handle IDs |
3 | DMI Plugin without CM Event subscription support | An error message listing the 'rejected' CM Handle IDs |
4 | Late (after timeout defined in #1) responding DMIs | A message contain the status message as "fully applied subscription" with relevant status code. |
Characteristics
# | Parameter | Expectation | Notes |
---|---|---|---|
1 | Frequency of LCM Events | No high volume of such events is expected For testing purposed 1 LCM event per minute would suffice | |
2 | How many subscriptions | ||
3 | How many cmhandles will be there per subscription | ||
4 | How many datastore-xpaths-filter for the subscription |
Out-of-scope
- Working with the wildcards, only list of specific CM Handle IDs are supported
- Subscription Update scenarios for an ongoing subscription.
Assumptions
# | Assumption | Notes |
---|---|---|
1 | Developing based on the schemas we previously agreed. Any change in the schemas will impact in code change. |
Issues & Decisions
# | Issue | Notes | Decision |
---|---|---|---|
1 | Maximum number of cm data subscriptions for create and delete use case | ||
2 | Maximum, Average CM Handles/subscription | ||
3 | Maximum, Average XPaths/CmHandles | ||
4 | What all datastores are supported ? | ncmp-datastore:passthrough-running or ncmp-datastore:passthrough-operational ?? or both? |
Overview
- Page to keep track of the underlying use case for Subscription Create and Subscription Delete.
- The events used will adhere to CNCF Cloud Events.
- NCMP wil not be responsible for keeping the 'state' of any subscription and thus decide which CM Events should be forwarded
Kafka Topics
# | Topic Name | Environment Variable | Source | Destination | Notes |
---|---|---|---|---|---|
1 | subscription | NCMP_CM_AVC_SUBSCRIPTION | DME | DME/Client-Apps | |
2 | ncmp-dmi-cm-avc-subscription-<dmi-name> | NCMP_FORWARD_CM_AVC_SUBSCRIPTION | NCMP | DMI Plugin | |
3 | dmi-ncmp-cm-avc-subscription | NCMP_RESPONSE_CM_AVC_SUBSCRIPTION | DMI Plugin | NCMP | |
4 | subscription-response | NCMP_OUTCOME_CM_AVC_SUBSCRIPTION | NCMP | DME/Client-Apps | |
5 | dmi-cm-events | DMI_CM_EVENTS_TOPIC | DMI Plugin | NCMP | actual data notifications as per the subscriptions |
6 | cm-events | NCMP_CM_EVENTS_TOPIC | NCMP | DME/Client-Apps | NCMP to forward the notifications to the client-apps. |