PlanetLab Software Overview. Mark Huang - PowerPoint PPT Presentation

1 / 14
About This Presentation
Title:

PlanetLab Software Overview. Mark Huang

Description:

PlanetLab Software Overview. Mark Huang. mlhuang_at_cs.princeton.edu. PlanetLab CVS ... Mail, Support (RT), DNS, Monitor, Build, CVS, QA. Boot CD. Version 3 Boot ... – PowerPoint PPT presentation

Number of Views:135
Avg rating:3.0/5.0
Slides: 15
Provided by: planet72
Category:

less

Transcript and Presenter's Notes

Title: PlanetLab Software Overview. Mark Huang


1
PlanetLab Software Overview
  • Mark Huang
  • mlhuang_at_cs.princeton.edu

2
PlanetLab CVS
  • http//cvs.planet-lab.org/cvs/
  • pserveranon_at_cvs.planet-lab.org/cvs
  • CVS_RSHssh extcvs.planet-lab.org/cvs

3
PlanetLab Build
  • http//build.planet-lab.org/build/
  • /nightly/
  • /planetlab-3_3-rc1/

4
Node Software
  • Boot
  • Boot CD
  • Boot Manager
  • Virtualization
  • Linux kernel
  • VServer
  • VNET
  • Node Management
  • Node Manager
  • NodeUpdate
  • PlanetLabConf
  • Slice Management
  • Slice Creation Service
  • Proper
  • Monitoring
  • PlanetFlow
  • pl_mom

5
PLC Software
  • Database server
  • pl_db
  • PLCAPI server
  • plc_api
  • Web server
  • Website PHP
  • Scripts
  • Boot server
  • PlanetLabConf scripts
  • PlanetFlow archive
  • Mail, Support (RT), DNS, Monitor, Build, CVS, QA

6
Boot CD
  • Version 3 Boot CD
  • bootcd_v3/conf_files/
  • Hardware, network, system initialization
  • bootcd_v3/configurations/
  • CD customization
  • Two-stage build
  • bootcd_v3/prep.sh
  • Prepares basic filesystem
  • bootcd_v3/build.sh
  • Prepares overlay filesystem which customizes the
    Boot CD

7
Boot Manager
  • Boot Manager
  • bootmanager/source/
  • Main BootManager class, authentication, utility
    functions, configuration, etc.
  • bootmanager/source/steps/
  • Individual steps of the install/boot process
  • bootmanager/support-files/
  • Bootstrap tarball generation
  • Legacy support for old Boot CDs
  • To Do
  • Get out of the hardware and installation business
    (Anaconda?)
  • Support distributed boot and install (signed
    packages?)

8
Virtualization
  • Linux kernel
  • linux-2.6/
  • Fedora Core 4 kernel
  • VServer patch
  • AndySched, VNET, Proper, BCM5700, GRE/PPTP, other
    miscellaneous patches
  • VServer
  • util-vserver/
  • Userspace VServer management utilities and
    libraries
  • VNET
  • Linux kernel module
  • Intercepts bind(), other socket calls
  • Intercepts and marks all IP packets
  • Implements TUN/TAP, proxy socket extensions

9
Node Management
  • Node Manager (pl_nm)
  • sidewinder/
  • Thin XML-RPC shim around VServer (or other VMM)
    syscalls, and other knobs
  • util-python/
  • Miscellaneous Python utility functions
  • util-vserver/python/
  • Python bindings for VServer syscalls
  • Node Update
  • NodeUpdate/
  • Wrapper around yum for keeping node RPMs
    up-to-date
  • PlanetLabConf
  • PlanetLabConf/
  • Pull-based configuration file distribution
    service
  • Most files dynamically generated on a per-node or
    per-node group basis

10
Slice Management
  • Slice Creation Service (pl_conf)
  • sidewinder/
  • Runs in a slice
  • Periodically downloads slices.xml from boot
    server
  • Local XML-RPC API for delegated slice creation,
    query
  • Proper
  • proper/
  • Simple local interface for executing privileged
    operations
  • Bind mount(), privileged port bind(), root read()

11
Administration and Monitoring
  • PlanetFlow (pl_netflow)
  • netflow/
  • MySQL schema and initialization/maintenance
    scripts
  • netflow/html/
  • PHP frontend
  • netflow/pfgrep/
  • Console frontend
  • ulogd/
  • Packet header collection, aggregation, and
    insertion
  • PlanetLab Monitor (pl_mom)
  • pl_mom/swapmon.py
  • Swap space monitor and slice reaper
  • pl_mom/bwmon.py
  • Average daily bandwidth monitor

12
Database and API
  • Database
  • pl_db/
  • PostgreSQL schema generated from XML
  • PLCAPI
  • plc_api/specification/
  • XML specification of API functions
  • plc_api/PLC/
  • mod_python implementation

13
Web Server
  • PHP, Static, Generated
  • plc_www/includes/new_plc_api.php
  • Auto-generated PHP binding to PLCAPI
  • plc_www/db/
  • Secure portion of website
  • plc_www/generated/
  • Generated include files
  • plc/scripts/
  • Miscellaneous scripts

14
Boot Server
  • Secure Software Distribution
  • Authenticated, encrypted with SSL
  • /var/www/html/boot/
  • Default location for Boot Manager
  • /var/www/html/install-rpms/
  • Default /etc/yum.conf location for RPM updates
  • /var/www/html/PlanetLabConf/
  • Server-side component
  • Mostly PHP
Write a Comment
User Comments (0)
About PowerShow.com