Download presentation
1
CARDINAL DESIGN APPROACH (OVERVIEW)
Incremental design document (Submission dated 20-May-2016)
2
CARDINAL – OpenDaylight Monitoring As A Service
Cardinal (OpenDaylight Monitoring as a Service) aims at providing a solution in OpenDaylight that extends the following for a remote NMS: OpenDaylight MIB (Management Information Base) defined in OID experimental An abstraction layer (in ODL) for exposing monitoring, diagnostics and generating events Expose ODL health to any north-bound SDN monitoring or analytics application Extend northbound services or API mapped to NMS understandable protocol o Request / Response: SNMP (v2c, v3), REST o Autonomous: SNMP Traps, INFO CORE FEATURES OF CARDINAL ARE : Defining and loading a ODL MIB Exposing ODL Health Exposing features, bundles and other karaf related parameters Exposing data from other projects such as IoTDM, openflow, SFC via MD-SAL datastore
3
Remote Network Management Network (NMS)
OPENDAYLIGHT “BORON” | Cardinal Scope Remote Network Management Network (NMS) Cardinal
4
HIGH LEVEL ARCHITECTURE
5
Snmp4j libraries Listeners on RPC ODL Node NETWORK MANAGEMENT SYSTEM
OpenSource/Vendor NMS CARDINAL REST APIS (NB APIS) ODL MIB DATA/TRAPS Snmp4j libraries Cardinal Feature Config file for Rules/Threshold on Agents X threshold ODL Node ODL MIB ODL Health System Libraries RunTIme Libraries snmptrapd TRAPHANDLER trap KARAF/OSGI Inter-Op MDSAL Inter-Op Karaf snmpd Cardinal Agent (For System and Karaf details) Karaf Libraries Java lang ManagementLibraries Listeners on RPC MD-SAL MDSAL DATASTORE NETCONF IOT OPENFLOW PLUGIN
6
DESIGN APPROACH
7
Design document | Cardinal – snmpd/snmptrapd start
BindingAwareProvider onSessionInitiated() CardinalProvider onSessionInitiated() close() AutoCloseable close() Conf file MIB CardinalHealthManager CardinalKarafManager CardinalMDSALManager SnmpDaemeonStart SnmpDaemeonStop CardinalMIBManager String: CPUUsage String:MemoryUsage… featureLIST bundleList String[]:iotdmresource … Boolean: isConfig Boolean: isMIB close() SnmpDaemeonStop() onSessionInitiated() loadMIB() compileMIB() … getCPUUsage() setODLHealthMIB() … getFeaturesList() setODLKarafMIB() … getResourceTree() setXProjectMIB() … onSessionInitiated() SnmpDaemeonStart()
8
Design document | Cardinal – Load and Compile MIB with SmiManager or NET-SNMP
Using net-snmp USING snmp4j and SMI Package com.snmp4j.smi Package org.snmp4j MIB SmiManager CommunityTarget MIBManager Compile() loadModule() deleteModule() MIB setCommunity() setSecurityLevel() … Boolean: isMIB CardinalMIBManager Boolean: isMIB String[]: moduleNames loadMIB() compileMIB() Result() setMIBValue() MemRepositoryDriver PDU script readModule() writeModule() loadMIB() compileMIB() trackStatus() Result() setODLHealthMIB() setODLKarafMIB() setODLMdsalMIB() GET SET addOID() … CompilationMonitor SNMP4JSettings compilationProgress() loadingProgress() setEnterpriseID() setVariableTextFormat() …
9
Design document | Cardinal – Cardinal ODL HealthInfo Manager
CardinalHealthManager System String: CPUUsage String:MemoryUsage… InetAddress getProperty() getCPUUsage() getMemoryUsage() setCPUUsage() setMemoryUsage() getLocalHost() Runtime getRuntime() MIB MIBManager:ODLHealthModule String :CPU String : Memory … setODLHealthMIB()
10
Design document | Cardinal – Cardinal ODL Karaf Manager
Package org.apache.karaf Package java.lang.management ListFeaturesCommand ListBundleServices ManagementFactory getRuntimeMXBean() getOperatingSystemMXBean() getThreadMXBean() … ListFeaturesCoammand() ListBundleServices() Package java.lang.management CardinalKarafManager ManagementFactory String[]: FeatureLIst String[]:BundleList getRuntimeMXBean() getOperatingSystemMXBean() getThreadMXBean() … Package java.lang.management getFeatureList() getBundleList() … OperatingSystemXMBean getAvalaibaleProcessors() getSystemLoadAverage() … Package java.lang.management MIB ClassLoadingMXBean MIBManager:ODLHealthModule getLoadedClassCount() getTotalLoadedClassCount() …. String :Feature1 String : Bundle1 … setODLKarafMIB()
11
Cardinal support – Northbound REST APIs
Autonomous Events - Traps and Info M3 Incremental design document (submission dated 08-June-2016)
12
Design document | Cardinal – REST SUPPORT
GET: /cardinal/karaf/featuresList GET: /cardinal/karaf/bundlesList GET: /cardinal/karaf/threads ... NETWORK MANAGEMENT SYSTEM OpenSource/Vendor NMS GET: /cardinal/systemInfo CARDINAL REST APIS (NB APIS) Data Modeling REST Request ODL MIB DATA/TRAPS Snmp4j libraries CardinalSystem.yang Getter/Setters Cardinal Feature ODL Node CardinalKaraf.yang CardinalImpl.yang ODL MIB ODL Health System Libraries RunTIme Libraries snmptrapd Cardinal Trap Agent trap KARAF/OSGI Inter-Op MDSAL Inter-Op Karaf snmpd Cardinal Agent (For System and Karaf details) Karaf Libraries Java lang ManagementLibraries Listeners on RPC MD-SAL MDSAL DATASTORE NETCONF IOT OPENFLOW PLUGIN
13
Design document | Cardinal – Autonomous Event Support(TRAPS)
NETWORK MANAGEMENT SYSTEM OpenSource/Vendor NMS ODL MIB TRAPS Snmp4j libraries Cardinal Feature Listens On MIB Notification ODL Node ODL MIB (NOTFICATIONS) ODL Health System Libraries RunTIme Libraries snmptrapd Cardinal Trap Agent TRAP KARAF/OSGI Inter-Op MDSAL Inter-Op Karaf snmpd Cardinal Agent (For System and Karaf details) Karaf Libraries Java lang ManagementLibraries Listeners on RPC MD-SAL MDSAL DATASTORE NETCONF IOT OPENFLOW PLUGIN
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.