From Fedora Project Wiki

< Server

Revision as of 16:54, 19 December 2013 by Sgallagh (talk | contribs) (Add use cases)

Our primary deliverable for January should be the definition of how we're going to prepare the platform and the requirements for an application stack to be promoted to first-tier inclusion. (Agreed 5 Nov 2013)

Mission Statement

Fedora Server is a common base platform with 'featured application stacks' built on top of it. We commit to produce, test, and distribute these application stacks.

Personas

We will use a set of personas to describe our target users and their respective needs. This document will list the personas in their simplified forms, with detailed explanations of each one available on their respective wiki pages.

  1. System Administrator "Macgyver"
    • Administrator with limited hardware and personnel resources to work with
    • Needs to be able to do "a lot with a little"
  2. DevOps Engineer/Administrator
    • Focus is on time-to-deploy and time-to-recover as opposed to uptime
    • Value is achieved by delivering the latest capabilities fastest
    • Needs to be able to deliver quickly to PaaS, SaaS and bare-metal servers
  3. Traditional Application Developer
    • Needs a platform with API and ABI stability guarantees
    • Focus will be on minimizing risk when making changes
    • Cannot tolerate rapid changes in core functionality
  4. Junior Enterprise System Administrator
    • Simplify automation to manage repetitive tasks
    • Needs intuitive mechanisms to effect common changes
  5. Decision Maker
    • Makes purchasing decisions and directs technology choices
    • Interacts with upstream FOSS communities to identify potential value

Use Cases

The Fedora Server will need to address the following use-cases: (Note: need to order these by priority)

  1. The user must be able to easily deploy and configure any supported Fedora Server role. (Examples may include: FreeIPA Domain Controller, BIND DNS, DHCP, Database server, iSCSI target, File/Storage server.)
  2. The user must be able to query, monitor, configure and manage a Fedora Server remotely using stable and consistent public interfaces.
  3. The user must be able to simply enroll the Fedora Server into a FreeIPA or Active Directory domain.
  4. Users must be able to control and contain the resources consumed by services running on the system.
  5. Users must be able to rapidly re-deploy services in accordance with their DevOps practices using Fedora Server.
  6. ASK SOFTWARE COLLECTIONS WG The user must be able to easily deploy and configure applications to supported high-value frameworks. (Example frameworks: JBoss, Ruby on Rails, Django, Turbogears, Node.js, PHP.)
  7. ASK CLOUD WG Provide a platform for acting as a node in an OpenStack rack.
  8. ASK CLOUD WG Users must be able to create, manipulate and terminate large numbers of containers using a stable and consistent interface.
  9. Users must be able to use Fedora Server in fully headless operation. We commit to supporting only those GUI applications that can work with forwarded X (or the equivalent on other windowing systems)

Product Lifecycle

See Server Lifecycle Proposal for draft work.

Delivery Mechanism

See Server Lifecycle Proposal for draft work that includes this topic.

Proposed Server Roles

See Server Roles Proposal for draft work.

Requirements for First-Tier Applications/Services Supporting a Server Role

See Server Roles Proposal for draft work that includes this topic.