Condor Project Computer Sciences Department University of Wisconsin-Madison Virtual Machines in Condor.

Slides:



Advertisements
Similar presentations
With ovirt & virt manager
Advertisements

Operating System.
Virtual Machine Technology Dr. Gregor von Laszewski Dr. Lizhe Wang.
NWCLUG 01/05/2010 Jared Moore Xen Open Source Virtualization.
Condor Project Computer Sciences Department University of Wisconsin-Madison Condor's Use of the Cisco Unified Computing System.
Chapter One The Essence of UNIX.
1 Week #1 Objectives Review clients, servers, and Windows network models Differentiate among the editions of Server 2008 Discuss the new Windows Server.
Linux+ Guide to Linux Certification, Second Edition Chapter 3 Linux Installation and Usage.
14.1 © 2004 Pearson Education, Inc. Exam Planning, Implementing, and Maintaining a Microsoft Windows Server 2003 Active Directory Infrastructure.
Using Virtual Machine-ware to run SLHC Simulations Laura Gilbert - Oxford Atlas Physics meeting 5th June 2006.
Lesson 7: Creating and Configuring Virtual Machine Settings
Xuan Guo Chapter 1 What is UNIX? Graham Glass and King Ables, UNIX for Programmers and Users, Third Edition, Pearson Prentice Hall, 2003 Original Notes.
MCTS Guide to Microsoft Windows Server 2008 Network Infrastructure Configuration Chapter 8 Introduction to Printers in a Windows Server 2008 Network.
Condor Overview Bill Hoagland. Condor Workload management system for compute-intensive jobs Harnesses collection of dedicated or non-dedicated hardware.
Overview Basic functions Features Installation: Windows host and Linux host.
Cambodia-India Entrepreneurship Development Centre - : :.... :-:-
Operating Systems.
Virtualization for Cloud Computing
Installing software on personal computer
The Origin of the VM/370 Time-sharing system Presented by Niranjan Soundararajan.
VIRTUALISATION OF HADOOP CLUSTERS Dr G Sudha Sadasivam Assistant Professor Department of CSE PSGCT.
1 MASTERING (VIRTUAL) NETWORKS A Case Study of Virtualizing Internet Lab Avin Chen Borokhovich Michael Goldfeld Arik.
Jaeyoung Yoon Computer Sciences Department University of Wisconsin-Madison Virtual Machine Universe in.
Paper on Best implemented scientific concept for E-Governance Virtual Machine By Nitin V. Choudhari, DIO,NIC,Akola By Nitin V. Choudhari, DIO,NIC,Akola.
Jaeyoung Yoon Computer Sciences Department University of Wisconsin-Madison Virtual Machines in Condor.
Red Hat Installation. Installing Red Hat Linux is the process of copying operating system files from a CD, DVD, or USB flash drive to hard disk(s) on.
Presented by : Ran Koretzki. Basic Introduction What are VM’s ? What is migration ? What is Live migration ?
Space Science and Engineering Center University of Wisconsin-Madison Virtual Machines: A method for distributing DB processing software Liam Gumley.
Virtualization and Open source Software Mr. Lau Ka Lun – Lai King Catholic Secondary School Date: 9 th, 21 st, 22 nd March, 2011.
Using Virtualization in the Classroom. Using Virtualization in the Classroom Session Objectives Define virtualization Compare major virtualization programs.
Jaime Frey Computer Sciences Department University of Wisconsin-Madison Virtual Machines in Condor.
Tanenbaum 8.3 See references
Zach Miller Computer Sciences Department University of Wisconsin-Madison What’s New in Condor.
Paper on Best implemented scientific concept for E-Governance projects Virtual Machine By Nitin V. Choudhari, DIO,NIC,Akola.
Hands-On Virtual Computing
Guide to Linux Installation and Administration, 2e1 Chapter 8 Basic Administration Tasks.
5 Chapter Five Web Servers. 5 Chapter Objectives Learn about the Microsoft Personal Web Server Software Learn how to improve Web site performance Learn.
Chapter 8 Implementing Disaster Recovery and High Availability Hands-On Virtual Computing.
Virtualization Paul Krzyzanowski Distributed Systems Except as otherwise noted, the content of this presentation is licensed.
Section 3.1: Operating Systems Concepts 1. A Computer Model An operating system has to deal with the fact that a computer is made up of a CPU, random.
Peter Keller Computer Sciences Department University of Wisconsin-Madison Quill Tutorial Condor Week.
Linux in a Virtual Environment Nagarajan Prabakar School of Computing and Information Sciences Florida International University.
INTRODUCTION TO VIRTUALIZATION KRISTEN WILLIAMS MOSES IKE.
Beowulf Software. Monitoring and Administration Beowulf Watch 
Todd Tannenbaum Computer Sciences Department University of Wisconsin-Madison Quill / Quill++ Tutorial.
Kickstart Installation
Linux Operations and Administration
Hands-On Virtual Computing
Cloud Computing – UNIT - II. VIRTUALIZATION Virtualization Hiding the reality The mantra of smart computing is to intelligently hide the reality Binary->
Todd Tannenbaum Computer Sciences Department University of Wisconsin-Madison Condor NT Condor ported.
Jaime Frey Computer Sciences Department University of Wisconsin-Madison Condor and Virtual Machines.
CEG 2400 FALL 2012 Linux/UNIX Network Operating Systems.
36 th LHCb Software Week Pere Mato/CERN.  Provide a complete, portable and easy to configure user environment for developing and running LHC data analysis.
Virtual Machines Module 2. Objectives Define virtual machine Define common terminology Identify advantages and disadvantages Determine what software is.
KVM tutorial #3 Andrea Chierici Virtualization tutorial Catania 1-3 dicember 2010.
Libvirt management Andrea Chierici Virtualization tutorial Catania 1-3 dicember 2010.
Linux and Coldfusion MX Mid-Michigan Coldfusion User’s Group, Nov
Gabi Kliot Computer Sciences Department Technion – Israel Institute of Technology Adding High Availability to Condor Central Manager Adding High Availability.
Find – used to find files corresponding to a certain criteria find starting_dir matching_criteria [options] Examples: find /usr –name startx find /usr.
VIRTUAL MACHINE – VMWARE. VIRTUAL MACHINE (VM) What is a VM? – A virtual machine (VM) is a software implementation of a computing environment in which.
VMware Recovery Software RECOVER DATA FROM CORRUPT VMDK FILE.
Intro To Virtualization Mohammed Morsi
Harvesting Free Windows CPU Cycles for Linux Applications using Sandboxing Rasmus Andersen Dept. of Computer Science, University of Copenhagen, Denmark.
Virtualization With:. Virtualization With: What Kind of Virtualization? Full virtualization Platform Resource.
Andrea Chierici Virtualization tutorial Catania 1-3 dicember 2010
Virtualization for Cloud Computing
Integration of Singularity With Makeflow
Hands-On Virtualization in the Classroom
Haiyan Meng and Douglas Thain
Presentation transcript:

