ServerPreInstallation

Differences between revisions 1 and 8 (spanning 7 versions)
Revision 1 as of 2008-11-23 14:23:31
Size: 3779
Editor: mx
Comment:
Revision 8 as of 2009-01-16 23:53:54
Size: 4902
Editor: 82-69-40-219
Comment: remove dead link and self-link
Deletions are marked like this. Additions are marked like this.
Line 5: Line 5:
 * '''Contributors''': NickBarcet  * '''Contributors''': NickBarcet, EvanDandrea
Line 10: Line 10:
We should look at the current installation design and remove any questions we can, add anything that we think is missing and have a firm grasp on our overall status.
Line 13: Line 15:
 * Try the Debian installation system to see if this is better
 * Select and integrate if it this is the right answer (Foundations Team)
 * Ensure that QA can add this to their testing matrix
 * Change the documentation to reflect the new install process
Line 21: Line 18:
''This section should include a paragraph describing the end-user impact of this change. It is meant to be included in the release notes of the first release in which it is implemented. (Not all of these will actually be included in the release notes, at the release manager's discretion; but writing them is a useful exercise.)''
Line 25: Line 21:
We know that the speed and simplicity of the installation process is key to providing a "Just Works" experience. We want to offer the best default configuration we can, and offer the ability to set-up optional pieces (tasks), so we must balance these two areas. We firmly do not want a second stage after the installer has run. We should look at the current installation design and remove any questions we can, add anything that we think is missing and have a firm grasp on our overall status.

The overall look and the usability of the installation process are very important when convincing users to try out Ubuntu. It's often their first experience of the operating system, and is a highly stressed situation. The current server installation is curses based and doesn't look fanstastic when compared to the desktop installation or the installation system from our competitors. We want to make our installation look fantastic as long as we don't damage the underlying power for large deployments. Integrating the current Debian installer might be the right step.
We know that the speed and simplicity of the installation process is key to providing a "Just Works" experience. We want to offer the best default configuration we can, and offer the ability to set up optional pieces (tasks), so we must balance these two areas. We firmly do not want a second stage after the installer has run. We should look at the current installation design and remove any questions we can, add anything that we think is missing and have a firm grasp on our overall status.
Line 31: Line 25:
== Assumptions ==
Line 35: Line 27:
You can have subsections that better describe specific parts of the issue. A number of specific changes were identified to streamline the installation process.

=== Reducing number of questions ===

Default the keyboard detection question to "no": if you inadvertently hit "yes" (the current default), you have to go through dozens of key presses. '''[done, console-setup 1.28ubuntu2]'''

Try to auto-detect the proxy details (remove question if not needed) ([[https://bugs.launchpad.net/bugs/209691|bug 209691]]). APT's timeout is rather long, and inconvenient in environments where a proxy is required.

We may [[http://www.linuxjournal.com/article/7856|try to auto-detect the timezone]], although this is low-priority.

=== Partman problems ===

LVM and root, var, home on a different position, is too complicated.
Don't know where you are, cannot see visually what you are doing.<<BR>>

On LVM, just use 20G instead of all the space, so you can add LVs?<<BR>>

Sane LVM configuration by default. Defined max size for root, but not more, leave the rest of the disk free for additional partitions. Percentage up to a certain size.<<BR>>
Want to be able to edit automatic configurations like applied templates.
 * Evan to see if this is feasible within the constraints of d-i/partman.

` 4 G 20 G`<<BR>>
` +---------------+----------------------+-------+`<<BR>>
` | All for root | 4 GB + 20% for root | Free |`<<BR>>
`+------+---------------+----------------------+-------+`<<BR>>
`| Boot | LVM |`<<BR>>
`+-----------------------------------------------------+`<<BR>>

=== Miscellaneous changes ===

We will [[https://bugs.launchpad.net/bugs/21570|allow manual package selection]], probably by fixing tasksel's "manual package selection" option (currently deactivated in Ubuntu) to work when tasksel is being run under cdebconf. This will probably require a cdebconf plugin in order to wrest control of the console from newt.

We will implement a facility for help text in the installer. This will require a debconf protocol modification (or at least a cdebconf plugin), and will need to be proposed upstream in Debian.

 * Check password strength
  * cracklib vs pam
  * Kees and Colin should discuss
 * GTK front-end for d-i
Line 39: Line 68:
This section should describe a plan of action (the "how") to implement the changes discussed. Could include subsections like:
Line 42: Line 69:

Should cover changes required to the UI, or specific UI that is required to implement this
Line 47: Line 72:
Code changes should include an overview of what needs to change, and in some cases even the specific details.

=== Migration ===

Include:
 * data migration, if any
 * redirects from old URLs to new ones, if any
 * how users will be pointed to the new way of doing things, if necessary.
Line 57: Line 73:

It's important that we are able to test new features, and demonstrate them to users. Use this section to describe a short plan that anybody can follow that demonstrates the feature is working. This can then be used during testing, and to show off after release.

This need not be added or completed until the specification is nearing beta.
Line 64: Line 76:
This should highlight any issues that should be addressed in further specifications, and not problems with the specification itself; since any specification with problems cannot be approved. == BoF agenda and discussion ==
Default keyboard selection to selection via a list rather than detection using typing letters.
Want to be able to do a tree selection in tasksel, but that's not possible.
Line 66: Line 80:
== BoF agenda and discussion == = Proposal for 9.04 =
Line 68: Line 82:
Use this section to take notes during the BoF; if you keep it in the approved spec, use it for summarising what was discussed and note any options that were rejected. See also:

 * UbuntuSpec:server-installer-partitioning

Possible idea to consider separately: better tools (web based) to generate preseed / kickstart files.

== Can we use ubiquity? ==

 * serial port support
 * preseeding?
 * easier beautification?
 * no LVM or RAID support
 * Jaunty+1 at the *earliest*
 * Evan thinks it's feasible, but Colin would know if there's any reason why we absolutely cannot.
   * Would need LVM support, RAID support, etc.
   * Would need to fall back to d-i if we cannot start a graphical session. We don't want a text frontend to ubiquity because that would create unnecessary layers.
 * Surely the core problems are that Ubiquity has absolutely no idea how to install a system by building it up from .deb packages, but only by copying a live filesystem; and that Ubiquity requires a live filesystem with an Ubuntu desktop in order to work, which is unlikely to fit on the server CD. --ColinWatson

Summary

We should look at the current installation design and remove any questions we can, add anything that we think is missing and have a firm grasp on our overall status.

  • Compare our installation to the current ones by Red Hat and Novell SUSE (Microsoft Windows?)
  • Examine whether our installation meets the common use cases (means specifying them in a specification)
  • Change the installation to meet anything that we are currently missing or over-complicating

Release Note

Rationale

We know that the speed and simplicity of the installation process is key to providing a "Just Works" experience. We want to offer the best default configuration we can, and offer the ability to set up optional pieces (tasks), so we must balance these two areas. We firmly do not want a second stage after the installer has run. We should look at the current installation design and remove any questions we can, add anything that we think is missing and have a firm grasp on our overall status.

Use Cases

Design

A number of specific changes were identified to streamline the installation process.

Reducing number of questions

Default the keyboard detection question to "no": if you inadvertently hit "yes" (the current default), you have to go through dozens of key presses. [done, console-setup 1.28ubuntu2]

Try to auto-detect the proxy details (remove question if not needed) (bug 209691). APT's timeout is rather long, and inconvenient in environments where a proxy is required.

We may try to auto-detect the timezone, although this is low-priority.

Partman problems

LVM and root, var, home on a different position, is too complicated. Don't know where you are, cannot see visually what you are doing.

On LVM, just use 20G instead of all the space, so you can add LVs?

Sane LVM configuration by default. Defined max size for root, but not more, leave the rest of the disk free for additional partitions. Percentage up to a certain size.
Want to be able to edit automatic configurations like applied templates.

  • Evan to see if this is feasible within the constraints of d-i/partman.

                      4 G                    20 G
       +---------------+----------------------+-------+
       | All for root  | 4 GB + 20% for root  | Free  |
+------+---------------+----------------------+-------+
| Boot |                  LVM                         |
+-----------------------------------------------------+

Miscellaneous changes

We will allow manual package selection, probably by fixing tasksel's "manual package selection" option (currently deactivated in Ubuntu) to work when tasksel is being run under cdebconf. This will probably require a cdebconf plugin in order to wrest control of the console from newt.

We will implement a facility for help text in the installer. This will require a debconf protocol modification (or at least a cdebconf plugin), and will need to be proposed upstream in Debian.

  • Check password strength
    • cracklib vs pam
    • Kees and Colin should discuss
  • GTK front-end for d-i

Implementation

UI Changes

Code Changes

Test/Demo Plan

Unresolved issues

BoF agenda and discussion

Default keyboard selection to selection via a list rather than detection using typing letters. Want to be able to do a tree selection in tasksel, but that's not possible.

Proposal for 9.04

See also:

Possible idea to consider separately: better tools (web based) to generate preseed / kickstart files.

Can we use ubiquity?

  • serial port support
  • preseeding?
  • easier beautification?
  • no LVM or RAID support
  • Jaunty+1 at the *earliest*
  • Evan thinks it's feasible, but Colin would know if there's any reason why we absolutely cannot.
    • Would need LVM support, RAID support, etc.
    • Would need to fall back to d-i if we cannot start a graphical session. We don't want a text frontend to ubiquity because that would create unnecessary layers.
  • Surely the core problems are that Ubiquity has absolutely no idea how to install a system by building it up from .deb packages, but only by copying a live filesystem; and that Ubiquity requires a live filesystem with an Ubuntu desktop in order to work, which is unlikely to fit on the server CD. --ColinWatson


CategorySpec

ServerPreInstallation (last edited 2009-02-19 16:01:08 by 82-69-40-219)