Scripting of Common Information Model
Scripting of Common Information Model
diploma thesis (DEFENDED)
View/ Open
Permanent link
http://hdl.handle.net/20.500.11956/13241Identifiers
Study Information System: 44978
Collections
- Kvalifikační práce [11244]
Author
Advisor
Referee
Adámek, Jiří
Faculty / Institute
Faculty of Mathematics and Physics
Discipline
Software systems
Department
Department of Software Engineering
Date of defense
18. 9. 2007
Publisher
Univerzita Karlova, Matematicko-fyzikální fakultaLanguage
English
Grade
Excellent
Tato práce zkoumá možnosti rychlého vývoje aplikací použitím protokolů definovaných sdružením "Distributed Management Task Force" a použitím programovacích jazyků ze světa otevřeného software. Je zaměřena hlavně na protokoly "Common Information Model" (CIM), "Web Based Enterprise Management" (WBEM) a skriptovací programovací jazyky. Standardy CIM a WBEM jsou stručně popsány a čtenář je seznámen se základní terminologií těchto standardů a s jejich infrastrukturou. Jsou definovány cíle jako objektově orientované mapování, generování dokumentace nebo podpora pro interaktivní konzoli. Probrány jsou související práce v dané oblasti s rozborem jejich silných a slabých stránek. Jsou definovány požadavky na skriptovací jazyk. Je vybrán jazyk Python a jsou uvedeny některé jeho zajímavé vlastnosti. Později je definováno mapování standardu "Common Information Model" do jazyka Python se zaměřením na jeho vlastnosti a konvence. V jazyku Python je naimplementováno prototypové řešení (nazvané powerCIM) spolu s několika ukázkami skriptů, které zároveň demonstrují synergický efekt této práce a dalších projektů ze světa otevřeného software jako například IPython nebo PyQt.
This work investigates how system management applications could be rapidly developed with management protocols defined by Distributed Management Task Force (DMTF) and open-source programming languages. The focus is on Common Information Model (CIM), Web Based Enterprise Management (WBEM) and scripting languages. CIM and WBEM are briefly described and the basic terminology of these standards and their infrastructure is introduced. Goals such as object-oriented mapping, shell enablement or generating documentation for CIM classes are discussed. Similar work in this area with their strengths and weaknesses are covered. Requirements for a scripting language are stated and Python is selected for this work with a discussion of some of its more interesting features. Later, Python mapping of Common Information Model is defined with the focus on Python features and conventions. As a proof of concept a prototype mapping (called powerCIM) is implemented and a few examples of management scripts are provided demonstrating the synergy with other open-source projects and libraries such as IPython or PyQt.