Scalability Testing of Kadeploy using Virtual Machines on Grid5000 - - PowerPoint PPT Presentation

scalability testing of kadeploy using virtual machines on
SMART_READER_LITE
LIVE PREVIEW

Scalability Testing of Kadeploy using Virtual Machines on Grid5000 - - PowerPoint PPT Presentation

Scalability Testing of Kadeploy using Virtual Machines on Grid5000 Luc Sarzyniec, S ebastien Badia, Emmanuel Jeanvoine, Lucas Nussbaum Grid5000 Scalability testing of Kadeploy on Grid5000 1 / 10 Scalability Testing of Kadeploy


slide-1
SLIDE 1

Scalability Testing of Kadeploy using Virtual Machines on Grid’5000

Luc Sarzyniec, S´ ebastien Badia, Emmanuel Jeanvoine, Lucas Nussbaum

Grid’5000

Scalability testing of Kadeploy on Grid’5000 1 / 10

slide-2
SLIDE 2

Scalability Testing of Kadeploy using Virtual Machines on Grid’5000

Luc Sarzyniec, S´ ebastien Badia, Emmanuel Jeanvoine, Lucas Nussbaum

Grid’5000

Scalability testing of Kadeploy on Grid’5000 1 / 10

slide-3
SLIDE 3

Kadeploy – OS provisioning for clusters

◮ Used by sysadmins to install/reinstall compute nodes ◮ Designed for scalability

◮ That matters: faster reinstallation shorter downtime

◮ Built on top of PXE, DHCP

, TFTP (or HTTP)

◮ Support of a broad range of systems (Linux, Xen, *BSD, etc.) ◮ Manages catalog of images and user permissions ◮ Open Source (GPL)

http://kadeploy3.gforge.inria.fr/

Scalability testing of Kadeploy on Grid’5000 2 / 10

slide-4
SLIDE 4

Process overview

Kadeploy DHCP TFTP/HTTP

Scalability testing of Kadeploy on Grid’5000 3 / 10

slide-5
SLIDE 5

Process overview

Kadeploy DHCP TFTP/HTTP 1 Kadeploy configures PXE profiles

Scalability testing of Kadeploy on Grid’5000 3 / 10

slide-6
SLIDE 6

Process overview

Kadeploy DHCP TFTP/HTTP (2) triggers reboot using IPMI or SSH 1 Kadeploy configures PXE profiles 2 Kadeploy triggers reboot using IPMI or SSH

Scalability testing of Kadeploy on Grid’5000 3 / 10

slide-7
SLIDE 7

Process overview

Kadeploy DHCP TFTP/HTTP 1 Kadeploy configures PXE profiles 2 Kadeploy triggers reboot using IPMI or SSH 3 Nodes boot to minimal deployment system sent over the network

Scalability testing of Kadeploy on Grid’5000 3 / 10

slide-8
SLIDE 8

Process overview

Kadeploy DHCP TFTP/HTTP 1 Kadeploy configures PXE profiles 2 Kadeploy triggers reboot using IPMI or SSH 3 Nodes boot to minimal deployment system sent over the network 4 Kadeploy configures nodes and sends system image

Scalability testing of Kadeploy on Grid’5000 3 / 10

slide-9
SLIDE 9

Process overview

Kadeploy DHCP TFTP/HTTP 1 Kadeploy configures PXE profiles 2 Kadeploy triggers reboot using IPMI or SSH 3 Nodes boot to minimal deployment system sent over the network 4 Kadeploy configures nodes and sends system image 5 Kadeploy configures PXE profiles again and triggers reboot

Scalability testing of Kadeploy on Grid’5000 3 / 10

slide-10
SLIDE 10

Process overview

Kadeploy DHCP TFTP/HTTP 1 Kadeploy configures PXE profiles 2 Kadeploy triggers reboot using IPMI or SSH 3 Nodes boot to minimal deployment system sent over the network 4 Kadeploy configures nodes and sends system image 5 Kadeploy configures PXE profiles again and triggers reboot 6 Nodes boot to newly installed system

Scalability testing of Kadeploy on Grid’5000 3 / 10

slide-11
SLIDE 11

Scalable remote command execution with Taktuk

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-12
SLIDE 12

Scalable remote command execution with Taktuk

Sequential?

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-13
SLIDE 13

Scalable remote command execution with Taktuk

