150 likes | 317 Views
Configuration management for IT infrastructure. Steinbuch Centre for Computing (SCC) O. Dulov / oleg.dulov@kit.edu. Agenda. Software development phases Policy-based management Software configuration & change mgmt Tools cfengine & other tools cfeditor Usage for
E N D
Configuration management for IT infrastructure Steinbuch Centre for Computing (SCC) O. Dulov / oleg.dulov@kit.edu
Agenda • Software developmentphases • Policy-basedmanagement • Software configuration & changemgmt • Tools • cfengine & othertools • cfeditor • Usage for • GGUS & NGI Helpdesks • Gridka hardware Software Engineering ONLY MSc O. Dulov: "Configuration management for IT infrastructure"
Software development phases • Development teamactivities (createproduct) • Requirementsspecification, analysis • behavior description of a system to be developed • Software design • develop a plan (model) for a solution • Implementation & Integration • linking together system parts physically or functionally, to act as a coordinated whole • Testing, Validation • inform about the quality of the system under test • Sysadminactivities (putproductto OS) • Deployment, Installation • make a system available for use • Maintenance • system modification after delivery Documentation! Documentation! http://www.paragoninnovations.com/ng4/guide.shtml MSc O. Dulov: "Configuration management for IT infrastructure"
Policy-based management • Policies are rules governing the choices in behaviour of a system • Security policy (user can login only from 8:00 till 17:00) • Quality of Service (QoS) management policy (if the IP package is from the Category „gold“, in queue will have the highest priority) • Business Rules (if the order is more them €1000, discount 2%) • SLA (if the application is available less then 95%, the €100 should be paid back) • Interaction policy (to access the Web Server, the Triple DES coding should be used) MSc O. Dulov: "Configuration management for IT infrastructure"
Configuration • Configuration – is a complete description of the current situation (of the current general state) of our machine. • Movement from one configuration to another determined by the execution of an actual instruction (elementary operation). • Configuration management - activities (planning, organizing, leading, controlling, …) to bring the system into defined state Configuration = system state in time MSc O. Dulov: "Configuration management for IT infrastructure"
Software configuration & change mgmt • is responsible for • install, deploy, maintain system, security features mgmt • procedures for handling of all changes to control a system • software & documentation • firmware & documentation • test & documentation • status monitoring, reporting • build, process, environment mgmt • teamwork • can be done by • Configuration mgmt system (e.g. cfengine) • Version Control Repository (e.g. svn) • Binary Repository (e.g. yum/rpm repos) • Information Repository (e.g. CMDB & SKMS) "Somebody did something, how can one reproduce it?" MSc O. Dulov: "Configuration management for IT infrastructure"
Software configuration & change mgmt (2) Administrator = Programmer e.g. shell, vi e.g. yum, svn, cmdb e.g. cfengine http://cfeditor.blogspot.com/2011/01/common-sysadmin-activity-structure.html MSc O. Dulov: "Configuration management for IT infrastructure"
Cfengine • Cfengine (configuration engine) - automated configuration and maintenance of computers, from a policy specification. • From 1993 • Initiator: Mark Burgess (“grandfather“ of configuration management for Unix-based systems), Oslo University College • Current version 3.2.x MSc O. Dulov: "Configuration management for IT infrastructure"
Cfengine and other tools • http://en.wikipedia.org/wiki/Comparison_of_open_source_configuration_management_software MSc O. Dulov: "Configuration management for IT infrastructure"
cfeditor • Cfeditor (configuration editor) – Eclipse-based plugin for configuration management platforms • from 2010 • current version 0.2 • initiator: Oleg Dulov, KIT • developer: Andreas Bender, KIT • supports cfengine v.3 syntax • can designed for any kind of configuration management tool • bridges the gap between software development and system administration • provides a base for an Integrated Development Environment (IDE) for system administrators • future plan – Puppet syntax MSc O. Dulov: "Configuration management for IT infrastructure"
cfeditor (2) • http://code.google.com/a/eclipselabs.org/p/cfeditor/ • Based on technologies • Xtext - language framework to model Domain Specific Languages • Google Guice + Eclipse Modelling Framework EMF • Eclipse IDE MSc O. Dulov: "Configurationmanagement for IT infrastructure"
Usage for GGUS & NGI Helpdesks Yum repo MSc O. Dulov: "Configurationmanagement for IT infrastructure"
Usage for Gridka editors Yum repo MSc O. Dulov: "Configurationmanagement for IT infrastructure"
Summary • Configuration mgmgt can be seen as system programming on top of configuration mgmt software • System Configuration • is about system state and changes for this state • is an activity for different groups of interests (Service mgmt, administration, changes implementation, maintenance, etc.) • is core part of IT Infrastructure • Configuration management platforms • provide indirect access for administrator into the system • include list of open source projects: Cfengine, Puppet, etc. • Cfeditor – • editor for syntax of cfg mgmt platform, or • „IDE for Sysadmin“ MSc O. Dulov: "Configurationmanagement for IT infrastructure"
Thank you for your attention! Steinbuch Centre for Computing (SCC)