Fuel & its
Architecture
Mike Scherbakov
Fuel Lead
● What is Fuel?
● How it works (high level)
● User Experience
● Components
● Additional functions
● What Fuel already deploys?
● Roadmap
● Where to get Fuel?
● Resources & Development processes
Agenda
Fuel targets a position to become a control plane of
your Data Center
● Hardware Discovery
● Switches configuration [to be implemented]
● Network Verification
● OS provisioning on bare metal
● Deployment of OpenStack and beyond
● Post-deployment checks of OpenStack
What is Fuel?
Manual steps to setup an environment:
● Hardware planning
● Network configuration
How it works now (high level)
Manual steps to setup an environment:
● Hardware planning
● Network configuration
● [Live demo] Installation of Fuel Master node
● [Automated] Hardware discovery process
How it works now (high level)
How it works: Hardware Discovery
Fuel Master (b) PXE
(a) Power on
(c) discovery
image
(d) agent REST API
call
node-1
User Experience: UI (Live Demo)
User Experience: CLI (Live Demo)
● Covers everything we can do via UI
● Allows even more
Components: Nailgun
● Written on Python
● Exposes internal data via REST API
● Concentrates up to 90% of deployment logic
● Transforms user input (UI, CLI) into deployment
data (JSON)
● Keeps tasks status and all information in DB
● Uses SQLAlchemy, Alembic for DB access and
migrations
Components: Nailgun
Components: Naily & Astute
● Naily consumes messages sent by Nailgun
● Naily & Astute are both written in Ruby
● Astute uses MCollective RPC
● Has bindings to provisioning
● Tracks progress of deployment, provisioning
● Supports operations (adding/removing nodes)
● Small in comparison with Nailgun
Components: Naily & Astute
Components: OSTF (Health Check)
Architecture: bigger picture
● Health Check
● Network Checker
○ DHCP
○ VLANs
● Diagnostic Snapshot
● Logs collection & calculation of operations
progress
● [In development] Master node upgrade
capabilities
Additional Functions
● Core OpenStack components in HA fashion
○ nova-network & Neutron
○ Ceilometer
● Savanna (Hadoop on top of OpenStack)
● Murano (Windows DCs on top of OpenStack)
● Ceph
What Fuel already deploys?
● Fuel Master node upgrades
● Patching & Upgrade of OpenStack
● Replacement of Cobbler by Ironic
● …. suggest us more here: https://blueprints.
launchpad.net/fuel
In the Roadmap
● Download ISO from Mirantis (need to register)
● Build your own ISO: docs.mirantis.com/fuel-dev
● All other info starts from wiki.opentstack.
org/wiki/fuel
… Issues? Talk to us at #fuel-dev & https:
//launchpad.net/~fuel-dev
Where to get
● Code at github.com/stackforge/fuel-*
● OpenStack Gerrit for code reviews
● Launchpad for tracking bugs & blueprints
● #fuel-dev & fuel-dev@lists.launchpad.net
● Development docs at docs.mirantis.com/fuel-dev
● fuel-jenkins.mirantis.com - open CI
Development Processes
Q&A
Mike Scherbakov
mscherbakov@mirantis.com

Fuel's current use cases, architecture and next steps

  • 1.
    Fuel & its Architecture MikeScherbakov Fuel Lead
  • 2.
    ● What isFuel? ● How it works (high level) ● User Experience ● Components ● Additional functions ● What Fuel already deploys? ● Roadmap ● Where to get Fuel? ● Resources & Development processes Agenda
  • 3.
    Fuel targets aposition to become a control plane of your Data Center ● Hardware Discovery ● Switches configuration [to be implemented] ● Network Verification ● OS provisioning on bare metal ● Deployment of OpenStack and beyond ● Post-deployment checks of OpenStack What is Fuel?
  • 4.
    Manual steps tosetup an environment: ● Hardware planning ● Network configuration How it works now (high level)
  • 5.
    Manual steps tosetup an environment: ● Hardware planning ● Network configuration ● [Live demo] Installation of Fuel Master node ● [Automated] Hardware discovery process How it works now (high level)
  • 6.
    How it works:Hardware Discovery Fuel Master (b) PXE (a) Power on (c) discovery image (d) agent REST API call node-1
  • 7.
  • 8.
    User Experience: CLI(Live Demo) ● Covers everything we can do via UI ● Allows even more
  • 9.
  • 10.
    ● Written onPython ● Exposes internal data via REST API ● Concentrates up to 90% of deployment logic ● Transforms user input (UI, CLI) into deployment data (JSON) ● Keeps tasks status and all information in DB ● Uses SQLAlchemy, Alembic for DB access and migrations Components: Nailgun
  • 11.
  • 12.
    ● Naily consumesmessages sent by Nailgun ● Naily & Astute are both written in Ruby ● Astute uses MCollective RPC ● Has bindings to provisioning ● Tracks progress of deployment, provisioning ● Supports operations (adding/removing nodes) ● Small in comparison with Nailgun Components: Naily & Astute
  • 13.
  • 14.
  • 15.
    ● Health Check ●Network Checker ○ DHCP ○ VLANs ● Diagnostic Snapshot ● Logs collection & calculation of operations progress ● [In development] Master node upgrade capabilities Additional Functions
  • 16.
    ● Core OpenStackcomponents in HA fashion ○ nova-network & Neutron ○ Ceilometer ● Savanna (Hadoop on top of OpenStack) ● Murano (Windows DCs on top of OpenStack) ● Ceph What Fuel already deploys?
  • 17.
    ● Fuel Masternode upgrades ● Patching & Upgrade of OpenStack ● Replacement of Cobbler by Ironic ● …. suggest us more here: https://blueprints. launchpad.net/fuel In the Roadmap
  • 18.
    ● Download ISOfrom Mirantis (need to register) ● Build your own ISO: docs.mirantis.com/fuel-dev ● All other info starts from wiki.opentstack. org/wiki/fuel … Issues? Talk to us at #fuel-dev & https: //launchpad.net/~fuel-dev Where to get
  • 19.
    ● Code atgithub.com/stackforge/fuel-* ● OpenStack Gerrit for code reviews ● Launchpad for tracking bugs & blueprints ● #fuel-dev & fuel-dev@lists.launchpad.net ● Development docs at docs.mirantis.com/fuel-dev ● fuel-jenkins.mirantis.com - open CI Development Processes
  • 20.