Download presentation
Presentation is loading. Please wait.
Published byPamela Booth Modified over 8 years ago
1
Hans Feldt Senior Software Engineer, Ericsson AB Hans.Feldt@ericsson.com Developer Days June 2009 IMM in OpenSAF, status and future
2
Presentation outline IMM service overview IMM implementation in OpenSAF Using IMM in applications Demo
3
What is IMM ? Information Model Management Service SA Forum standard IMM is an ”AIS Management Service” that ”should be used by the implementation of all AIS Services and applications”.
4
The SAF view... From SAFs Overview Spec
5
What is IMM... Information Model consists of managed objects Two types of managed objects: configuration and runtime Classes define the attributes of objects October 2008 presentation by Anders Björnerstedt at opensaf.org SAF specifications contains UML Classes
6
LOG Service UML classes From SAFs LOG Spec
7
What is IMM... Objects organized in a tree Tree hierarchy follows the structure of the distinguised name (DN) of each object Two distinct APIs, management & implementer also referred to as OM & OI
8
IMM Service Interfaces From SAFs IMM Spec
9
IMM Implementation status... SAI-AIS-IMM-A.02.01 (A.01.01) Nearly all of the IMM APIs are implemented IM persistence requires additional effort Information Model defined using XML The central data model implemented in C++, the rest in C See README collocated in source dir Supporting (non-standard) shell commands
10
IMM architecture - ”three tier” IMMND Node Director IMMND Node Director Library Client Director redundancy model = 2N Node director redundancy model = noRedundancy LIbrary = IMMA IMMD Director Controller (active) Controller (standby) Payload 1Payload n IMMD Director IMMND Node Director Library Client IMMND Node Director Library Client MDS MBCSv
11
IMM Shell commands Add-on OpenSAF functionality originally suggested by Fred Herrmann - SUN immadm – perform admin operations immcfg – modify attributes of config objs immdump – dump inf. model to XML file immfind – find objects immlist – list object attributes
12
Status - Major Remaining Items Implement “Internal Persistent Repository” IMM Service Class & Administration API IMM Service Alarms and Notifications Continuation support for admin operations Multivalue support in ’immcfg’ Configure from file using ’immcfg’ Delete of objects?
13
Future IMM will deprecate MASv/PSSv Services will migrate to IMM
14
Using IMM as Manager A manager program uses the OM API Configuration Change Bundle – CCB IM modifications grouped into a CCB Only configuration objects can be created, deleted and modified CCB State Machine to ensure that IM modifications are transactions Example: IMM shell commands
15
Using IMM as Implementer Create class descriptions in IMM (offline using imm.xml) Create configuration objects (offline using imm.xml) Get initial configuration in runtime using the OM API! Become class/object implementer using the OI API
16
Using IMM as Implementer... Create runtime objects Modify attributes of runtime objects Delete runtime objects Respond to admin operations requests Respond to requests to update attributes Respond to CCB requests Release/Become class/object implementer
17
Using IMM – LOG OI In OpenSAF 3.0, the LOG service is a managed object implementer The specification defines two classes, one for configuration objects and one for runtime objects The specification defines three configuration objects (alarm, notification & system streams)
18
Using IMM – LOG OI Well-known streams are configured using imm.xml Well-known streams are modified using the OM API and CCBs For streams created by applications using the LOG API, runtime objects are automatically created by the LOG service Application streams are changed using the OM Admin API (only FILTER level)
19
Demo Screenshots from OpenSAF (on openSUSE on Virtualbox on Windows Vista (don’t try this at home...)) Note: DNs for LOG configuration objects is not updated to latest version! ’saflogger’ is a shell command that can be used to write to well-known LOG streams or create and write to an application stream, see online help with ’-h’ flag
20
Head of imm.xml
21
List all IMM objects
22
Create a runtime object
23
Delete a runtime object
24
Change config object using OM Comment: Change max log file size to a small value, start a logger, view rotated log files, tail current system log stream
25
Change runtime object using admin operation Comment: Change the LOG filter level for an application stream to filter INFO records, no more LOG records created Note: immadm does not understand logical names of admin operations, a miss in IMM standardization?
26
About me... Employed by Ericsson AB. Located in Stockholm, Sweden Many years of experience with embedded systems from working with Ericssons Telecom platforms. Now working in the ”Open Multimedia Platform” organization as a developer and maintainer of OpenSAF. Interested in Linux and open source in general
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.