Skip to main content

Ubiquity: Extensible Persistence as a Service for Heterogeneous Container-Based Frameworks

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 10573))

Abstract

Over the last few years, micro-services are becoming the dominant architectural approach in designing software applications environments. This new paradigm is based on developing small, independently deployable services communicating using lightweight mechanisms and being consumed by other services or end user applications. Containers have proven to be a convenient runtime platform with container frameworks enabling elastic horizontal scaling if container workloads are designed as so-called 12 factor applications (https://12factor.net/), foregoing file or block storage use for persistence. Persistence services such as databases are typically deployed in traditional runtime platforms such as virtual machines or bare metal servers. To use container frameworks to manage stateful services in a scalable way is not well supported, in particular in scenarios where state is accessed from workloads in different deployment platforms. In this paper, we present the Ubiquity framework, which provides seamless access to persistent storage across different container orchestrators (CloudFoundry, Openshift, Kubernetes, Docker and Mesos). Ubiquity is extensible to other container frameworks and different types of file and block storage systems, which can be managed independently of the container orchestrator. Ubiquity makes it easy to onboard stateful services in containerized and hybrid environments, extending the efficiency gains of containerization.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    http://man7.org/linux/man-pages/man7/cgroups.7.html.

  2. 2.

    https://github.com/IBM/ubiquity.

  3. 3.

    https://golang.org/.

  4. 4.

    https://github.com/IBM/ubiquity-k8s.

  5. 5.

    https://github.com/IBM/ubiquity-docker-plugin.

References

  1. Azab, A.: Enabling docker containers for high-performance and many-task computing. In: 2017 IEEE International Conference on Cloud Engineering (IC2E), pp. 279–285, April 2017

    Google Scholar 

  2. bosh.io: bosh (2017). https://bosh.io/docs. Accessed 19 June 2017

  3. CloudFoundry Foundation: Diego architecture (2017). https://docs.cloudfoundry.org/concepts/diego/diego-architecture.html. Accessed 19 June 2017

  4. CloudFoundry Foundation: Nfsv3 volume driver (2017). https://github.com/cloudfoundry/nfsv3driver. Accessed 18 June 2017

  5. cloudfoundry.org: Volume services, June 2017. http://docs.cloudfoundry.org/services/volume-services.html. Accessed 18 June 2017

  6. Dell EMC: Rex-ray openly serious about storage (2017). https://rexray.readthedocs.io/en/stable/. Accessed 20 June 2017

  7. Diaz, J., von Laszewski, G., Wang, F., Younge, A.J., Fox, G.: Futuregrid image repository: a generic catalog and storage system for heterogeneous virtual machine images. In: 2011 IEEE Third International Conference on Cloud Computing Technology and Science, pp. 560–564, November 2011

    Google Scholar 

  8. Docker Inc.: A better way to build apps (2017). https://www.docker.com/. Accessed 19 June 2017

  9. Docker Inc.: Volume plugins (2017). https://docs.docker.com/engine/extend/plugins_volume/. Accessed 18 June 2017

  10. Giles, E.R.: Container-based virtualization for byte-addressable NVM data storage. In: 2016 IEEE International Conference on Big Data (Big Data), pp. 2754–2763, December 2016

    Google Scholar 

  11. Harter, T., Salmon, B., Liu, R., Arpaci-Dusseau, A.C., Arpaci-Dusseau, R.H.: Slacker: fast distribution with lazy docker containers. In: 14th USENIX Conference on File and Storage Technologies (FAST 2016), pp. 181–195. USENIX Association, Santa Clara (2016). https://www.usenix.org/conference/fast16/technical-sessions/presentation/harter

  12. Michener, B.: Presenting torus: a modern distributed storage system by coreos (2017). https://coreos.com/blog/torus-distributed-storage-by-coreos.html. Accessed 20 June 2017

  13. Nathan, S., Ghosh, R., Mukherjee, T., Narayanan, K.: Comicon: a co-operative management system for docker container images. In: 2017 IEEE International Conference on Cloud Engineering (IC2E), pp. 116–126, April 2017

    Google Scholar 

  14. Nelluri, C.: FlexVolume explored (2017). https://www.diamanti.com/blog/flexvolume-explored/. Accessed 20 June 2017

  15. Open Service Broker: Open service broker API specification (2017). https://github.com/openservicebrokerapi/servicebroker/blob/v2.12/spec.md. Accessed 18 June 2017

  16. Sullivan, A.: Introducing trident: a dynamic persistent volume provisioner for kubernetes (2017). http://netapp.io/2016/12/23/introducing-trident-dynamic-persistent-volume-provisioner-kubernetes/. Accessed 20 June 2017

  17. The Kubernetes Authors: Dynamic provisioning and storage classes in kubernetes (2017). http://blog.kubernetes.io/2016/10/dynamic-provisioning-and-storage-in-kubernetes.html. Accessed 19 June 2017

  18. The Kubernetes Authors: Persistent volumes (2017). https://kubernetes.io/docs/concepts/storage/persistent-volumes/. Accessed 19 June 2017

  19. The Kubernetes Authors: Production-grade container orchestration (2017). https://kubernetes.io/. Accessed 19 June 2017

  20. Uehara, M.: Performance evaluations of LXC based educational cloud in Amazon EC2. In: 2016 30th International Conference on Advanced Information Networking and Applications Workshops (WAINA), pp. 638–643, March 2016

    Google Scholar 

  21. Walker-Morgan, D.: etcd introduced (2017). https://www.compose.com/articles/etcd-introduced/. Accessed 20 June 2017

  22. Xie, W., Zhou, J., Reyes, M., Noble, J., Chen, Y.: Two-mode data distribution scheme for heterogeneous storage in data centers. In: 2015 IEEE International Conference on Big Data (Big Data), pp. 327–332, October 2015

    Google Scholar 

  23. Yu, J., Ali, S., DeFelice, J.: Container storage interface (CSI) (2017). https://github.com/container-storage-interface/spec/blob/master/spec.md. Accessed 19 June 2017

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mohamed Mohamed .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this paper

Cite this paper

Mohamed, M., Warke, A., Hildebrand, D., Engel, R., Ludwig, H., Mandagere, N. (2017). Ubiquity: Extensible Persistence as a Service for Heterogeneous Container-Based Frameworks. In: Panetto, H., et al. On the Move to Meaningful Internet Systems. OTM 2017 Conferences. OTM 2017. Lecture Notes in Computer Science(), vol 10573. Springer, Cham. https://doi.org/10.1007/978-3-319-69462-7_45

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-69462-7_45

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-69461-0

  • Online ISBN: 978-3-319-69462-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics