43
A High Performance, High Reliability Perforce Server Shiv Sikand, IC Manage Marc Lewert, Angela Thomas, TiVo

A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

A High Performance, High Reliability Perforce Server

Shiv Sikand, IC ManageMarc Lewert, Angela Thomas, TiVo

Page 2: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Advanced Perforce SolutionsSemiconductor design companies

Design tool plug-ins Cadence, Synopsys, Mentor, Magma

Enterprise SolutionsHigh Performance ServersSync EngineCaching Accelerator

Page 3: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Loss of interactive performanceUser complaintsBuild system slowdown

Long checkpoint timesLong verify times

Page 4: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Server demandsLarge number of build clients running ‘sync’ every 15 minutes

Complex build systemLarge file counts, complex mappings

Page 5: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Server EnvironmentSun 420RHitachi 9200 Storage ArrayVeritas VXFSRAID5Storage Area Network

Page 6: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Uptime issuesServer hardware failuresVXFS problems

Page 7: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

SAN AdvantagesProtect against hardware failures

Decoupled storageEasy storage scalabilityConsolidated backup and disaster recovery for all data

Page 8: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

SAN DisadvantagesIncreased latency

Hardware wiresKernel & I/O subsystem distance to disk drives

Software wiresNetwork and switching protocols

Page 9: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Performance ConsiderationsLarge DB’s are disk seek limitedRandom and Sequential I/O performance is key

SAN’s can turn sequential I/O into random I/O

Page 10: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

IC Manage SolutionHigh performance, high availability serverSync Engine

Page 11: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

IC Manage ServersLinux

Low cost x86 hardwareDirect attached disksHigh MTBFHigh performance kernelsAsynchronous directory updatesNext generation XFS filesystem

Journalled, RAID optimized, scalable

Page 12: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Direct Attach ArraysPros

PerformanceEase of use

Monitoring utilities, configurable RAID levelsLogical volume managementWeb based management interfaces

Page 13: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Direct Attach ArraysCons

System failures can result in long downtimes

Motherboard, controllers, network interfaces

Page 14: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Linux High AvailabilityDual hosts with failover

“heartbeat” packageSerial pulseEthernet pulseIP address takeoverService stop/start

Page 15: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Linux High AvailabilityDual active-active controllers

RAID10 volumeRedundant power

Page 16: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Linux High AvailabilityPerformance and reliability are always tradeoffs

Active-active controllers offer less performance than single controllers

Page 17: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Sync EngineDesigned for Automated Syncing

Avoid interval based syncsEliminate continual db lookupsPrevent excessive read locksPrevent write starvation

Use 2003.2 sync optimisation automaticallyp4 sync @lastchange,@current

No need to modify build system

Page 18: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Method of operationMySQL based

QT GUI front endRegister whole clients or viewsTwo operating modes

ActiveAutomated scheduling

ManagedQuery based

Page 19: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Method of operationMonitor change counter

Parse change descriptions and match against registered mappings

Multi-threaded schedulerRSH or SSH based execution

Hosts or groupsStore change number on success

‘p4 sync [spec] @c1,@c2’

Page 20: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

TiVo Data AnalysisAngela Thomas

Page 21: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

FigureOldServer

Page 22: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management
Page 23: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management
Page 24: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management
Page 25: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management
Page 26: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management
Page 27: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management
Page 28: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management
Page 29: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management
Page 30: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management
Page 31: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Command execution time

0

2

4

6

8

10

12

14

16

describe dirs filelog fstat have changes

time Old

New

Page 32: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Command execution time

0

1

2

3

4

5

6

edit open opened reopen add delete

time Pre

Post

Page 33: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Command execution times

0

1

2

3

4

5

6

7

8

diff2 integ revert review reviews

time Pre

Post

Page 34: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Command execution times

0

2000

4000

6000

8000

10000

12000

14000

Pre Post

time

verify

Page 35: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management
Page 36: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Enterprise Storage Requirements

Data consolidation from multiple sitesNetwork storage

99.999%, 24x7 AvailabilityBackup, archiving, disaster recoveryScalability

Page 37: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Caching AcceleratorBlock diagram

Enterprise Storage

Disk Cache

Server

Fader

Replicator

Page 38: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Replicatorp4jrep based

Change drivenNear real time replication of both db and archive files

Supports scp, rcp or rsync

Page 39: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

FaderFades “old” data

Two modesRemoves from local storageUses link replacement to replica

Custom p4 client/api classTraps librarian errors and signals fader for recoveryRetries failed operation

Page 40: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

ConclusionIC Manage high performance servers

Demonstrate significant performance advantagesOffer high availability

Page 41: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

ConclusionSync Engine

Scalable alternative to interval based syncingSuit complex build environments

Page 42: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

ConclusionCaching Accelerator

Best of both worlds for enterprisesPerformance and Reliability

Page 43: A High Performance, High Reliability Perforce Server...zPros zPerformance zEase of use zMonitoring utilities, configurable RAID levels zLogical volume management zWeb based management

Thank you !