##(see the SpecSpec for an explanation) ''Please check the status of this specification in Launchpad before editing it. If it is Approved, contact the Assignee or another knowledgeable person before making changes.'' * '''Launchpad Entry''': https://blueprints.edge.launchpad.net/ubuntu/+spec/fai-in-ubuntu * '''Packages affected''': == Sumary == FAI is providing means for the following tasks: 1. deployment 2. customizing 3. managing/keeping system up-to-date. We need to evaluate if FAI could be used as framework for building an application that supplement kickstart and d-i to customize and manage server profiles. == Architecture == * Classes (allow to do hw detection through standard and customized scripts/allow for inheritance) * Disk prep * Base system * debconf preseed * Packages selection * Scripts New features in FAI make it not only an installer * disk install (chroot install/XEN) * soft update mode (skip base system) to reconfigure an existing system or apply security updates * revision system hooks * FAI CD Requirements to be met * disconected mode * reporting requires parsing log file Samples : * Setting up a file server Proposed additions : * LAMP * DHCP == Release Note == 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.) It is mandatory. == Rationale == This should cover the _why_: why is this change being proposed, what justifies it, where we see this justified. == Use Cases == == Assumptions == == Design == You can have subsections that better describe specific parts of the issue. == 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 CD testing, and to show off after release. This need not be added or completed until the specification is nearing beta. == Outstanding 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. == Discussion == FAI is fine and dandy, but it does not scale well for large deployments. Can we talk about strengthening the preseed and d-i environment over this instead? - I'm sorry to strongly disagree here. preseeding has absolutely the scaling problems. I think a combination of something like FAI and preseeding (which FAI is perfectly able to do) is the way to go. Please have a look at it and reconsider. Have you considered systemimager ? - systemimager has totally different use cases. Fai is both for mass deployment and mass configuration and customisation. fai is also already deployed and tested in very large environments. ---- CategorySpec