Your SlideShare is downloading. ×
Using Service Oriented Operation and Provisioning at Financial Times
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Using Service Oriented Operation and Provisioning at Financial Times

1,559
views

Published on


0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,559
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Using Service Oriented Operation and Provisioning at Financial Times Emeka Mosanya emeka@mosanya.net @EmekaMosanya
  • 2. In case you didnt know...“The Financial Times (FT) is one of the world’sleading business news and information organisations,recognised internationally for its authority, integrityand accuracy." … it is also one of the few newspapers making money with online subscription!
  • 3. Our goal: Reduce Cycle Time Up to 6 weeks for a releaseBusiness CustomersIdea We need to make this shorter! We want to release several time a day without stress...
  • 4. Problem: Long Feedback LoopWorkstation CI QA INT STAGING PROD $ $$$ ●No environment like PROD ●Manual Configuration ●Not enough environments Each deployment to PROD is an adventure...
  • 5. Problem: Organizational Frictions Release Management Network Create Machine ●Dilution of Responsibility Too Many ●Misalignment of Priority Gates!
  • 6. Our Vision Release Network Create VM Replace gatesLocally / VMWare / AWS / ... with automation
  • 7. Deploy Services into Domains membership.test.cloud.ft.comcontroller-service-1.0.0access-service-2.3.5gateway-service-1.2.3Service Definition = Puppet DomainModules and More
  • 8. Service Definition = Puppet Modulesaccess-service-2.3.5 RPM access httpd nagios Nodes Config tomcat splunk Application Versioned Module library Each service exists in its own Puppet environmentEverything you need to install a service is encapsulated in asingle versioned artifact excepted global configuration.
  • 9. Puppet Master is part of a Service membership.test.cloud.ft.com controller-service-1.0.0 Puppet DNS1 Nagios Master DNS2 ●One Puppet Mater per Domain ●Contains “Mandatory” serversNo Sacred Cow!… but we need a bootstrap
  • 10. Bootstrap We start with vanilla VM including a Base RPMftppm101-lvpr-uk-t ftcloud init standalone controller-puppet.membership.test.cloud.ft.com controller-service-1.0.0 access-service-2.3.5 Base RPM gateway-1.2.3ftaps104-lvpr-uk-t ftcloud init client access-app.membership.test.cloud.ft.com ftppm101-lvpr-uk-t Base RPM From vanilla VM to a running environment in a few shell commands...
  • 11. Thin Integration with Infrastructurecontroller-service-1.0.0 Automatic during build Vagrantfileaccess-service-2.3.5 OVFgateway-service-1.2.3 AWS Cloud Formation
  • 12. Module Path● /etc/puppet/services modulepath: RPM ● controller/ /etc/puppet/service/ – controller $environment – httpd – tomcat – … RPM ● access/ – access – Tomcat – ...
  • 13. Deploy Services into Domains (2) membership.test.cloud.ft.comcontroller-service-1.0.0 Puppet Masteraccess-service-2.3.5gateway-service-1.2.3
  • 14. Service Definition (2)access-service-2.3.5 RPM access httpd nagios Nodes Config tomcat splunk Application Versioned Module library What about Nodes and Config?
  • 15. We dont use ENCService Definitions should contain everything weneed to deploy a service... so node definitioncannot be external! ftaps123-lvpr-uk-p ENC Meaningful name in DNS ●class A access-app-01 ●class B Node files defined at service level
  • 16. Configuration with HieraSlight customization of the YAML backend touse multiple configuration directories. Facters: Certname Domain Datacenter Country Environment (Dev, Test, Prod) Domain Level Service Level Global Config
  • 17. Global Configuration Install membership.test.cloud.ft.comglobal-config-1.3.4 RPM Puppet MasterGlobal Config: Company WideService Config: per serviceLocal Config: for override Domain
  • 18. Thats all Folks● Reducing bottlenecks: ● Everything is a service ● Team fully control service deployment ● No sacred cow: Puppet Master is a service● Reducing Risk ● Everything is versioned ● Automatic deployment is the same everywhere ● Responsibilities well defined
  • 19. FT is recruiting The Team @FTcareers"Jussi Heinonen" <jussi.heinonen@ft.com>"Peter Hehn" <peter.hehn@ft.com>"Pete Houghton" <pete.houghton@ft.com>"Chris Malins" <chris.malins@ft.com>"Nick Haddock" <nick.haddock@ft.com>"Ashley de Souza" <ashley.de.souza@ft.com>"David Reay" <David.Reay@ft.com>"Richard Moran" <richard.moran@ft.com>"Santanu Das" <santanu.das@ft.com>"Barry Ridout" <barry.ridout@ft.com>"Sujith Santhan" <sujith.santhan@ft.com>
  • 20. Questions ?