Date post: | 12-Apr-2017 |
Category: |
Software |
Upload: | devops-enterprise-summit |
View: | 489 times |
Download: | 0 times |
Faster Builds and Tests with Electric AcceleratorEliminate the WaitSteve Bower, IT Solutions Architect, Cisco [email protected] October 20, 2015
Vaxes™! (Vaxen?)
Ultrix™!
Do You Remember…
Five of them!
A Big Environment
Touch each one
(remember rlogin?)
Systems Administration
Let’s use rsh
Start Automating
#!/bin/shHOSTS=“vax1 vax2 vax3 vax5”for h in $HOSTS ; do echo Running on $h rsh $h “$@”done
VAXstations™…
DECstations™…
Then what?
mrsh – “Multiple” rsh
Parallelize!
mrsh
rsh host1 command
rsh host2
command
rsh host3 command
mrsh vax1,vax2,vax3,vax5 uptime
mrsh ./hostlist grep ERROR /var/adm/syslog
Also: mrcpmrcp ./hostlist /etc/hosts.equiv /etc
For example…
Dozens of systems
A couple hundred systems
More growth
Welcome to Cisco
mrsh, mrcpNow in Perl
Re-implement
More Growth…
Systems Parallelism1,000 20-507,500 100-30020,000 1000+
From Sun serversto Linux
Linux Development Service
Aurora Project
Fuels the growth!
Moving to Virtual Machines
On-demand development VMsAutomatic integrationFlexible storage (/nobackup)
Aurora Features
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
Flexible environmentIncreased densityReduced footprintFaster performance
Aurora Benefits
Need for speed…
VM Performance
Emake build times
Emake’s Little Brother
electrify
mrsh -> mssh -> mdo
mdo –c8 big* -- gzip
echo big* | xargs –n1 –P8 gzip
Use case
mdo
gzip gzip gzip
electrify --electrify-remote=gzip sh –c “mdo –c32 big* -- gzip”
Adding Electrify
How it looks…
mdo
gzip
Build Cloud Node
electrifygzip
gzip
Build Cloud Node
gzip
electrify --emake-electrify=none sh –c “mdo –c32 big* --
electrify_proxy gzip”
Adding Electrify_proxy
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
How it really looks (DANGER!)
mdo
gzip
Build Cloud Node
electrify
gzip
gzip
Build Cloud Node
gzip
electrify_proxy1
23
Firmware analysis200 checksParallel but local, 2+ hours
Real-world Case 1
Use the cluster
mdo
gzip
Build Cloud Node
electrifygzip
gzip
Build Cloud Node
gzip
electrify_proxy
electrify_proxy
electrify_proxy
electrify_proxy
2+ hours -> 20 minutes
Results
500 checksAdjustable parallelism
Future directions
ASIC simulationUK
Real-world Case 2
No new infrastructure required
$$$$
Results…
IOS-XR“Jam” build tool
Real-world Case 3
ejamelectrifyjamejam_proxyelectrify_proxy
Jam and electrify components
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
50-60% time savings
2 - 2.5x
Results…
Faster Builds and Tests with Electric AcceleratorEliminate the WaitSteve Bower, IT Solutions Architect, Cisco [email protected] October 20, 2015