{"id":12159,"date":"2018-09-19T16:54:53","date_gmt":"2018-09-19T14:54:53","guid":{"rendered":"https:\/\/blog.zhaw.ch\/icclab\/?p=12159"},"modified":"2019-08-05T15:04:06","modified_gmt":"2019-08-05T13:04:06","slug":"announcing-the-first-open-source-ceph-object-storage-service-broker","status":"publish","type":"post","link":"https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/","title":{"rendered":"Announcing the First Open Source Ceph Object Storage Service Broker"},"content":{"rendered":"\n<p>by Omar Mahdi Kais<\/p>\n\n\n<p>We are happy to announce the public release of the first open source Ceph object storage service broker that is compliant with the Open Service Broker API V2, now available on <a href=\"https:\/\/github.com\/icclab\/ceph-objectstore-broker\" target=\"_blank\" rel=\"noopener noreferrer\">GitHub<\/a>.<\/p>\n<p><!--more--><\/p>\n<p>At the ICCLab, we are building a strong PaaS installation&nbsp;for our staff and students at ZHAW, using the University&#8217;s own cloud infrastructure built on&nbsp;<a href=\"https:\/\/www.openstack.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">OpenStack<\/a>. The core of our Platform is based on&nbsp;<a href=\"https:\/\/www.cloudfoundry.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">Cloud Foundry<\/a>, using&nbsp;<a href=\"https:\/\/bosh.io\/docs\/\" target=\"_blank\" rel=\"noopener noreferrer\">BOSH<\/a>&nbsp;for deployment and management.<\/p>\n<p>To ensure the success of the platform, we want to make a selection of essential services available through the Cloud Foundry Marketplace, providing most of what a cloud application developer might need, including databases, storage solutions and messaging services.<\/p>\n<p>Among these platform services we wanted to provide an object storage service, as its commonly used by developers. Because we are already running a <a href=\"https:\/\/ceph.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">Ceph<\/a> cluster in our local infrastructure, we decided to use that also for our platform&nbsp;object storage service.&nbsp;An additional bonus to using Ceph is the fact that it provides access via both S3 and Swift APIs, which will let developers very easily migrate their applications from another platform.<\/p>\n<p>The next step was to get a service broker that supports the <a href=\"https:\/\/www.openservicebrokerapi.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">Open Service Broker API<\/a> (OSB API) so that it can be registered with Cloud Foundry as a service. However, we were somewhat surprised by the fact that we couldn&#8217;t find any open source, or even publicly available closed source service brokers which provided an object storage service through Ceph.<\/p>\n<p>As such, we decided to develop our own highly available Ceph object storage broker written in Go that conforms to the OSB API and release it in open source.<\/p>\n<p>As of today, the broker is fully documented and available on our <a href=\"https:\/\/github.com\/icclab\/ceph-objectstore-broker\" target=\"_blank\" rel=\"noopener noreferrer\">GitHub page<\/a> and ready for use. The broker provides easy configuration, such that the plans offered and the details about the Ceph cluster backend can easily be changed to suit the needs of the operator. The implementation already supports deployment and registration on <a href=\"https:\/\/www.cloudfoundry.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">Cloud Foundry<\/a>, <a href=\"https:\/\/www.openshift.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">OpenShift<\/a> and <a href=\"https:\/\/kubernetes.io\/\" target=\"_blank\" rel=\"noopener noreferrer\">Kubernetes<\/a>, with support for deploying with BOSH coming soon.<\/p>\n<p>In the near future, we will publish a technical post discussing more about the specifics of how this service broker was developed, so make sure to check back for all the interesting details from setting up a test Ceph cluster to making the broker stateless by offloading its state without&nbsp;requiring any additional data services.<\/p>","protected":false},"excerpt":{"rendered":"<p>by Omar Mahdi Kais We are happy to announce the public release of the first open source Ceph object storage service broker that is compliant with the Open Service Broker API V2, now available on GitHub.<\/p>\n","protected":false},"author":486,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[1,458,20,488],"tags":[],"features":[],"class_list":["post-12159","post","type-post","status-publish","format-standard","hentry","category-allgemein","category-cloudfoundry-articles","category-open-source","category-openshift-articles"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Announcing the First Open Source Ceph Object Storage Service Broker - Service Engineering (ICCLab &amp; SPLab)<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Announcing the First Open Source Ceph Object Storage Service Broker\" \/>\n<meta property=\"og:description\" content=\"by Omar Mahdi Kais We are happy to announce the public release of the first open source Ceph object storage service broker that is compliant with the Open Service Broker API V2, now available on GitHub.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/\" \/>\n<meta property=\"og:site_name\" content=\"Service Engineering (ICCLab &amp; SPLab)\" \/>\n<meta property=\"article:published_time\" content=\"2018-09-19T14:54:53+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-08-05T13:04:06+00:00\" \/>\n<meta name=\"author\" content=\"icclab\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"icclab\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/\"},\"author\":{\"name\":\"icclab\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/045c6bde7e681e689e4fc051d8932563\"},\"headline\":\"Announcing the First Open Source Ceph Object Storage Service Broker\",\"datePublished\":\"2018-09-19T14:54:53+00:00\",\"dateModified\":\"2019-08-05T13:04:06+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/\"},\"wordCount\":423,\"commentCount\":0,\"articleSection\":[\"*.*\",\"CloudFoundry\",\"Open Source\",\"OpenShift\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/\",\"url\":\"https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/\",\"name\":\"Announcing the First Open Source Ceph Object Storage Service Broker - Service Engineering (ICCLab &amp; SPLab)\",\"isPartOf\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#website\"},\"datePublished\":\"2018-09-19T14:54:53+00:00\",\"dateModified\":\"2019-08-05T13:04:06+00:00\",\"author\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/045c6bde7e681e689e4fc051d8932563\"},\"breadcrumb\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Startseite\",\"item\":\"https:\/\/blog.zhaw.ch\/icclab\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Announcing the First Open Source Ceph Object Storage Service Broker\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#website\",\"url\":\"https:\/\/blog.zhaw.ch\/icclab\/\",\"name\":\"Service Engineering (ICCLab &amp; SPLab)\",\"description\":\"A Blog of the ZHAW Zurich University of Applied Sciences\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/blog.zhaw.ch\/icclab\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/045c6bde7e681e689e4fc051d8932563\",\"name\":\"icclab\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/7b13169e03783f50e96b96fa2ff222b9c530d13c3125f077c7c44f729b857a51?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/7b13169e03783f50e96b96fa2ff222b9c530d13c3125f077c7c44f729b857a51?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/7b13169e03783f50e96b96fa2ff222b9c530d13c3125f077c7c44f729b857a51?s=96&d=mm&r=g\",\"caption\":\"icclab\"},\"url\":\"https:\/\/blog.zhaw.ch\/icclab\/author\/icclab\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Announcing the First Open Source Ceph Object Storage Service Broker - Service Engineering (ICCLab &amp; SPLab)","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/","og_locale":"en_US","og_type":"article","og_title":"Announcing the First Open Source Ceph Object Storage Service Broker","og_description":"by Omar Mahdi Kais We are happy to announce the public release of the first open source Ceph object storage service broker that is compliant with the Open Service Broker API V2, now available on GitHub.","og_url":"https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/","og_site_name":"Service Engineering (ICCLab &amp; SPLab)","article_published_time":"2018-09-19T14:54:53+00:00","article_modified_time":"2019-08-05T13:04:06+00:00","author":"icclab","twitter_card":"summary_large_image","twitter_misc":{"Written by":"icclab","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/#article","isPartOf":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/"},"author":{"name":"icclab","@id":"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/045c6bde7e681e689e4fc051d8932563"},"headline":"Announcing the First Open Source Ceph Object Storage Service Broker","datePublished":"2018-09-19T14:54:53+00:00","dateModified":"2019-08-05T13:04:06+00:00","mainEntityOfPage":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/"},"wordCount":423,"commentCount":0,"articleSection":["*.*","CloudFoundry","Open Source","OpenShift"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/","url":"https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/","name":"Announcing the First Open Source Ceph Object Storage Service Broker - Service Engineering (ICCLab &amp; SPLab)","isPartOf":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/#website"},"datePublished":"2018-09-19T14:54:53+00:00","dateModified":"2019-08-05T13:04:06+00:00","author":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/045c6bde7e681e689e4fc051d8932563"},"breadcrumb":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/blog.zhaw.ch\/icclab\/announcing-the-first-open-source-ceph-object-storage-service-broker\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Startseite","item":"https:\/\/blog.zhaw.ch\/icclab\/"},{"@type":"ListItem","position":2,"name":"Announcing the First Open Source Ceph Object Storage Service Broker"}]},{"@type":"WebSite","@id":"https:\/\/blog.zhaw.ch\/icclab\/#website","url":"https:\/\/blog.zhaw.ch\/icclab\/","name":"Service Engineering (ICCLab &amp; SPLab)","description":"A Blog of the ZHAW Zurich University of Applied Sciences","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.zhaw.ch\/icclab\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/045c6bde7e681e689e4fc051d8932563","name":"icclab","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/7b13169e03783f50e96b96fa2ff222b9c530d13c3125f077c7c44f729b857a51?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/7b13169e03783f50e96b96fa2ff222b9c530d13c3125f077c7c44f729b857a51?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/7b13169e03783f50e96b96fa2ff222b9c530d13c3125f077c7c44f729b857a51?s=96&d=mm&r=g","caption":"icclab"},"url":"https:\/\/blog.zhaw.ch\/icclab\/author\/icclab\/"}]}},"_links":{"self":[{"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/posts\/12159","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/users\/486"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/comments?post=12159"}],"version-history":[{"count":22,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/posts\/12159\/revisions"}],"predecessor-version":[{"id":12559,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/posts\/12159\/revisions\/12559"}],"wp:attachment":[{"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/media?parent=12159"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/categories?post=12159"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/tags?post=12159"},{"taxonomy":"features","embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/features?post=12159"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}