From Fedora Project Wiki
(Detailed description)
(Benefits for Fedora users)
Line 2: Line 2:


== Summary ==
== Summary ==
Matahari is a collection of generically useful APIs accessible over a remote and local interfaces via a collection of Agents, and a framework for adding small set of Agents & APIs.  
Matahari is a collection of generically useful APIs accessible over a remote and local interfaces via a collection of Agents, and a framework for adding small set of Agents & APIs. Matahari is a Red Hat community project.


== Owner ==
== Owner ==
Line 15: Line 15:


== Detailed Description ==
== Detailed Description ==
The plan is to ship stable and easily usable Matahari for Fedora users.  
The plan is to ship stable and easily deployable Matahari for Fedora users.


The minimal set of implemented agents in Fedora 16 timeframe is:
The minimal set of implemented agents in Fedora 16 timeframe is:
Line 21: Line 21:
* Networking agent
* Networking agent
* Services agent
* Services agent
* more agents will come soon (Logging, Generic configuration agent, etc.)


With two different transport layers - powerful QMF bus for remote access and DBus as a standard and well known local systems bus.  
With two different transport layers - powerful QMF bus for remote access and DBus as a standard and well known local systems bus.  


The aim of this feature is to make Fedora prominent consumer of Matahari - for both users/admins and developers.  
The aim of this feature is to make Fedora prominent consumer and showcase of Matahari - for both users/admins and developers.  


Upstream website: [http://matahariproject.org/ http://matahariproject.org/]
Upstream website: [http://matahariproject.org/ http://matahariproject.org/]
== Benefit to Fedora ==
== Benefit to Fedora ==
 
* easy deployment of Fedora to clouds and cluster environments
* local and remote management of Fedora systems
* well defined interfaces to Fedora system for admins (scripiting, maintanance) and for 3rd party Matahari client developers
* Fedora as a development platform for Matahari upstream
* the core for future system configuration tools (replacement of s-c-*)


== Scope ==
== Scope ==
Currently Matahari scope is isolated as we're now working mostly on agents/interfaces side.  
Currently Matahari scope is isolated as we're now working mostly on the bottom layer - agents/interfaces side.  


 
== How To Test ==
== How To Test ==
More detailed informations How To Test Matahari can be found in [https://github.com/matahari/matahari/wiki/TestPlan the Matahari Test Plan]. We are interested in a general community testing of currently available agents and core Matahari - for both local (DBus) and remote sides (QMF). We do not offer any special instruction for testing, just try to use Matahari for your tasks and report possible issues/enhancements.
More detailed informations How To Test Matahari can be found in [https://github.com/matahari/matahari/wiki/TestPlan the Matahari Test Plan]. We are interested in a general community testing of currently available agents and core Matahari - for both local (DBus) and remote sides (QMF). We do not offer any special instruction for testing, just try to use Matahari for your tasks and report possible issues/enhancements.



Revision as of 10:34, 8 July 2011

Matahari

Summary

Matahari is a collection of generically useful APIs accessible over a remote and local interfaces via a collection of Agents, and a framework for adding small set of Agents & APIs. Matahari is a Red Hat community project.

Owner

  • Email: jreznik@redhat.com, andrew@beekhof.net and matahari@lists.fedorahosted.org

Current status

  • Targeted release: Fedora 16
  • Last updated: 2011-07-07
  • Percentage of completion: 25%

Detailed Description

The plan is to ship stable and easily deployable Matahari for Fedora users.

The minimal set of implemented agents in Fedora 16 timeframe is:

  • Host agent (including host informations and Power Management capability via tuned)
  • Networking agent
  • Services agent
  • more agents will come soon (Logging, Generic configuration agent, etc.)

With two different transport layers - powerful QMF bus for remote access and DBus as a standard and well known local systems bus.

The aim of this feature is to make Fedora prominent consumer and showcase of Matahari - for both users/admins and developers.

Upstream website: http://matahariproject.org/

Benefit to Fedora

  • easy deployment of Fedora to clouds and cluster environments
  • local and remote management of Fedora systems
  • well defined interfaces to Fedora system for admins (scripiting, maintanance) and for 3rd party Matahari client developers
  • Fedora as a development platform for Matahari upstream
  • the core for future system configuration tools (replacement of s-c-*)

Scope

Currently Matahari scope is isolated as we're now working mostly on the bottom layer - agents/interfaces side.

How To Test

More detailed informations How To Test Matahari can be found in the Matahari Test Plan. We are interested in a general community testing of currently available agents and core Matahari - for both local (DBus) and remote sides (QMF). We do not offer any special instruction for testing, just try to use Matahari for your tasks and report possible issues/enhancements.

  1. Install Matahari agent
    # yum install matahari\*
    
  2. Start Matahari broker
    # systemctl start matahari-broker.service
    
  3. Start Matahari agent
    # systemctl start matahari-<agent>.service
    
  4. Test D-Bus interface
    For example get hostname from the Host agent
    $ dbus-send --system --dest=org.matahariproject.Host --print-reply /org/matahariproject/Host org.freedesktop.DBus.Properties.Get string:org.matahariproject.Host string:hostname
    

    Result should contain your hostname

    method return sender=:1.73 -> dest=:1.85 reply_serial=2
       variant       string "localhost.localdomain"
    
  5. Test QMF interface
    $ qmf-tool localhost:49000
    qmf: list agents
    
    QMF Agents:
       Id  Vendor               Product  Instance                              Epoch
    ==================================================================================
    *  1   apache.org           qpidd    971e8d8b-38f8-45ad-9ccf-f82ea85e3ed7  4
       2   matahariproject.org  host     d0175049-b186-41a7-a10b-11589107c20a  4
       3   matahariproject.org  net      97e02c72-8ac4-4fd5-901b-77574af3d45c  2
       4   matahariproject.org  service  bbf07d98-be32-4046-bf7b-c1d162b0611d  2
    

    To verify the agents actually work we'll do some interactions with one.

    qmf: set default 2
    
    Default Agent: matahariproject.org:host:d0175049-b186-41a7-a10b-11589107c20a
    
    qmf: query Host org.matahariproject
    
    Data Objects Returned: 1:
        Number  Data Address
        ==============================================
        1       26205118-e589-44ca-969d-d79b8ae40b2a
        qmf: show 1
    Properties:
    Name                Value
    =====================================================
    load                {'1': 0.1, '5': 0.22, '15': 0.23}
    hostname            localhost.localdomain
    ...
    

    You should see properties with correct values for your system.

User Experience

Dependencies

The dependencies are Qpid with QMFv2 (Qpid Management Framework).

Contingency Plan

As no packages in Fedora currently depends on Matahari we will continue with the development efforts in Rawhide.

Documentation

Release Notes

Comments and Discussion