Download - Extending Cloud Foundry - London CF User Group Sept 2014.pptx

Transcript
Page 1: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco ConfidentialCisco Confidential

© 2013 Cisco and/or its affiliates. All rights reserved.

Extending Cloud Foundry withOpen Source toys

Troy Astle Matt JohnsonCisco UK Cisco UK@buggalo @mattdashj

©Cisco System 2014 - This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.

Page 2: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential

© 2014 Cisco. Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

Who are we?Cisco

Cloud Security Engineers

Unholy dev/ops combo

©Cisco System 2014 - This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.

Page 3: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential

© 2014 Cisco. Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

Why are we using Cloud Foundry?

We needed better tools

Consistent dev, test & prod environments

Custom built tooling outdated

Speed up development

©Cisco System 2014 - This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.

Page 4: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential

© 2014 Cisco. Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

Starting out with Cloud Foundry

Trial and Error

Learning by debugging

“Borrowing” chunks of BOSH yaml.

Manually building and verifying CF deployments

©Cisco System 2014 - This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.

Page 5: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential

“I’ve got a running CloudFoundry system, and if you’ve ever tried to run CloudFoundry and BOSH, you may never have got to this point…”

Dr Nic Williams, CEO Stark & Wayne, CF Platform 2013

Page 6: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential

© 2014 Cisco. Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

The BOSH learning curve

Day 1: Why do I need BOSH?

Day 2: I don’t want to learn BOSH

Day 10: BOSH actually works...

Day 12: BOSH is Cool

Day 30: BOSH is Awesome

Day 50: I got to get me some more BOSH

©Cisco System 2014 - This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.

Page 7: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential

BOSH Deployed successfully...But does it work?

Page 8: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential

© 2014 Cisco. Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

We needed to reliably upgrade and test Cloud Foundry

Deploy, Test and Upgrade CF using Jenkins & BOSH

Separate CF manifest from environment manifest, merge with Spiff

Create new deployments using the same CF manifest, guarantee consistency

Project named C3CIJoint work between Cisco and CloudCredoAvailable on Github

©Cisco System 2014 - This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.

Page 9: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential

© 2014 Cisco. Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

Abundance of CF Tests Available

Several Cloud Foundry test suites already available online

Older:

● YETI

● NYET

Newer:

● Smoke Tests

● CATS

We used the NYET and Smoke tests as they were the most reliable

©Cisco System 2014 - This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.

Page 10: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco ConfidentialCisco Confidential

© 2013 Cisco and/or its affiliates. All rights reserved.

BOSH + Jenkins + Spiff + NYET + Smoke = CF

C3CI JenkinsBOSH Release

Base CFmanifest

Environment specific manifest

CF BOSH Release

©Cisco System 2014 - This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.

Page 11: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco ConfidentialCisco Confidential

© 2013 Cisco and/or its affiliates. All rights reserved.

Page 12: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco ConfidentialCisco Confidential

© 2013 Cisco and/or its affiliates. All rights reserved.

Consistency without development lockdown

Environment specific manifest

Prod Branch - Consistent base manifestOnly Environment specifics change

Dev Branch A Dev Branch B Dev Branch X

Branch allows development and testing of anypart of the deployment manifest

Base CF manifest

©Cisco System 2014 - This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.

Page 13: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential

Like an engine… Only with more moving parts

Page 14: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco ConfidentialCisco Confidential

© 2013 Cisco and/or its affiliates. All rights reserved.

We needed to know what was going on insideCloud Foundry…

Without spending the evening with Wireshark.

Page 15: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential

© 2014 Cisco. Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

Requirements

Monitor & graph the vitals of Cloud Foundry VMs deployed with BOSH.

Alert if a part of Cloud Foundry is degraded or offline.

Integrate with the tools used to monitor our other VMs.

- ELK

- Puppet-deployed Services

©Cisco System 2014 - This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.

Page 16: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco ConfidentialCisco Confidential

© 2013 Cisco and/or its affiliates. All rights reserved.

Enter Sensu!

©Cisco System 2014 - This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.

Subscription

Checks

Control Queue

(Per Subscription)

Results Queue

(Shared)

Handlers

TCP3030

Page 17: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential

© 2014 Cisco. Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

“What! no Nagios?”

Scalability

Dynamic Provisioning / Registration

Resilience

Extensibility

!(Nagios Love)

©Cisco System 2014 - This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.

Page 18: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco ConfidentialCisco Confidential

© 2013 Cisco and/or its affiliates. All rights reserved.

Monitoring Cloud Foundry with Sensu

Sensu Client Job

CollectD Job

Cloud Foundry Job(s)

©Cisco System 2014 - This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.

Individual VMs

Page 19: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco ConfidentialCisco Confidential

© 2013 Cisco and/or its affiliates. All rights reserved.

Page 20: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco ConfidentialCisco Confidential

© 2013 Cisco and/or its affiliates. All rights reserved.

Page 21: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco Confidential

© 2014 Cisco. Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

How the Sensu BOSH release works

Sensu Client BOSH release deployed along with CF-Release

Sensu Client, CollectD and Nagios checks installed on all BOSH VMs

Sensu checks and CollectD metrics pushed to Sensu Server over RabbitMQ

Small Python application runs as a Sensu Check to report Monit job health

Uchiwa GUI is used to display Sensu Alerts

Sensu routes metric data to Graphite for Graphing

©Cisco System 2014 - This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.

Page 22: Extending Cloud Foundry - London CF User Group Sept 2014.pptx

© 2013 Cisco and/or its affiliates. All rights reserved.

Cisco ConfidentialCisco Confidential

© 2013 Cisco and/or its affiliates. All rights reserved.

Thanks for having us

Troy Astle@buggalo

github.com/FreightTrain/C3CIgithub.com/FreightTrain/sensu-client-boshrelease

©Cisco System 2014 - This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.

Matt Johnson@mattdashj