Condor Project Computer Sciences Department University of Wisconsin-Madison Virtual Machines in Condor

Virtual Machines › Simulated hardware › Software in the VM thinks it’s running on a normal machine 2

Virtual Machines Real Machine Virtual Machines 3

Benefits of Virtual Machines › Job sandboxing › Checkpoint and migration › Jobs with elevated privileges › Platform independence 4

Job Sandboxing › Protect machines from jobs  Both accidental and malicious damage › Machine owners more willing to run unfamiliar jobs 5

Checkpoint and Migration › State of entire VM (OS and all) is recorded › VM can be checkpointed for…  Failure recovery  Migration to other machines 6

Jobs with Elevated Privileges › Run as root or administrator user › Alter OS installation › Useful for automated testing of software like Condor 7

Platform Independence › Jobs can run on more machines › Machines can run more jobs › Linux jobs on Windows machines  And vice versa 8

VM Image Provided By… › Machine Owner  Condor runs inside a VM  VM becomes a node in your Condor pool › Job Owner  VM universe  Condor runs a user-provided VM image

Condor in a VM › Run Condor in a VM › VM joins your pool › VM acts like any other node › Condor in VM can gather information from host machine  E.g. load average, keyboard idle time

Condor in a VM Execute Machine Startd VM Startd Job Submit Machine Schedd

Config Settings › Host config file  VMP_VM_LIST = vm1.bar.edu, vm2.bar.edu  HOSTALLOW_WRITE = $(HOSTALLOW_WRITE), \ $(VMP_VM_LSIT) › VM config file  VMP_HOST_MACHINE = foo.bar.edu  START = (KeyboardIdle > 150) && \ (HOST_KeyboardIdle > 150)

VM Universe › The VM image is the job › Job output is the modified VM image › VMWare, KVM and Xen are supported › VM GAHP  Daemon used to condor_starter to interact with VM software 13

VM Universe Example Execute Machine Startd Submit Machine Schedd 14

VM Universe Example Execute Machine Startd Submit Machine Schedd 15

VM Universe Example Execute Machine Startd VM GAHP Submit Machine Schedd 16

VM Universe Example Execute Machine Startd Job VM VM GAHP Submit Machine Schedd 17

VM Universe Example Execute Machine Startd Job VM VM GAHP Submit Machine Schedd 18

VM Universe Example Execute Machine Startd VM GAHP Submit Machine Schedd 19

VM Universe Example Execute Machine Startd Submit Machine Schedd 20

Condor Config File › VM_TYPE =  Indicate what VM software you have  This enables VM capabilities › VM_MEMORY = 256  Max memory all VMs can use › VM_MAX_NUMBER = 2  Max simultaneous VMs 21

Condor Config File › VM_NETWORKING = TRUE  Can the VM access the network? › VM_NETWORKING_TYPE = nat, bridge  Ways the VM access the network › VM_NETWORKING_DEFAULT_TYPE = nat  Default network access type › VM_SOFT_SUSPEND = True  Suspend VM in memory or write to disk? 22

