From Fedora Project Wiki

Revision as of 14:13, 24 May 2008 by fp-wiki>ImportUser (Imported from MoinMoin)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Introduction:

Fedora and it's peer distributions (RHEL/CentOS et al) includes a few admin tools called system-config-* for doing administrative jobs.

Also there is a tool called func which allows one to manage configs of a number of machines remotely.

Problem:

Though sys-conf-* tend to make a poor admin's job less frustrating, they are meant to be used only locally.

Also, sys-conf-* needs graphical environment (of course, one can use cli versions but not without giving up ease of use).

On the other hand, we have func (https://fedorahosted.org/func/) which allows to manage a large no of machines with ease. Its a master-slave configuration and and master distributes the configurations to slaves.

But as of now, it comes mainly with a cli version.

Proposal:

I propose to integrate the functionalities of sys-conf-* tools with func using an Web-UI which will preserve both sys-conf-*'s ease of use and func's remote management .

This way we shall be able to produce a central server for doing all the configuration changes for all the machines from a central server. (Till one does not kill the network interface remotely :-) )

Now, for a admin who is in charge of managing a large network with a lot of different type of machines, a web-UI like this would be very helpful (particularly for managing servers without X where sys-conf-* can not be used).

Features:

http://fedoraproject.org/wiki/SusmitShannigrahi/gsoc2008/features


Sequential Workflow (Will be Updated frequently)

1. Read docs,codes et al.

2. Draft design of WebUI.

3. Work on integration with existing funcweb.

4. Coding for first sys-conf- module. (Groups)

5. Debugging,testing first tool until satisfied.

6. Draft Documentation.


Milestone 1 (20th June)


7. Work on backup/restore module.

Milestone 2 (Somewhere in early July)


8. Adding more tools one at a time.

9. Time runs out.

Milestone 3 (15th August)


10. Overall Documentation.

Milestone 4 (25th August)

11. Submission

Tasks and Timeline (Will be Updated frequently)

Tasks
Task Deadline Status
Thinking about project details/new ideas Till application accepted Already Working
Going through func and sys-conf-* docs Till application accepted Already Working
Congratulating Myself and thanking mentors :-? When application accepted No status
Exchange of Ideas, Related readings, Identifying initial work areas 20 April -
Draft Initial design of UI to be completed 20th-25 April -
Working of Integration of design with FuncWeb 25th-30th April -
Buffer period, I can do readings but no code 30April-15th May Semesters :-( -
Session on details of implementation with mentor 15th-20th May -
Finishing first module code (Probably network module) 20th May-June 5 -
Call for criticism and testing 5-8 June -
Doing modifications/Draft Documentation 8-17 June -
Identifying New features/Modules 17-20 June -
Realated Readings 20-25 June -
Coding on More modules, fedatures, Documentation 25th June- 15th August -
No new Code From August 15 -
Finishing touch to docs,codes August 25 -
Submission August 26 -
More work to follow :) As and when time permits No deadline

Why I am doing this

This are the most obvious questions, if you have more, mail me at susmit DOT shannigrahi AT gmail DOT com


# What is its ultimate goal?

To provide sysadmins with a nice, working, pluggable webUI so that he/she can do all the jobs from his/her desk without logging in to each individual machine.


# What components will it have?

http://fedoraproject.org/wiki/SusmitShannigrahi/gsoc2008/features


# What benefits does it have for Fedora?

Well, for Fedora and for community as a whole, it will provide a framework and extensible module for easy, over the network, remote administration without logging into a shell for every little things.

Also we can improve/add new functionality over the existing sys-conf- tools, we can take up where these tools lack, enable this UI with all the features and eventually retire(?) those.


# Why you'd like to complete this particular project?

I am doing sys-admin and experimentations for a considerable time, when finished, this webUI will provide me as well as sys-admins with such a tool that will reduce their workload and let them concentrate on more creative work other that resetting passwords or freeing disk space.


So with a ulterior motivation that it will help me too, :) I shall like to finish this project.

# Why do you think you are be the best person to work on this project?

Well, as I said, As I do day to day system administration and handle a lot of machines, naturally I run into a lot of problems. I usually note those down with solutions and often thought if this tool could do this and this...


Now as facing the common as well as uncommon problems and knowing their solutions, I shall be able to provide ideas/suggestions about which part of these tools need improvement, which features to be added, what can be omitted...


Add to that my willingness to work and deep interest in Computer networks(I am specializing in networks, published a paper, and hope to do my phd on it) and FOSS, as well as long involvement with Fedora.


# What are your past experiences (if any) with the open source world?

  • I am using linux from Redhat7 - to date.
  • Doing sys-admin and networking for past 3 years.
  • Recently Working for FIG.
  • Managing five foss mirrors, Fedora, CRAN, LDP, Mozilla, OO at mirror.wbut.ac.in
  • Often speaking at linux/events and seminars.
  • Published a paper on netfilter/iptables.



Bookmarks

1. http://code.google.com/opensource/gsoc/2008/faqs.html

2. http://code.google.com/soc/2008/app.html?org=fedora&csaid=susmit.shannigrahi%40gmail.com%3Ae71981a9%3A-432bfade

3. https://fedorahosted.org/func/

4. https://fedorahosted.org/func/wiki/SystemConfigIdea

5. https://fedorahosted.org/func/wiki/SystemConfigAnalysis

6. https://fedorahosted.org/func/wiki/FuncWebNotes

7. http://fedoraproject.org/wiki/SummerCoding/2008/Ideas#head-1b702e702c561c0add841bbed047397bc26a0d4a