+ All Categories
Home > Software > Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

Date post: 12-Apr-2017
Category:
Upload: devops-enterprise-summit
View: 489 times
Download: 0 times
Share this document with a friend
39
Faster Builds and Tests with Electric Accelerator Eliminate the Wait Steve Bower, IT Solutions Architect, Cisco Systems [email protected] October 20, 2015
Transcript
Page 1: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

Faster Builds and Tests with Electric AcceleratorEliminate the WaitSteve Bower, IT Solutions Architect, Cisco [email protected] October 20, 2015

Page 2: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

Vaxes™! (Vaxen?)

Ultrix™!

Do You Remember…

Page 3: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

Five of them!

A Big Environment

Page 4: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

Touch each one

(remember rlogin?)

Systems Administration

Page 5: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

Let’s use rsh

Start Automating

#!/bin/shHOSTS=“vax1 vax2 vax3 vax5”for h in $HOSTS ; do echo Running on $h rsh $h “$@”done

Page 6: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

VAXstations™…

DECstations™…

Then what?

Page 7: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

mrsh – “Multiple” rsh

Parallelize!

mrsh

rsh host1 command

rsh host2

command

rsh host3 command

Page 8: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

mrsh vax1,vax2,vax3,vax5 uptime

mrsh ./hostlist grep ERROR /var/adm/syslog

Also: mrcpmrcp ./hostlist /etc/hosts.equiv /etc

For example…

Page 9: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

Dozens of systems

A couple hundred systems

More growth

Page 10: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator
Page 11: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

Welcome to Cisco

Page 12: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

mrsh, mrcpNow in Perl

Re-implement

Page 13: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

More Growth…

Systems Parallelism1,000 20-507,500 100-30020,000 1000+

Page 14: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

From Sun serversto Linux

Linux Development Service

Page 15: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

Aurora Project

Fuels the growth!

Moving to Virtual Machines

Page 16: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

On-demand development VMsAutomatic integrationFlexible storage (/nobackup)

Aurora Features

Page 17: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

Aurora Service Architecture

Start Developing

Request System

ConfigMgmt

db

Cisco Workplace

Portal Web UI

Virtual Development

System

Cisco Unified Computing System(UCS) Virtual Infrastructure

Storage

Cisco OrchestrationManagement

Page 18: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

Flexible environmentIncreased densityReduced footprintFaster performance

Aurora Benefits

Page 19: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

Need for speed…

VM Performance

Page 20: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

Emake build times

Page 21: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

Emake’s Little Brother

electrify

Page 22: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

mrsh -> mssh -> mdo

mdo –c8 big* -- gzip

echo big* | xargs –n1 –P8 gzip

Use case

mdo

gzip gzip gzip

Page 23: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

electrify --electrify-remote=gzip sh –c “mdo –c32 big* -- gzip”

Adding Electrify

Page 24: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

How it looks…

mdo

gzip

Build Cloud Node

electrifygzip

gzip

Build Cloud Node

gzip

Page 25: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

electrify --emake-electrify=none sh –c “mdo –c32 big* --

electrify_proxy gzip”

Adding Electrify_proxy

Page 26: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

How it looks with electrify_proxy

mdo

gzip

Build Cloud Node

electrifygzip

gzip

Build Cloud Node

gzip

electrify_proxy

electrify_proxy

electrify_proxy

electrify_proxy

Page 27: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

How it really looks (DANGER!)

mdo

gzip

Build Cloud Node

electrify

gzip

gzip

Build Cloud Node

gzip

electrify_proxy1

23

Page 28: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

Firmware analysis200 checksParallel but local, 2+ hours

Real-world Case 1

Page 29: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

Use the cluster

mdo

gzip

Build Cloud Node

electrifygzip

gzip

Build Cloud Node

gzip

electrify_proxy

electrify_proxy

electrify_proxy

electrify_proxy

Page 30: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

2+ hours -> 20 minutes

Results

Page 31: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

500 checksAdjustable parallelism

Future directions

Page 32: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

ASIC simulationUK

Real-world Case 2

Page 33: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

No new infrastructure required

$$$$

Results…

Page 34: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

IOS-XR“Jam” build tool

Real-world Case 3

Page 35: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

ejamelectrifyjamejam_proxyelectrify_proxy

Jam and electrify components

Page 36: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

ejam diagram

jam

job

ejam

ejam_proxy

Build Cloud Node

electrify

electrify_proxy

jobejam_proxy electrify_

proxy

ejam_proxy electrify_proxy

ejam_proxy electrify_proxy

job

Build Cloud Node

job

Page 37: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

50-60% time savings

2 - 2.5x

Results…

Page 38: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

Faster Builds and Tests with Electric AcceleratorEliminate the WaitSteve Bower, IT Solutions Architect, Cisco [email protected] October 20, 2015

Page 39: Cisco - Steve Bower - Faster Builds and Tests with ElectricAccelerator

Recommended