Summary

Define and implement more common installation targets for the server CD.

Rationale

The LAMP install in Dapper was well-received, and (in the associated press release) we have committed to provide more "simple server setup" targets for people who want to hit the ground running more easily with ubuntu-server.

Adding 10 new boot options to the CD sounds like a Very Bad Idea (boot options are UI-limited, and for instance you can only select one, not combine them). This specification therefore depends on ReviveTasksel to provide us with a task selection UI in the installer.

Survey of existing Debian tasks (apart from language and "special" tasks, Debian task policy is generally that each task should correspond to a specific thing a user wants to do):

Use cases

Scope

Selection of server tasks; possible promotions to main for some of the software listed below. (Reviving tasksel and integrating it with d-i is in scope for ReviveTasksel, but not here.)

Design

If necessary, the ubuntu-server CD will tell tasksel to present all available tasks rather than just installing its default. See ReviveTasksel.

Each task will be implemented as a seed; the server seed (possibly to be renamed to server-ship) will inherit from all task seeds that are to go on the CD. (At present, this needs minor tweaks to cdimage to ensure that the task seeds all end up on the CD.) Per ReviveTasksel, each server task will be presented using Task fields in the archive, and will not be derivative-specific.

The following is a list of suggested tasks, together with some packages that have been suggested for each. This specification does not attempt to lay down precisely which packages will be selected for each task; the implementor should select these based on which packages can best be supported by Ubuntu, which provide the best out-of-the-box experience, and so on. In general (and there will doubtless be the occasional exception) we should avoid offering a superfluity of alternatives in the task selector, and err more on the side of providing best-of-breed recommendations; more advanced users with set ideas of exactly what they want should be quite happy to use a full-scale package manager.

It is possible that Canonical may be developing partnerships with various proprietary/commercial software vendors to support their software on Ubuntu and provide packages. Naturally these could not go on the server CD, but, since server admins will often not have convenient access to gnome-app-install etc., it may make sense to provide Task fields for these in the commercial repository. If database servers are among those packaged, then the following PHP extensions should be packaged and set up to enable development out of the box:


Comments

UbuntuDemon : There is a really interesting and relevant thread going on in the Edgy Development section at www.ubuntuforums.org :

It's time to bring Ubuntu to the enterprise http://www.ubuntuforums.org/showthread.php?t=191858

JeffSchroeder : Speaking of excellent forum software, punbb is MUCH faster than vbulletin or phpbb and has a very good security record. According to Secunia, punbb has been affected by 10 vulnerabilities since 2003 whereas phpbb has been affected by 35

http://secunia.com/product/3700/ punbb

http://secunia.com/product/463/ phpbb

A good demo of punbb is at http://www.compiz.net

NicolasKassis : Should there be a sort of UbuntuDirectory similar to ActiveDirectory that controls all of these services ?

PaulKishimoto : The thread UbuntuDemon linked derails repeatedly into individuals pumping their modified-for-debian/ubuntu install instructions for third-party software that's not even in universe -( That seems Un-Ubuntu, whereas this spec is exciting! If implemented properly, it would be nearly trivial to replace web-based control panels such as cPanel, Plesk, etc. with a small amount of PHP--the script would simply interface with tasksel or the known ubuntu- or debian-default configuration files for each package. Some other candidates (sadly all universe packages):

I notice the suggested tasks aren't mutually exclusive. For example, if the user selects a CMS/forum/wiki server, or a mail server providing webmail, then isn't a "LAMP" stack implied? What if the user wants to run these applications on a "LAPP" (postgres) stack, since postgres is suggested as an option?

For stable LAMP apps, should PHP tuning be introduced by default? There are some very good caches (http://pecl.php.net/packages.php?catpid=3&catname=Caching) available. How about SQL replication? In general, a user should be able to extend or modify the initial task configuration without breaking uninstallation. The a2enmod/a2ensite commands come to mind...

Again, an exciting spec!

KristofferLundén: Another interesting task could be to provide a Ruby on Rails-server. Given how many tutorials and comments there are about setting that up, it'd probably be a popular one. I think OS/X provides it OOTB now, too. I don't know the status of all these packages, but if possible: Task should provide apache2 (and/or lighthttpd?) with fastCGI support, ruby and rails itself of course, mysql/postgresql/sqlite as database choices and whatever other common and appropriate stuff is stable and available, like mongrel, irb, gems maybe and so on.

JohnMoser: We need a directory server. A working Linux-based Active Directory service that can authenticate Windows XP Professional (and eventually Vista) machines would be awesome. Integrating this with LDAP or straight A/D authentication from Ubuntu Desktop would improve our position in the server market greatly. SAMBA and samba-tng should provide a Domain Controller these days....

HenrikWidth suggests an "imaging server" based on Clonezilla

RossPeoples: This spec is a great idea and I've been looking forward to this one for a while...especially the XP-compatible directory server part. But the one thing I would like to see in this spec is not only a UI for these tasks on install, but a simple, and straight-forward way of getting to the UI later on in case I decide to change or add something after the install.

Jkorz: Just a thought. Since it may be tough to cram all this into one cd and release it by october, it seems to me like a good idea would be to have a xen server option that works on the principle of VMware ESX. If this included a nice utility to package xen VM's and a slick way within the install to download the needed VM's, the devs could focus on getting a couple key things working on the server release and the community can make vm's to do active directory, email servers, ruby on rails, etc... the way that vmware's virtual appliances work. If there was some sort of utility to set the IP, uname/pwd and such on vm download (rather than going into it manually afterward and risk newbies leaving on the defaults), this model would be a force to reckon with.

JohnMoser: These days, internal communication and conferencing have become paramount. A Jabber/XMPP or SILC server to supply Instant Messaging would appeal to businesses as a way to keep employees between data centers or away from the office in touch. In this we also need to consider future expansion to allow point-and-click instant voice or video chat (conference calls and video conferencing) using Pidgin when the pidgin-vv work gets merged; the ability to instantly voice-discuss over a 3kb/s Speex stream or video present a discussion with white board aid from remote locations at 1024x768 Theora/Speex over a gigabit link with logging on the central server would appeal to distributed development teams and other groups of people working together remotely. Relevant bugs: Malone 16802, SILC server needed (silc may not be the best server for this)

AndrewFuchs: For wiki software, you might want to look at dokuwiki, which is included in the universe repositories.

JulienMary2: Until now Ubuntu Server has been like Ubuntu Desktop less the Desktop, plus a LAMP platform. This is quite Web Developer oriented. What an SME needs ? It can be backup, it can be mail only, or ftp only, or domain controller, or LTSP, or a router/firewall with proxy service. The end user can also be an ISP who want to offer a control panel to its users which are hosted as virtual domains. To have a list of such profiles, then figure out what can be implemented or which tools are necessary to create, seems to be the first two necessary steps.


CategorySpec

UbuntuServerTasks (last edited 2008-08-19 19:37:28 by dslb-092-074-180-239)