Slide 1

Slide 1 text

electric-cloud.com #DOES16 Planning For Huge Scale: Designing Your Pipelines for Scalability and Resiliency Avan Mathur | Product Manager [email protected] | @avantika_ec

Slide 2

Slide 2 text

electric-cloud.com #DOES16 What do I Mean by Huge Scale? • A Fortune 5 Bank • Deploying to 140K endpoints • 6000s of applications on-boarded at accelerated pace • Chip Manufacturer • 100K Jobs/Day • Constant load on the system • High job throughput

Slide 3

Slide 3 text

electric-cloud.com #DOES16 Plan Ahead – Know Your End Goal • Estimate and plan for long term scale • Define your success criteria • # of deployments per window • Max duration of a deployment • Number of concurrent deployments • Benchmarking • Validate numbers with benchmarks • Testing real workloads in real environments

Slide 4

Slide 4 text

electric-cloud.com #DOES16 Metrics to Measure • CI Cycle Times • Deployment Frequency and Duration • Concurrent Deployments • Release Frequency

Slide 5

Slide 5 text

electric-cloud.com #DOES16 Focus Areas • Infrastructure • Data • Pipeline Design • Monitoring / feedback loop

Slide 6

Slide 6 text

electric-cloud.com #DOES16 Infrastructure • High Availability • Horizontal Scalability • Distribute load and components • Database sizing and reliability • Understand and plan for bottlenecks and hardware limitations

Slide 7

Slide 7 text

electric-cloud.com #DOES16 Recommended Architecture Commander Server Commander Server Clustered Orchestration Servers Web Server Database Agent Agent Agent Agent Agent Workspace Repository 1 Browser Agent Agent Agent Agent Agent Web Server Site 2 WAN Workspace Repository 2 Browser Web Server Site 3 Repository 3 Site 1 Browser Agent Agent Agent Agent Agent Workspace HA/ HS

Slide 8

Slide 8 text

electric-cloud.com #DOES16 Disaster Recovery Architecture Commander Server Commander Server Clustered Orchestration Servers Web Server Database Agent Agent Agent Agent Agent Workspace Repository 1 DR Site HA/ HS Commander Server Commander Server Clustered Orchestration Servers Web Server Database Agent Agent Agent Agent Agent Workspace Repository 1 Primary Site HA/ HS Disk Replication WAN DB Mirroring

Slide 9

Slide 9 text

electric-cloud.com #DOES16 Managing Data • Each process generates data  Metadata, log files, build & test data, monitors, artifacts … • Understand growth rates and plan accordingly  Different areas to monitor o Database o Filesystem o Artifact Repository • Establish Data Retention & Archiving Policies early

Slide 10

Slide 10 text

electric-cloud.com #DOES16 Pipeline Design: Scaling Across an Organization 1. Plan and monitor for performance at scale at every step 2. Build a generic model to standardize across apps 3. Reusable components that can be used across projects 4. Automated onboarding of new projects 5. Plan and Define Access Controls and Roles early in the process

Slide 11

Slide 11 text

electric-cloud.com #DOES16 Monitoring • Monitor key metrics  Understand patterns  Foresee upcoming peaks in usage  Plan ahead for hardware expansion or distribution • Best Practices  Unobtrusive  Automated  Not only in production  One pane of glass

Slide 12

Slide 12 text

electric-cloud.com #DOES16 Monitoring

Slide 13

Slide 13 text

electric-cloud.com #DOES16 Questions?