persistence arrives on cloud foundry
TRANSCRIPT
![Page 1: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/1.jpg)
Persistence Arrives on CF
• Paul WarrenEMC Cloud Platform Team
![Page 2: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/2.jpg)
Cloud Platform Team
• Commit on open source, earn votes, steer CF
• Transform EMC by teaching “the way”
![Page 3: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/3.jpg)
Persistence on CF• One of the most popular feature requests
![Page 4: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/4.jpg)
Persistence on CF• One of the most popular feature requests
![Page 5: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/5.jpg)
• One of the most popular feature requests
Persistence on CF
![Page 6: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/6.jpg)
Persistence on CF• One of the most popular feature requests
![Page 7: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/7.jpg)
However…• CloudFoundry
• 12 Factor apps
• Network attached services only
• File systems not allowed
• No ability to lift and shift
• Spring Data
• No uniform handling for BLOBs
![Page 8: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/8.jpg)
Opportunities
• Add volume support to CloudFoundry
• Add BLOB support to Spring Data
![Page 9: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/9.jpg)
Spring Content• Not an official Spring project
• Extensions for Spring-Data that add primitives for handling BLOBs
• Same interface-first approach for unstructured data
• Spring Boot support
• Spring Data REST support
• Extensible Rendition Service
• Supports JPA, Mongo, S3 and Filesystem
• Separating content from metadata is a key characteristic of all CMS
![Page 10: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/10.jpg)
App Walkthrough
![Page 11: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/11.jpg)
Cell
GardenB
BS
Cloud C
ontroller
Architecture
![Page 12: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/12.jpg)
Cell
GardenB
BS
Cloud C
ontroller
Volume Service
Architecture
![Page 13: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/13.jpg)
ArchitectureCell
GardenB
BS
Cloud C
ontroller
Volume Service
![Page 14: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/14.jpg)
ArchitectureCell
VolumeServiceBroker
GardenB
BS
Cloud C
ontroller
Volume Service Broker
![Page 15: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/15.jpg)
ArchitectureCell
Volman
VolumeServiceBroker
GardenB
BS
Cloud C
ontroller
Volume Manager “volman”
![Page 16: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/16.jpg)
Cell
Volman
VolumeServiceBroker
GardenB
BS
Cloud C
ontroller
Architecture
VolumeDriverVolume
DriverVolumeDriver
Volume Drivers
![Page 17: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/17.jpg)
Cell
Volman
VolumeServiceBroker
GardenB
BS
Cloud C
ontroller
Architecture
VolumeDriverVolume
DriverVolumeDriver
Volume Drivers
Docker Volume API
![Page 18: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/18.jpg)
`cf create service`
![Page 19: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/19.jpg)
Cell
Volman
VolumeServiceBroker
GardenB
BS
Cloud C
ontroller
Architecture
cf create-service …
VolumeDriverVolume
DriverVolumeDriver
![Page 20: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/20.jpg)
Cell
Volman
VolumeServiceBroker
GardenB
BS
Cloud C
ontroller
Architecture
cf create-service …
VolumeDriverVolume
DriverVolumeDriver
![Page 21: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/21.jpg)
Cell
Volman
VolumeServiceBroker
GardenB
BS
Cloud C
ontroller
Architecture
cf create-service …
VolumeDriverVolume
DriverVolumeDriver
Creates an instance of a
“service”
![Page 22: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/22.jpg)
`cf bind-service`
![Page 23: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/23.jpg)
Cell
Volman
VolumeServiceBroker
GardenB
BS
Cloud C
ontroller
Architecture
cf bind-service …
VolumeDriverVolume
DriverVolumeDriver
![Page 24: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/24.jpg)
Cell
Volman
VolumeServiceBroker
GardenB
BS
Cloud C
ontroller
Architecture
cf bind-service …
VolumeDriverVolume
DriverVolumeDriver
![Page 25: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/25.jpg)
Cell
Volman
VolumeServiceBroker
GardenB
BS
Cloud C
ontroller
Cell
Architecture
cf bind-service …
VolumeDriverVolume
DriverVolumeDriver
volume_mounts: [{…}]
![Page 26: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/26.jpg)
Cell
Volman
VolumeServiceBroker
GardenB
BS
Cloud C
ontroller
Architecture
cf bind-service …
VolumeDriverVolume
DriverVolumeDriver
volume_mounts: [{…}]
![Page 27: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/27.jpg)
Cell
Volman
VolumeServiceBroker
GardenB
BS
Cloud C
ontroller
Architecture
cf bind-service …
VolumeDriverVolume
DriverVolumeDriver
volume_mounts: [{…}]
![Page 28: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/28.jpg)
Cell
Volman
VolumeServiceBroker
GardenB
BS
Cloud C
ontroller
Cell
Architecture
cf bind-service …
VolumeDriverVolume
DriverVolumeDriver
volume_mounts: [{…}]
![Page 29: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/29.jpg)
Futures• Persistence on CloudFoundry
• Block devices
• Requires “Consistent Scheduling” capability
• `cf push mysql`
• Spring Content
• Separate Spring Data BLOB project
• Make JPA do more sane things!
• Eventing around getting/setting content
• Continue to add CM like features like retention services
![Page 30: Persistence Arrives on Cloud Foundry](https://reader031.vdocuments.us/reader031/viewer/2022030313/58e542281a28ab3a468b495f/html5/thumbnails/30.jpg)
Thanks.• Questions?
github.com/emc-dojo/spring-content
github.com/cloudfoundry-incubator/local-volume-releasegithub.com/emc-dojo/cf-persist-service-broker