Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Implementing "Undo" for Cloud Foundry Service B...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Dr Nic Williams
September 28, 2016
Technology
190
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Implementing "Undo" for Cloud Foundry Service Brokers - CF Summit Frankfurt 2016
Dr Nic Williams
September 28, 2016
More Decks by Dr Nic Williams
See All by Dr Nic Williams
Making URLs look awesome when people share them
drnic
2
190
Cloud Foundry Quarks & Eirini - CFF Webinar 11-2019
drnic
1
460
Creating Cloud Native Buildpacks
drnic
0
230
Deploying First Application to Cloud Foundry
drnic
0
130
Bringing Buildpacks to Kubernetes
drnic
0
250
Distributing Cloud Foundry sidecars with buildpacks
drnic
0
420
Introducing Knative to Small Teams
drnic
2
860
10 ways to create BOSH releases faster
drnic
1
150
BOSH - A year in review 2017/18
drnic
0
220
Other Decks in Technology
See All in Technology
Vue.jsのGitHubから学ぶ意思決定
yut0naga1_fa
1
270
【データ横丁主催】AI エージェント時代のTranslytical Data Platform
shisyu_gaku
0
300
Claude Codeから見る、エンジニアの世界の変容とその先
oikon48
6
4.2k
Agent × Maestro で始める モバイル E2E 端末準備からテスト実行・結果確認まで
sansantech
PRO
0
210
ビジネス部門からPOを迎えての半年間の進歩と課題
zozotech
PRO
0
150
How we choose session proposals
kawaguti
PRO
0
170
「社外イベント=意識高い」の壁を壊せ!元々無関心だった僕らが部内で社外イベントを民主化して15人を連れ出すまで
say_no_w
0
140
AI時代、つくる力を自分たちの手に。 ──電通×KAG、アジャイルとAI駆動開発で挑む開発の変革
yuukiyo
3
390
自宅サーバと脆弱性
masakiokuda
1
110
プロダクトが成長すると、 プロダクトマネージャーの仕事はどう変わるのか - 「まず作る」から「小さく学び、確かめながら進む」へ
sansantech
PRO
1
370
LLM Content Moderationを支える評価・改善ループの実践
suikabar
2
360
野良MCPサーバーを排除せよ!MCPサーバーのガバナンス
yukiogawa
1
240
Featured
See All Featured
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
580
A better future with KSS
kneath
240
18k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
It's Worth the Effort
3n
188
29k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
47k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
31k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
4 Signs Your Business is Dying
shpigford
187
23k
Making Projects Easy
brettharned
120
6.8k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
7k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.7k
Transcript
Dingo PostgreSQL Implementing “Undo” for Cloud Foundry Service Brokers
Justin Carter & Dr Nic Williams
Dingo PostgreSQL Problem
Dingo PostgreSQL Problem
Dingo PostgreSQL Problem
Plan First-class love for databases Implementing “undo” Ǚ No
CF CLI plugin required Example of Dingo PostgreSQL
For the love of databases Cloud Foundry loves developers
For the love of databases Does Cloud Foundry
love DBs?
361 v2 API endpoints For the love of databases
81 v2 services APIs
For the love of databases 51 v3 API endpoints
4 v3 APIs for service bindings
For the love of databases 172 cf commands 31
cf commands for ‘services’
For the love of databases Create service instance
Bind to an application Unbind from an app Delete service instance Ǚ
For the love of databases Dz 0 commands for
listing backups 0 commands for viewing DB logs 0 commands for health/monitoring ǟ 0 commands to “undo” mistakes Ǚ
For the love of databases TCP router is for
apps Diego persistence is for apps Loggregator is app centric CLI plugins decoupled from brokers Lj
Undo How can we offer “undo” to users?
Undo Ŏ “clone-from” parameter
Idea Perform “actions” via parameters
Problem ŏ Broker only receives UUIDs, not “production” provided by
user ŏ Cloud Controller doesn’t remember “production” after delete
Implement broker 1 Receive service instance ID only 3 Look
up service name from CF 2 Continue asynchronously 4 Cache service name independently of CF
CLI to Cloud Controller
Cloud Controller to Broker
Undo Ŏ Able to map “production” to backups
clone-from: production
Space restriction Ȓ Restrict to same space_guid Else complex authorisation
system
“Daily” backups Ɍ Daily backups can be 23+ hours old
… Continuous archiving … PostgreSQL write ahead logs (WAL)
MySQL binary log files MongoDB /dev/null Ǚ
Dingo PostgreSQL Dingo PostgreSQL <insert video of 3D animation>
User Experience User-initiated data recovery Continuous/near-real time archives …
Users expect all data is recoverable ȑ Native CLI experience would be much nicer please
Future Auto-discovery of broker plugin Point in time recovery …
CLI plugins for full experience Lj Operator cleanup of legacy backups Ǎ
Team 30 staff, 6 countries Platform experts Cloud Foundry experts
Dingo PostgreSQL