JavaCro'14 - Continuous deployment tool – Aleksandar Dostić and Emir Džaferović
Upcoming SlideShare
Loading in...5
×
 

JavaCro'14 - Continuous deployment tool – Aleksandar Dostić and Emir Džaferović

on

  • 856 views

Continuous Integration has improved software development process, while deployment of software often does not get as much attention. In this presentation we describe an approach for efficient cloud ...

Continuous Integration has improved software development process, while deployment of software often does not get as much attention. In this presentation we describe an approach for efficient cloud deployment of highly distributed system which can be quite complex to deal with. DeploymentManager(DM) tool is developed as internal project of Infobip company for managing large number(cca. 250 instances) of internal services in our data centers using automated deployment and controling load balancing software(Apache, HaProxy). With DM tool it is possible to deploy build(jar, war, egg…) on any environment(Windows, Linux) in max 5 minutes, without technical knowledge about deployment process, making Continuous Delivery process fast and simple.

Statistics

Views

Total Views
856
Views on SlideShare
121
Embed Views
735

Actions

Likes
0
Downloads
9
Comments
0

1 Embed 735

http://javacro.org 735

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

JavaCro'14 - Continuous deployment tool – Aleksandar Dostić and Emir Džaferović JavaCro'14 - Continuous deployment tool – Aleksandar Dostić and Emir Džaferović Presentation Transcript

  • Continuous deployment tool www.infobip.com Aleksandar Dostic Emir Dzaferovic
  • Introduction • Software development • Test Driven Development –Unit Testing and Integration Testing • Built goes through compiling and testing phases • Continuous Integration • Data Centers and virtualization
  • CI Environment • Source Code Management (SCM) GIT, TFS, Subversion … • CI Build Server Apache Continuum, Hudson/Jenkins ... • Maven Repository Manager Archiva, Nexus, Artifactory ...
  • CI Environment SCM (Git) CI server (Jenkins) Maven Repository Manager (Atrifactory) ... ... DC Artifactory: Servers: ... DC Artifactory: ... DC Artifactory: Servers: ...... Servers: ... Data Center 1 Data Center 2 Data Center N
  • Manual Deployment Drawbacks • Can be performed only by specialized people, usually engineers • The incorrect versions of software can be shipped • Quick rollback to old versions can be challenging • Complex maintenance of security across servers • Difficult or impossible to track who deployed what, when and where• Difficult or impossible to track who deployed what, when and where
  • Deployment Manager • Internal tool for maintaining high level of service availability • Manage of load balancing in private cloud • Automated deploys on cross-platform environment • Inter service connectivity configurator • Properties file management
  • DEPLOYMENT PROCESS LVS
  • DEPLOYMENT PROCESS (STEP 1) LVS
  • DEPLOYMENT PROCESS (STEP 2) LVS
  • DEPLOYMENT PROCESS (STEP 3) LVS
  • DEPLOYMENT PROCESS (STEP 4) LVS
  • DC Environment ssh ssh Artifactory ssh powershell gateway session session
  • Demo www.infobip.com Demo
  • Main Features •¸Load Balancing: −HAProxy (High Availability Proxy) −Apache Httpd Load Balancer (Apache Module) −MML Load Balancer (internal service) • Operating Systems: −CentOS−CentOS −Windows Server −Windows Failover Cluster
  • Main Features • Service types: −WAR −NodeJS −Java standalone −Python −DotNet−DotNet −Infobip application bundles(internal package format)
  • Main Features • Actions: −Enable/Disable balancer route −Start −Stop −Deploy −Deploy configuration−Deploy configuration −Revert −Edit configuration −View application log files
  • Infobip numbers • 8 Data Centers • 100+ Physical Servers • 250+ Virtual Servers • 98 Applications • 284 Application Instances FrankfurtWashington Zagreb Moscow Lagos Kinshasa • 44 Balancers • 569 Balancer Routes • 100+ Developers • 60+ Deployers
  • Evaluation • 12785 enable/disable routes (every 2.47 minutes) • 1770 Deployments (every 17.89 minutes) • 18 days of deployment (manual 74 days) out of 66 in Q3 284300 848900 37 39 71 150 156 July August September 0 50 100 150 200 250 300 Total savings in July/August/September 2013: ~ 440 hours hoursspent DM Manual 445 447 July August September 0 100 200 300 400 500 600 700 800 An evident increase in the number of deployments in September 2013 # deployments
  • Future steps • Deployment into Amazon Web Services • Smoke test support • JBoss deployment • Live log streaming • Access to server terminal
  • Thank you for your attention. www.infobip.com