From Fedora Project Wiki
mNo edit summary
mNo edit summary
 
(16 intermediate revisions by 4 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-08-02
* Last updated: 2012-10-10
* Percentage of completion: 50 % (see the Detailed description)
* 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 (Not packaged yet)
* Networking management (Package: openlmi-networking)
** Based on the [http://dmtf.org/standards/smash SMASH] network object model utlizing NetworkManager interface
** 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 %)
* Storage management (Package: cura-storage; [https://bugzilla.redhat.com/show_bug.cgi?id=844963 review])
* Storage management (Package: openlmi-storage)
** 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 (100 %)
** Enumerate block devices (100 %)
** Create/delete LVM volumes, resize volumes, add/remove devices (100 %)
** Create/delete LVM volumes, resize volumes, add/remove devices (100 %)
** Create LVM snapshots (0 %)
** Build/destroy RAID (0,1,5) (100 %)
** Build/destroy RAID (0,1,5) (100 %)
** Create/remove a partition of ext3/ext4 type (100 %)
** Create/remove a partition of ext3/ext4 type (100 %)
** Create/remove a partition of XFS type (0 %)
* Service management (Package: cura-providers)
** Mount and unmout a partition (? %)
** Event based monitoring of storage devices (emit indication event upon RAID degradation, SCSI error, etc.) (0 %)
** Report status – drives and configurations, utilization, health, RAID & LVM volumes (0 %)
* Service management (Not packaged yet)
** Enumerate system services and their status (using the systemd D-Bus interface) (100 %)
** Enumerate system services and their status (using the systemd D-Bus interface) (100 %)
** Start/stop/restart a service  (100 %)
** Start/stop/restart a service  (100 %)
** Enable/disable a service (100 %)
** Enable/disable a service (100 %)
** Event based monitoring of service status (emit indication event upon service status change) (0 %)
* Power management (Package: openlmi-providers)
* Power management (Not packaged yet)
** Halt, reboot, suspend or hibernate a system (100 %)
** Halt, reboot, suspend or hibernate a system (100 %)
** Report and set power states – Pstate and Cstate (0 %)
* User management
* User management (Not packaged yet)
** Create/update/remove user account (100 %)
** Create/update/remove user account (10 %)
** Create/update/remove system groups (100 %)
* Software management (Not packaged yet)
** List user accounts and groups (100 %)
** List the installed packages
* Software management (Package: openlmi-providers)
** Install/update/remove a particular package
** List the installed packages (100 %)
** Perform a package integrity check
** Install/update/remove/verify a particular package (100 %)
* General system monitoring/management (Package: sblim-cmpi-base, sblim-cmpi-fsvol)
* General system monitoring/management (Package: sblim-cmpi-base, sblim-cmpi-fsvol)
** Show used/available memory (physical, swap,...) (100 %)
** Show used/available memory (physical, swap,...) (100 %)
Line 55: Line 49:
** Show the system load (100 %)
** Show the system load (100 %)
** Show list of running processes (100 %)
** Show list of running processes (100 %)
*** Send a signal to a particular process (0 %)
** Show I/O load (network, disk) (100 %)
** Show I/O load (network, disk) (100 %)
** Show list of logged in users (100 %)
** Show list of logged in users (100 %)
* CIM Browser (Package:  yawn)
* 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 %)
** 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 (Package: pywbem)
** Review the pywbem package to provide also a scripting interface (100 %)


== Benefit to Fedora ==
== Benefit to Fedora ==
Line 73: 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 99: 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





Latest revision as of 14:53, 6 November 2012

CIM Management

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.

Owner

Current status

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

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 %)

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.

Scope

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

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

User Experience

Easier management of larger networks using industry standard technologies.

Dependencies

None.

Contingency Plan

Not needed.

Documentation

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

Release Notes

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

Comments and Discussion