SusmitShannigrahi/gsoc2008/features

From FedoraProject

Jump to: navigation, search


Cog.png
It has been requested that this page be deleted.

Contents

WebUI:

Important.png This Web-UI will provide a centralised managing point of a whole network. (Much like nagios does for monitoring)

Important.png This Web-UI will be accessible over the network and over the web.

Important.png The interface for editing configurations should look like sys-conf-tools (historical reason :-? ) but may be with enhanced functionality.

Important.png The web-UI should be something like this

Hosts(edit|add)| Services configured(edit|add) | Status | ....(n columns)

Hosts(Add) Services Status ...
Add services) Service List (Edit) ok/wrong ..


(There is more on https://fedorahosted.org/func/wiki/SystemConfigIdea but more discussions needed)



Func Modules needed:

Important.png At this point it is quite unpredictable which modules will be needed.(Probably we will need all and more).

Important.png Based on which sys-conf tool we take up, we will need corrosponding func module.

Important.png We will need to write new modules as we progress. (It should not be very difficult as func uses a easy API.)

Important.png Modifications and reuse of existing modules will be done as and when necessary.

Important.png We need a configuration backup/recovery module. As this server is going to be a single point of configuration, a crash may be a disaster. So a disaster recovery plan is needed.

Important.png sys-conf-* or func does not provide checkpoints for roll back. (Or I am unaware?) It would be nice to have checkpoints representing working configurations.

sys-conf-* Tools to be implemented:

TBI one at a time sequentially till time permits. According to jobs a sysadmin does after new installation.

A user/group manipulation module

As a rule of thumb..users must forget their passwords and admins must reset them. :D

Features:

1. Add/Delete Users/Groups. (Textbox)

2. Edit User/Group Details. (Textbox) 1. Change group/uid/passwd/home dir of user. (Dropdown menu + Textbox) 2. Edit Group. (Text Box)

3. Listing all users/groups.(Alphabetical list? or Search field)

4. Listing groups a user belong to and users a group has.(Text box..enter user/group name)

5. Search a user. (Search Box)

7. View $finger of a user.

6. Remote broadcast/unicast message to users (Checkbox/Textbox)

Comment: First One to be Implemented

Services module

Features:

1. List all the services installed on a machine. (List)

2. Enable/Disable service (Chechbox)

3. Start/Stop/Restart service (checkbox)

4. Edit runlevel (List with checkbox)

5. Add/Delete services (Textbox/Checkbox)

Comment: Already implemented?

Install/Remove/Update Packages

Features:

1. List installed packages. (Checked among all available packages)

2. Search a package. (Search box)

3. Install/Remove packages (Searchbox/List all)

4. GroupInstall.

5. Add/Delete repository.

6. View available updates (list) and apply them (checkbox)


Comment:--(Locally using pirut model?)--/ Remote yum call will be better

Backup/Restore Module

Features:

1. Select host(s) to backup. (Checkbox/Destination)

2. Select all/some configurations. (Checkbox)

3. Save configurations to file.

4. To rollback, select old file, apply configurations.

5. And/OrCreate automatic checkpoints. If a machine crashes, select one of these checkpoints.(list of checkpoints)

comment: Explore possibility of integration with other backup softwares.

Locking module

Features:

1. Lock on configuration files so that no two user can work on same file.

2. Hold and wait.

3. --(Take periodic snapshot of file.)-- --(Backup file as *.conf.orig)--

4. Take one snap before locking.


Comment: --(Backup module will help this one.)-- Defer/Don't implement till more discussion

Date and Time Module

Features:

1. Adjust date and time.

2. Adjust timezones.

3. Sync/set hardware clock.

4. Sync/set software clock.

5. Specify/add/delete NTP server.

comment:

Process module

Features:

1. Create/Kill process remotely.

2. List processes of a user/group.

3. View all processes.

4. Send signals to processes (if required).

5. Find processes. (grep)


comment:

Security Module

Features:

1. Simple port blocking/allowing.(/etc/services)

2. Trusted services. (Add custom. A few predefined.)

3. Custom rules.

4. Enable/Disable firewall.

5. Enable/configure/Disable ip-forwarding.

comment:


Important.png I would like to complete all the modules but given that needs a fairly long time, we shall work on priority modules and once the core is in place rest is easy.