Sequential?

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-14
SLIDE 14

Scalable remote command execution with Taktuk

Sequential?

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-15
SLIDE 15

Scalable remote command execution with Taktuk

Sequential?

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-16
SLIDE 16

Scalable remote command execution with Taktuk

Sequential?

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-17
SLIDE 17

Scalable remote command execution with Taktuk

Sequential + sliding window (pdsh-like)?

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-18
SLIDE 18

Scalable remote command execution with Taktuk

Sequential + sliding window (pdsh-like)?

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-19
SLIDE 19

Scalable remote command execution with Taktuk

Sequential + sliding window (pdsh-like)?

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-20
SLIDE 20

Scalable remote command execution with Taktuk

Sequential + sliding window (pdsh-like)?

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-21
SLIDE 21

Scalable remote command execution with Taktuk

Sequential + sliding window (pdsh-like)?

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-22
SLIDE 22

Scalable remote command execution with Taktuk

Sequential + sliding window (pdsh-like)?

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-23
SLIDE 23

Scalable remote command execution with Taktuk

Sequential + sliding window (pdsh-like)?

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-24
SLIDE 24

Scalable remote command execution with Taktuk

Sequential + sliding window (pdsh-like)?

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-25
SLIDE 25

Scalable remote command execution with Taktuk

Sequential + sliding window (pdsh-like)?

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-26
SLIDE 26

Scalable remote command execution with Taktuk

Sequential + sliding window (pdsh-like)?

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-27
SLIDE 27

Scalable remote command execution with Taktuk

Sequential + sliding window (pdsh-like)?

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-28
SLIDE 28

Scalable remote command execution with Taktuk

In Kadeploy: Tree-based logarithmic complexity (vs linear)

◮ using TakTuk – http://taktuk.gforge.inria.fr/ ◮ HPDC’2009 paper:

  • B. Claudel, G. Huard and O. Richard.

TakTuk, Adaptive Deployment of Remote Executions.

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-29
SLIDE 29

Scalable remote command execution with Taktuk

In Kadeploy: Tree-based logarithmic complexity (vs linear)

◮ using TakTuk – http://taktuk.gforge.inria.fr/ ◮ HPDC’2009 paper:

  • B. Claudel, G. Huard and O. Richard.

TakTuk, Adaptive Deployment of Remote Executions.

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-30
SLIDE 30

Scalable remote command execution with Taktuk

In Kadeploy: Tree-based logarithmic complexity (vs linear)

◮ using TakTuk – http://taktuk.gforge.inria.fr/ ◮ HPDC’2009 paper:

  • B. Claudel, G. Huard and O. Richard.

TakTuk, Adaptive Deployment of Remote Executions.

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-31
SLIDE 31

Scalable remote command execution with Taktuk

In Kadeploy: Tree-based logarithmic complexity (vs linear)

◮ using TakTuk – http://taktuk.gforge.inria.fr/ ◮ HPDC’2009 paper:

  • B. Claudel, G. Huard and O. Richard.

TakTuk, Adaptive Deployment of Remote Executions.

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-32
SLIDE 32

Scalable remote command execution with Taktuk

In Kadeploy: Tree-based logarithmic complexity (vs linear)

◮ using TakTuk – http://taktuk.gforge.inria.fr/ ◮ HPDC’2009 paper:

  • B. Claudel, G. Huard and O. Richard.

TakTuk, Adaptive Deployment of Remote Executions.

Scalability testing of Kadeploy on Grid’5000 4 / 10

slide-33
SLIDE 33

Broadcast of system images

images server

Scalability testing of Kadeploy on Grid’5000 5 / 10

slide-34
SLIDE 34

Broadcast of system images

images server

Send from server node to every client?

Scalability testing of Kadeploy on Grid’5000 5 / 10

slide-35
SLIDE 35

Broadcast of system images

images server

Send from server node to every client?

Scalability testing of Kadeploy on Grid’5000 5 / 10

slide-36
SLIDE 36

Broadcast of system images

images server

Use P2P?

Scalability testing of Kadeploy on Grid’5000 5 / 10

slide-37
SLIDE 37

Broadcast of system images

images server

Use P2P?

Scalability testing of Kadeploy on Grid’5000 5 / 10

slide-38
SLIDE 38

Broadcast of system images

images server

In Kadeploy: Topology-aware chained broadcast

