180 likes | 262 Views
Image Distribution and VMIC (brainstorm). Belmiro Moreira CERN IT-PES-PS. Image Distribution - client. General idea An image should be in the compute nodes when the provision system tries to instantiate it. Quick and reliable distribution of images between compute nodes.
E N D
Image Distribution and VMIC(brainstorm) BelmiroMoreira CERN IT-PES-PS
Image Distribution - client • General idea • An image should be in the compute nodes when the provision system tries to instantiate it. • Quick and reliable distribution of images between compute nodes. • Central image catalog for CERN (VMIC); • No intervention needed when new nodes are added/removed.
Image Distribution - client • Some background • Initial was only to distribute images for vmbatch; • No image control in compute nodes; • Manual verification of all changes; • Images distributed to all compute nodes. • Currently Image Distribution could be a central service for the CERN internal Cloud. • For services; • For CERN users (a set of images available for the community);
Image Distribution - client • Real experience: • Running “smoothly” since Q3 2010; • some of the known problems were in fact implementation decisions; • some problems with VMIC integration; • some “bugs” found and resolved; • implementation decisions reconsidered. • “smoothly” considering for what it was developed but we need more features and reliability.
Image Distribution - client • New important features: • environment check for new images; • no parallel “deploy”; • rtorrent doesn’t trigger “deploy”; • SQLite db; • automatic recover form “error”; • all image history in the compute node; • comprehensive logs; • comprehensive CLI (who knows imgdist?)
Image Distribution - client • Other features: • “expired” images management; • new images states allows better image control; • publish available images for provision systems; • image distribution client daemon (future) • logs management (future) • download “only” valid images (future) • hypervisor; • OS; • architecture; • type of compute node (expected number of VMs)
Image Distribution - client • Open tickets #80 image distribution broken on SLC6 due to LV path #44 image management scripts on hypervisors don't support update of images #46 wget option --no-check-certificate #14 rtorrent cache cleanup #37 image distribution log file has wrong permissions #71 rtorrent keeps the stagein files open even if removed #45 advertise existing images on a given hypervisor to provisioning system
Image Distribution - client • Image states • “download” • “deploy” • “available” • “deprecated” • “expired” • “error” • “recover” • “removed”
Image Distribution - client • User Interface • “imagedist” tool imagedist list <download | deploy | available | deprecated | expired | error | recover | removed> imagedist show <imageID> imagedist show –uuid <imageUUID> imagedist enable imagedist disable imagedist status imagedist clean imagedist recover <imageID> imagedist recover –uuid <imageUUID> imagedist remove <imageID> imagedist remove –uuid <imageUUID> imagedist sync
Image Distribution - client • Implementation decisions • no image editing • except target compute nodes; • expects that each image as a different image file; • an image can be removed and then added again;
Image Distribution - client • Status and production release date: • Current status: • developing and testing; • lxbsq0902, lxbsq0903 • Production release: • first week of May
VMIC • General idea • VMIC is for CERN; • Image Catalogue • manages all images at CERN; • image traceability • Who added, who endorse, from?, when?, which file? • images storage; • defines which images can be exported; • manages images subscriptions from outside; • Should support HEPIX “models” but not only…;
VMIC • Technology evaluation • ruby, jsp, Django,… ? • MySql, postgreSQL, Oracle, SQLite? • external DB provided by DB group? • Who are VMIC users at CERN? • PES-PS managers • image endorser / list endorser • all CERN users (cloud for all CERN users?) • available public images
VMIC • Image Distribution independent; • Should support different interfaces; • HEPIX, StratusLab, …, as plug-ins. • How to deal with contextualization? • VMIC and provision systems • Failover? • VMIC should run into the Cloud? • storage outside the server; • instantiated easily;
VMIC • Define all workflows • New image; • from CERN • from outside • Remove image; • Update image; • Compromised image; • User interface • Graphical, CLI?
VMIC • Open tickets #6 certificate handling on vmrepo #16 automate image creation and transfer to repository #23 vmrepo does not understand non-compressed images #24 vmrepo does not show new images in /vmrepo/shared/torrents #36 vmic allows to add images twice #65 deploy/evaluate Clemspon patches for VMIC #62 RFE: VMIC should allow URLs for adding images
Image Distribution and VMIC • Automatic image distribution management VMIC image distribution “manager” image distribution “clients”
Thank you Illustration By David Fletcher Of CloudTweaks