KarmicKickstart

Differences between revisions 1 and 2
Revision 1 as of 2009-06-09 12:46:59
Size: 4175
Editor: 82-69-40-219
Comment: start
Revision 2 as of 2009-06-09 16:04:48
Size: 4672
Editor: 82-69-40-219
Comment: draft
Deletions are marked like this. Additions are marked like this.
Line 6: Line 6:
 * '''Packages affected''': `kickseed`  * '''Packages affected''': `kickseed`, `system-config-kickstart`, `partman-auto-raid` (and possibly other `partman-*` packages)
Line 22: Line 22:
== User stories ==

== Assumptions ==
Line 28: Line 24:
You can have subsections that better describe specific parts of the issue. === Reference documentation ===
Line 30: Line 26:
== Implementation ==

This section should describe a plan of action (the "how") to implement the changes discussed. Could include subsections like:

=== UI Changes ===

Should cover changes required to the UI, or specific UI that is required to implement this

=== Code Changes ===

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.

== Test/Demo Plan ==

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. Please add an entry to http://testcases.qa.ubuntu.com/Coverage/NewFeatures for tracking test coverage.

This need not be added or completed until the specification is nearing beta.

== Unresolved issues ==

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 ==

{{{
Line 67: Line 31:
New commands: === New commands ===
Line 77: Line 42:
 * services - modify default set of services to run under default runlevel (probably not a good idea to try this until Upstart settles?)  * services - modify default set of services to run under default runlevel (probably not a good idea to try this until Upstart jobs settle)
Line 79: Line 44:
  * would need to be added to network-console (currently SSH only) - only really useful for graphical mode   * This would need to be added to network-console (currently SSH only) - only really useful for graphical mode, which is not a priority for us
Line 81: Line 46:
New options: === New options ===
Line 86: Line 52:
Old things we already knew weren't supported but which are important:
 * RAID, especially LVM-on-RAID
=== Plan of action ===
Line 89: Line 54:
Approximate priorities:
 1. RAID
 2. iSCSI
We will (as usual) try to implement as much as we can of the new facilities, and document anything missing in the installation guide. However, since there are quite a few items here, many of which are not very important for us, it seems best to have some priorities.
Line 93: Line 56:
Low-hanging fruit: RAID is the clear top priority. In fact, this was already one of our missing items from RHL 9, and is not getting any less important. LVM-on-RAID, in particular, is also important. This is also probably the hardest item here, as it seems likely to require a reformulation of the partman recipe formats in order to support better configuration of nested block devices. We will work on this in conjunction with Debian.

iSCSI is a relatively new entrant, and is the next most important item here. We will only be able to do this once UbuntuSpec:foundations-karmic-iscsi-installer-support is implemented.

There are several pieces of low-hanging fruit which would be sufficiently straightforward to implement that they should be done early on despite their lower importance. These are:
Line 95: Line 63:
 * mediacheck?  * mediacheck
Line 98: Line 66:
Should give the configurator (system-config-kickstart) a refresh
Web interface for Kickstart file generation? (Colin vaguely remembers a third-party service)
}}}
We will update the configuration UI (`system-config-kickstart`) to the newest available version to support these changes.

== Test/Demo Plan ==

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. Please add an entry to http://testcases.qa.ubuntu.com/Coverage/NewFeatures for tracking test coverage.

This need not be added or completed until the specification is nearing beta.

== Future work ==

A web interface for Kickstart file generation would be useful; some third-party services have attempted this kind of thing. However, this is rather blue-sky at the moment.

== Unresolved issues ==

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.

Summary

Ensure that we are fully compatible with Kickstart for the most common requirements and everything that is used through our installer, including RAID+LVM, encrypted partitions, and RHEL 5 Kickstart file compatibility.

Release Note

Kickstart compatibility in the installer has been updated with reference to RHEL 5.

Rationale

Our Kickstart compatibility implementation was created with reference to Red Hat Linux 9, and has not been updated to cover additions in more recent Red Hat releases. Several of the new commands are useful to administrators deploying Ubuntu.

There are some high-priority commands which were in RHL 9 but for which compatibility was never implemented in Ubuntu; we should clear these up, as they are frequently requested.

Design

Reference documentation

Ubuntu Kickstart documentation: https://help.ubuntu.com/9.04/installation-guide/i386/automatic-install.html

Existing implementation: RHL 9 - http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/custom-guide/part-install-info.html Desired implementation: RHEL 5 - http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/5/html/Installation_Guide/ch-kickstart2.html

New commands

  • ignoredisk - skip specified disks in the partitioner
  • firstboot - control whether "Setup Agent" is started after reboot
  • iscsi - IP/target/port/user/password options for iSCSI installation
  • logging - syslog handling
  • mediacheck - equivalent to cdrom-checker
  • multipath
  • halt, poweroff - halt or switch off the power at end of installation rather than rebooting
  • repo - configure additional package sources
  • selinux
  • services - modify default set of services to run under default runlevel (probably not a good idea to try this until Upstart jobs settle)
  • vnc
    • This would need to be added to network-console (currently SSH only) - only really useful for graphical mode, which is not a priority for us

New options

  • 'install harddrive --biospart=BIOSID', 'part --onbiosdisk=BIOSID' (e.g. 82) - apparently with EDD
    • From git://git.fedorahosted.org/anaconda.git
  • wireless support options in 'network' command

Plan of action

We will (as usual) try to implement as much as we can of the new facilities, and document anything missing in the installation guide. However, since there are quite a few items here, many of which are not very important for us, it seems best to have some priorities.

RAID is the clear top priority. In fact, this was already one of our missing items from RHL 9, and is not getting any less important. LVM-on-RAID, in particular, is also important. This is also probably the hardest item here, as it seems likely to require a reformulation of the partman recipe formats in order to support better configuration of nested block devices. We will work on this in conjunction with Debian.

iSCSI is a relatively new entrant, and is the next most important item here. We will only be able to do this once foundations-karmic-iscsi-installer-support is implemented.

There are several pieces of low-hanging fruit which would be sufficiently straightforward to implement that they should be done early on despite their lower importance. These are:

  • repo
  • mediacheck
  • halt, poweroff

We will update the configuration UI (system-config-kickstart) to the newest available version to support these changes.

Test/Demo Plan

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. Please add an entry to http://testcases.qa.ubuntu.com/Coverage/NewFeatures for tracking test coverage.

This need not be added or completed until the specification is nearing beta.

Future work

A web interface for Kickstart file generation would be useful; some third-party services have attempted this kind of thing. However, this is rather blue-sky at the moment.

Unresolved issues

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.


CategorySpec

FoundationsTeam/Specs/KarmicKickstart (last edited 2009-07-02 11:56:21 by 82-69-40-219)