Config File for VMWare › VMWARE_NETWORKING_TYPE = \  Networking type to appear in.vmx file › VMWARE_LOCAL_SETTINGS_FILE = \ /path/to/file  Extra attributes to insert in.vmx file 23

Config File for Xen/KVM › LIBVIRT_XML_SCRIPT = \ $(LIBEXEC)/libvirt_simple_script.awk  Optional callout to write libvirt XML description › VM_BRIDGE_SCRIPT = \ vif-bridge bridge=xenbr0  Script to set up networking › XEN_BOOTLOADER = /usr/bin/pygrub  Xen only, when kernel included in disk image 24

Machine ClassAd HasVM = True VM_AvailNum = 2 VM_Memory = 256 VM_Networking = True VM_Networking_Types = "nat,bridge" VM_GAHP_VERSION = "$VMGahpVersion…" VM_Type = "vmware" 25

Build a Submit File › universe = vm › executable = MyJob1  Executable only used for naming in condor_q display › vm_type = 26

Build a Submit File › vm_memory = 256  Units are megabytes 27

Build a Submit File › vm_networking =  Does VM require a network interface?  Some machines may not provide one › vm_networking_type =  Does VM require a specific type of network interface?  Some machines may not provide both types 28

Build a Submit File › vm_no_output_vm = \  Should modified VM image be returned to user?  Some VM jobs may send results over the network 29

Build a Submit File › vm_cdrom_files = a.txt, b.txt  Files are mounted in VM as a CD-ROM image  Allows you to use a VM image for many different jobs  You can replace the list of files with a single ISO image 30

Build a Submit File › vm_should_transfer_cdrom_files = \  If True, files for CD-ROM image are transferred from submit machine to execute machine  If False, files are read from a shared filesystem on execute machine 31

Build a Submit File › vm_checkpoint =  If True, Condor will checkpoint VM periodically and on eviction from execute machine  Checkpoints stored on submit machine 32

VMWare Parameters › vmware_dir =  Directory containing the VMWare VM image to be run 33

VMWare Parameters › vmware_snapshot_disk = \  A snapshot disk records only the changes from the original VM image  Saves network bandwidth and disk space on submit machine 34

VMWare Parameters › vmware_should_transfer_files = \  If True, files in vmware_dir are transferred from submit machine to execute machine  If False, files are read from a shared file system on execute machine 35

Xen/KVM Parameters › xen_disk = file1:dev1:perm1,\ file2:dev2:perm2 › kvm_disk = file1:dev1:perm1,\ file2:dev2:perm2  The VM image is a list of disk image files, along with the devices they should be mapped to in the VM and the permissions they should have  The image files can be whole disks or disk partitions 36

Xen Parameters › xen_kernel = included  The kernel is in the disk image file › xen_kernel = /path/to/kernel  Use the indicated kernel 37

Xen Parameters › xen_kernel_params =  Append to Xen kernel command line › xen_root =  Indicates root disk when kernel not included in disk image › xen_initrd =  Path to ramdisk image to be used 38

Xen/KVM Parameters › xen_cdrom_device = › kvm_cdrom_device =  When using vm_cdrom_files, you must specify what device the CD-ROM image will be mapped to 39

Xen/KVM Parameters › xen_transfer_files = file1, file2 › kvm_transfer_files = file1, file2  Xen-related files to be transferred from the submit machine to the execute machine  Any VM image files not listed are assumed to accessible on the execute machine 40

Checkpointing and Networking › VM’s MAC and IP address are saved across checkpoint and restart › Network connections may be lost  If NAT networking is used and job changes machines  If job is idle for too long before restart › VMWare provides a tool to maintain DHCP leases across checkpoint and restart 41

VM Checkpointing vs. Standard Universe › No relinking › Works with more types of jobs  Multiple processes and threads  Networking (but migration problematic) › No Remote IO  Must specify input files 42

Creating a VM Image › Configure OS to…  Run your application on boot-up  Shut down when your application exits › Input files can be read from CD-ROM image  Input files can include application binary 43

Running in the VM › Sample boot script on linux  /etc/rc.d/rc3.d/S90myjob: #!/bin/sh su – joe ~/myjob 123 >~/output shutdown –h now 44

How to Create VM images › VMware Server  Using VMware Server Console 45

How to Create VM images › VMware Server  Can download pre-created VMs from  Many Linux distributions: Ubuntu, Fedora, Red Hat Enterprise, openSUSE, CentOS 46

How to Create VM images › Xen and KVM  Several Linux distributions have GUI or command line tool to create a VM image On Fedora Core, virt-install and virt-manager On OpenSuse, through YaST  Can create a VM from scratch by using dd, mke2fs, and mount –o loop 47

Small VM Images › Damn Small Linux   As small as 6MB › LitePC   Windows 2000 in 150MB  Windows 9x in 40MB 48

Thank You › Any questions? › Several VM-related talks on Wednesday › Discussion: Virtual Machines and Condor  Friday, 11:30-12:15 49