Features/CIMManagement

From FedoraProject

< Features(Difference between revisions)
Jump to: navigation, search
m
m
 
(28 intermediate revisions by 6 users not shown)
Line 10: Line 10:
 
== Current status ==
 
== Current status ==
 
* Targeted release: [[Releases/18 | Fedora 18 ]]  
 
* Targeted release: [[Releases/18 | Fedora 18 ]]  
* Last updated: 2012-06-07
+
* Last updated: 2012-10-10
* Percentage of completion: 20 %
+
* Percentage of completion: 100 % (see the Detailed description)
  
 
== Detailed Description ==
 
== Detailed Description ==
Line 17: Line 17:
  
 
Add or extend the existing CIM providers to be able to manage the following areas and perform the listed tasks:
 
Add or extend the existing CIM providers to be able to manage the following areas and perform the listed tasks:
* Networking management
+
* Networking management (Package: openlmi-networking)
** Based on the [http://dmtf.org/standards/smash SMASH] network object model
+
** Based on the [http://dmtf.org/standards/smash SMASH] network object model utilizing NetworkManager interface
** Bring up / take down a network interface
+
** Bring up / take down a network interface (100 %)
** Set IPv4 address and netmask
+
** Set IPv4 address and netmask (100 %)
** Set IPv6 address
+
** Set IPv6 address (100 %)
** Configure basic routing: set default gateway
+
** Configure basic routing: set default gateway (100 %)
** Configure resolver
+
** Configure resolver (100 %)
** Set FQDN
+
* Storage management (Package: openlmi-storage)
* Storage management
+
 
** Based on the [http://dmtf.org/standards/smis SMI-S] storage object model
 
** Based on the [http://dmtf.org/standards/smis SMI-S] storage object model
** Enumerate block devices
+
** Enumerate block devices (100 %)
** Create/delete LVM volumes, resize volumes, add/remove devices
+
** Create/delete LVM volumes, resize volumes, add/remove devices (100 %)
** Create LVM snapshots
+
** Build/destroy RAID (0,1,5) (100 %)
** Build/destroy RAID (0,1,5)
+
** Create/remove a partition of ext3/ext4 type (100 %)
** Create/remove a partition of ext3/ext4 type
+
* Service management (Package: cura-providers)
** Create/remove a partition of XFS type
+
** Enumerate system services and their status (using the systemd D-Bus interface) (100 %)
** Mount and unmout a partition
+
** Start/stop/restart a service (100 %)
** Event based monitoring of storage devices (emit indication event upon RAID degradation, SCSI error, etc.)
+
** Enable/disable a service (100 %)
** Report status – drives and configurations, utilization, health, RAID & LVM volumes
+
* Power management (Package: openlmi-providers)
* Service management
+
** Halt, reboot, suspend or hibernate a system (100 %)
** Enumerate system services and their status (using the systemd dbus interface)
+
** Start/stop/restart a service  
+
** Enable/disable a service
+
** Event based monitoring of service status (emit indication event upon service status change)
+
* Power management
+
** Halt, reboot, suspend or hibernate a system
+
** Report and set power states – Pstate and Cstate
+
 
* User management
 
* User management
** Create/update/remove user account
+
** Create/update/remove user account (100 %)
* Software management
+
** Create/update/remove system groups (100 %)
** List the installed packages
+
** List user accounts and groups (100 %)
** Install/update/remove a particular package
+
* Software management (Package: openlmi-providers)
** Perform a package integrity check
+
** List the installed packages (100 %)
* Genereal system monitoring/management
+
** Install/update/remove/verify a particular package (100 %)
** Show used/available memory (physical/swap)
+
* General system monitoring/management (Package: sblim-cmpi-base, sblim-cmpi-fsvol)
** Show used/available storage space
+
** Show used/available memory (physical, swap,...) (100 %)
** Show power status
+
** Show used/available storage space (100 %)
** Show the system load
+
** Show power status (100 %)
** Show list of running processes
+
** Show the system load (100 %)
** Show I/O load (network, disk)
+
** Show list of running processes (100 %)
*** Send a signal to a particular process
+
** Show I/O load (network, disk) (100 %)
** Show list of logged in users
+
** Show list of logged in users (100 %)
* CIM Browser
+
* CIM Browser (Package:  yawn)
** Port YAWN from mod_python to mod_wsgi to enable a basic WEB interface for the object model. Allows navigation of the CIM object model, introspection of CIM providers, getting and setting all attributes, and invoking methods.
+
** Port YAWN from mod_python to mod_wsgi to enable a basic WEB interface for the object model. Allows navigation of the CIM object model, introspection of CIM providers, getting and setting all attributes, and invoking methods. (100 %)
* User interface
+
** Implement simple WEB based WBEM client to hide the complexity of the whole CIM model; the application should allow to perform all the tasks listed above
+
** Review the pywbem package to provide also a scripting interface
+
  
 
== Benefit to Fedora ==
 
== Benefit to Fedora ==
Line 75: Line 64:
 
* Install one of the CIMOMs: sblim-sfcb or tog-pegasus
 
* Install one of the CIMOMs: sblim-sfcb or tog-pegasus
 
* Install the sblim-cmpi-* providers and any other providers developed and packaged as part of the project
 
* Install the sblim-cmpi-* providers and any other providers developed and packaged as part of the project
 +
* Install openlmi-tools package which contains basic python wrappers that can be used for the remote system management, testing and usage examples
 
** Ensure the providers are correctly registered with the chosen CIMOM
 
** Ensure the providers are correctly registered with the chosen CIMOM
 
* Launch the CIMOM
 
* Launch the CIMOM
Line 101: Line 91:
 
== Comments and Discussion ==
 
== Comments and Discussion ==
 
* See [[Talk:Features/CIMManagement]]
 
* See [[Talk:Features/CIMManagement]]
* #fmci channel on freenode
+
* #openlmi channel on freenode
 +
* Mailing list: openlmi-devel@lists.fedorahosted.org
  
  
[[Category:FeaturePageIncomplete]]
+
[[Category:FeatureAcceptedF18]]
 
<!-- When your feature page is completed and ready for review -->
 
<!-- When your feature page is completed and ready for review -->
 
<!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler -->
 
<!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler -->
 
<!-- After review, the feature wrangler will move your page to Category:FeatureReadyForFesco... if it still needs more work it will move back to Category:FeaturePageIncomplete-->
 
<!-- After review, the feature wrangler will move your page to Category:FeatureReadyForFesco... if it still needs more work it will move back to Category:FeaturePageIncomplete-->
 
<!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process -->
 
<!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process -->

Latest revision as of 14:53, 6 November 2012

Contents

[edit] CIM Management

[edit] Summary

WBEM and CIM are two of the DMTF standards for enterprise system management. Fedora already contains implementation of the standard but the existing capabilities are focused more on system monitoring. The standards allow to add methods for system management as well. The goal is to implement new CIM providers and extend the existing ones to enable the basic system management capabilities. The implementation should adhere to the standards to allow for easier interoperability with other CIM/WBEM based applications. The feature is targeting system administrators and experienced users and should lay base ground for future development of enterprise-level management infrastructure for Fedora.

[edit] Owner

[edit] Current status

  • Targeted release: Fedora 18
  • Last updated: 2012-10-10
  • Percentage of completion: 100 % (see the Detailed description)

[edit] Detailed Description

Ensure the current CIMOM servers (sblim-sfcb, tog-pegasus) work well withing the current Fedora infrastructure: proper systemd integration, sane default configuration, virtual provides to satisfy provider dependencies.

Add or extend the existing CIM providers to be able to manage the following areas and perform the listed tasks:

  • Networking management (Package: openlmi-networking)
    • Based on the SMASH network object model utilizing NetworkManager interface
    • Bring up / take down a network interface (100 %)
    • Set IPv4 address and netmask (100 %)
    • Set IPv6 address (100 %)
    • Configure basic routing: set default gateway (100 %)
    • Configure resolver (100 %)
  • Storage management (Package: openlmi-storage)
    • Based on the SMI-S storage object model
    • Enumerate block devices (100 %)
    • Create/delete LVM volumes, resize volumes, add/remove devices (100 %)
    • Build/destroy RAID (0,1,5) (100 %)
    • Create/remove a partition of ext3/ext4 type (100 %)
  • Service management (Package: cura-providers)
    • Enumerate system services and their status (using the systemd D-Bus interface) (100 %)
    • Start/stop/restart a service (100 %)
    • Enable/disable a service (100 %)
  • Power management (Package: openlmi-providers)
    • Halt, reboot, suspend or hibernate a system (100 %)
  • User management
    • Create/update/remove user account (100 %)
    • Create/update/remove system groups (100 %)
    • List user accounts and groups (100 %)
  • Software management (Package: openlmi-providers)
    • List the installed packages (100 %)
    • Install/update/remove/verify a particular package (100 %)
  • General system monitoring/management (Package: sblim-cmpi-base, sblim-cmpi-fsvol)
    • Show used/available memory (physical, swap,...) (100 %)
    • Show used/available storage space (100 %)
    • Show power status (100 %)
    • Show the system load (100 %)
    • Show list of running processes (100 %)
    • Show I/O load (network, disk) (100 %)
    • Show list of logged in users (100 %)
  • CIM Browser (Package: yawn)
    • Port YAWN from mod_python to mod_wsgi to enable a basic WEB interface for the object model. Allows navigation of the CIM object model, introspection of CIM providers, getting and setting all attributes, and invoking methods. (100 %)

[edit] Benefit to Fedora

The Fedora users would be able to manage their systems (even networks of systems) using a single consistent central interface. The usage of DMTF standards allow for an integration with other vendors system management tools and the existing WBEM/CIM scripting languages bindings.

[edit] Scope

The new feature does not require any changes in the Fedora system outside the WBEM/CIM management tools.

[edit] How To Test

  • Install one of the CIMOMs: sblim-sfcb or tog-pegasus
  • Install the sblim-cmpi-* providers and any other providers developed and packaged as part of the project
  • Install openlmi-tools package which contains basic python wrappers that can be used for the remote system management, testing and usage examples
    • Ensure the providers are correctly registered with the chosen CIMOM
  • Launch the CIMOM
  • Perform the listed tasks using YAWN or any other WBEM client from a remote machine
    • Ensure all the actions work as expected
  • Each sub-feature should be accompanied with a testing python script: it should work flawlesly

[edit] User Experience

Easier management of larger networks using industry standard technologies.

[edit] Dependencies

None.

[edit] Contingency Plan

Not needed.

[edit] Documentation

  • Provided as part of the project: sblim-cmpi-* packages and any of the eventual new packages contain the documentation.
  • DMTF Standards

[edit] Release Notes

  • Improved WBEM and CIM tools allow for easier remote management of the Fedora system

[edit] Comments and Discussion