◮ Limiting factor: backplane bandwidth of switches

Scalability testing of Kadeploy on Grid’5000 5 / 10

slide-39
SLIDE 39

Testing the scalability of Kadeploy

◮ Rather specific requirements

◮ Many reinstallable nodes (infrastructure + deployed nodes) ◮ DHCP server Scalability testing of Kadeploy on Grid’5000 6 / 10

slide-40
SLIDE 40

Testing the scalability of Kadeploy

◮ Rather specific requirements

◮ Many reinstallable nodes (infrastructure + deployed nodes) ◮ DHCP server

◮ Testbed: Grid’5000 - http://www.grid5000.fr/

◮ Testbed for research on distributed systems:

HPC, Grids, P2P , Cloud

◮ 10 sites, 25 clusters, 1300 nodes, 7400 cores ◮ Unique features including: ◮ Hardware-as-a-Service Cloud: redeployment of OS on the

bare metal by users (using Kadeploy)

◮ Dedicated backbone network ◮ KaVLAN: network isolation Scalability testing of Kadeploy on Grid’5000 6 / 10

slide-41
SLIDE 41

Testing the scalability of Kadeploy

◮ Rather specific requirements

◮ Many reinstallable nodes (infrastructure + deployed nodes) ◮ DHCP server

◮ Testbed: Grid’5000 - http://www.grid5000.fr/

◮ Testbed for research on distributed systems:

HPC, Grids, P2P , Cloud

◮ 10 sites, 25 clusters, 1300 nodes, 7400 cores ◮ Unique features including: ◮ Hardware-as-a-Service Cloud: redeployment of OS on the

bare metal by users (using Kadeploy)

◮ Dedicated backbone network ◮ KaVLAN: network isolation

◮ Still not enough nodes virtual machines (KVM) on all nodes

Scalability testing of Kadeploy on Grid’5000 6 / 10

slide-42
SLIDE 42

800 km Isolated L2 network Bordeaux Grenoble Lille (P: 60, V: 428) Luxembourg Lyon Nancy

(P: 336, V: 2160)

Reims Rennes

(P: 102, V: 790)

Sophia

(P: 137, V: 661)

Toulouse

3-18 VM per node Totals: Physical: 635 Virtual: 3999

Scalability testing of Kadeploy on Grid’5000 7 / 10

slide-43
SLIDE 43

Experimental process (fully automated)

1 Virtual testbed preparation

◮ Reserve and reinstall all nodes 20 mins ◮ Prepare 33 infrastructure nodes and 635 VM-hosting nodes;

configure everything; start virtual machines 20 mins

2 One or more Kadeploy runs

◮ e.g. 3999 virtual nodes (3838 successful) 57 mins ◮ Hotspots: ◮ First reboot: 11 mins ◮ Broadcast: 15 mins ◮ Second reboot: 7 mins Scalability testing of Kadeploy on Grid’5000 8 / 10

slide-44
SLIDE 44

Limits to scalability and future work

Two major limiting factors:

◮ Nodes reboot

◮ Relies on unreliable protocols: DHCP

, TFTP (HTTP if iPXE)

◮ Mitigated in Kadeploy by using reboot windows

◮ Remote command execution and broadcast of system image

◮ Heavily stresses the network ARP and TCP timeouts ◮ Dynamic TakTuk tree more ARP needed ◮ Large Cloud infrastructures use per-rack L2 networks ◮ Future work: ◮ Robustify ARP and TCP (iPXE+kernel tuning) ◮ Improve fault tolerance of image broadcast ◮ Infiniband support Scalability testing of Kadeploy on Grid’5000 9 / 10

slide-45
SLIDE 45

Conclusions

◮ Tested the scalability of the Kadeploy OS provisioning solution

◮ Critical service in cluster environments

◮ Configured a Cloud of KVM virtual machines:

◮ Using our own VM management scripts ◮ Of 3999 virtual machines ◮ On 668 physical machines ◮ From 4 sites of the Grid’5000 testbed ◮ In a L2 network spanning 1000 km

◮ Reinstalled those virtual machines using Kadeploy

< 1 hour for 3838 machines successfully installed

◮ Fully automated process; no special Grid’5000 privileges required ◮ Identified several bottlenecks and ideas for future work

Scalability testing of Kadeploy on Grid’5000 10 / 10