London Community Summit - Chef at SkyBet
-
Upload
chef -
Category
Technology
-
view
256 -
download
0
Transcript of London Community Summit - Chef at SkyBet
![Page 1: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/1.jpg)
Chef at Sky Betting and Gaming
![Page 2: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/2.jpg)
![Page 3: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/3.jpg)
Tooling for our developers to get apps in front of customers+ supporting services
Chef toolchain is central
Platform ServicesGavin Harris - Engineering Manager
![Page 4: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/4.jpg)
Platform ServicesGavin Harris - Engineering Manager
Started as a project team, “fixing disaster recovery”
• Introduced Chef configuration management
• Created Chef configuration for all the things
• Focused on providing tools and patterns
![Page 5: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/5.jpg)
Scaling Agile at Spotify - Oct 2012
![Page 6: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/6.jpg)
Richard Dinesh Nelson Gilfoyle Carla
Meet the Team!
Russ
![Page 7: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/7.jpg)
![Page 8: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/8.jpg)
![Page 9: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/9.jpg)
Application Code (PHP, NodeJS,
React, Java)
![Page 10: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/10.jpg)
Publish
Application Code (PHP, NodeJS,
React, Java)
![Page 11: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/11.jpg)
Publish
Applications
Application Code (PHP, NodeJS,
React, Java)
Release
![Page 12: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/12.jpg)
Application Code (PHP, NodeJS,
React, Java)
Publish
Applications
Infrastructure Code (Chef, Ruby,
ServerSpec)
Release
![Page 13: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/13.jpg)
Publish
Applications
Infrastructure Code (Chef, Ruby,
ServerSpec)
Publish
Application Code (PHP, NodeJS,
React, Java)
Release
![Page 14: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/14.jpg)
Publish
Applications
Infrastructure Code (Chef, Ruby,
ServerSpec)
Publish
Application Code (PHP, NodeJS,
React, Java)
Release
Configuration
Orchestra
tio
n
![Page 15: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/15.jpg)
(Usually) In “Test”
![Page 16: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/16.jpg)
Publish
Applications
Infrastructure Code (Chef, Ruby,
ServerSpec)
Publish
Application Code (PHP, NodeJS,
React, Java)
Release
Configuration
Orchestra
tio
n
Integration/Test
![Page 17: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/17.jpg)
Publish
Applications
Infrastructure Code (Chef, Ruby,
ServerSpec)
Publish
Application Code (PHP, NodeJS,
React, Java)
Release
Configuration
Orchestra
tio
n
Integration/Test
![Page 18: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/18.jpg)
Publish
Applications
Infrastructure Code (Chef, Ruby,
ServerSpec)
Publish
Application Code (PHP, NodeJS,
React, Java)
Release
Configuration
Orchestra
tio
n
Long cycle time!
Integration/Test
![Page 19: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/19.jpg)
Dev Ops
Publish
Applications
Infrastructure Code (Chef, Ruby,
ServerSpec)
Publish
Application Code (PHP, NodeJS,
React, Java)
Release
Configuration
Orchestra
tio
n
Integration/Test
![Page 20: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/20.jpg)
![Page 21: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/21.jpg)
Orchestra
tion
Application + Config
Build
JenkinsPublis
h
Cookbook (sbg_myapp)
• Infrastructure Code (Chef, Inspec, Custom Resources)•Application Code (PHP, NodeJS, Java)•CI Pipeline (Jenkins Pipeline, Chef)• Integration Tests (Kitchen, Chef)
![Page 22: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/22.jpg)
sbg_myapp::build
Build JenkinsfileRelease Jenkinsfile
.kitchen.yml kitchen-docker
![Page 23: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/23.jpg)
![Page 24: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/24.jpg)
pscliThe ‘Glue’
• Internal Tool• Written in Go• Uses Docker• Pulls in images containing tools• Executes tools in these containers
• ChefDK• Terraform• Packer• AWS Authentication• Hashicorp Vault• Code Generation
![Page 25: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/25.jpg)
pscli kitchen converge
Git--volumes-from /git
{command runner}
Kitchen Suite A
Kitchen Suite B
/opt/chefdk
ChefDK--volumes-from
Docker Registry
![Page 26: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/26.jpg)
pscli generate cookbook myapp
Git--volumes-from /git
/opt/chefdk
ChefDK--volumes-from
Docker Registry
Code Generator--volumes-from /generator
{command runner} ~/workspace/myapp
![Page 27: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/27.jpg)
pscli terraform apply
/opt/terraform
Terraform--volumes-from
Docker Registry
{command runner}
![Page 28: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/28.jpg)
Questions?
http://engineering.skybettingandgaming.com
![Page 29: London Community Summit - Chef at SkyBet](https://reader036.fdocuments.us/reader036/viewer/2022070516/5871c20a1a28ab55058b6cbb/html5/thumbnails/29.jpg)