Kubernetes has become the primary platform for deploying and managing cloud native applications. But because it was originally designed for stateless workloads, working with data on Kubernetes has been challenging. If you want to avoid the inefficiencies and duplicative costs of having separate infrastructure for applications and data, this practical guide can help.

Using Kubernetes as your platform, you'll discover open source technologies that are designed and built for the cloud. Delve into case studies to avoid the pitfalls others have faced and explore new use cases. Get an insider's view of what's coming from the innovators who are creating next-generation architectures and infrastructure. And you'll learn how to:

  • Manage different data use cases on Kubernetes
  • Reduce costs and simplify application development
  • Leverage data and infrastructure to create new use cases and business models
  • Make data infrastructure choices that are cost-efficient, secure, scalable, and elastic
  • And more

Table of Contents

  1. 1. Introduction to Cloud Native Data Infrastructure: Persistence, Streaming, and Batch Analytics
    1. Infrastructure Types
    2. What is Cloud Native Data?
    3. More Infrastructure, More Problems
    4. Kubernetes Leading the Way
    5. Managing Compute on Kubernetes
    6. Managing Network on Kubernetes
    7. Managing Storage on Kubernetes
    8. Cloud native data components
    9. Looking forward
    10. Getting ready for the revolution
    11. Adopt an SRE mindset
    12. Embrace Distributed Computing
    13. Summary
  2. 2. Managing Data Storage on Kubernetes
    1. Docker, Containers, and State
    2. Managing State in Docker
    3. Bind mounts
    4. Volumes
    5. Tmpfs Mounts
    6. Volume Drivers
    7. Sidebar: File, Block, and Object Storage
    8. Kubernetes Resources for Data Storage
    9. Pods and Volumes
    10. PersistentVolumes
    11. PersistentVolumeClaims
    12. StorageClasses
    13. Kubernetes Storage Architecture
    14. Flexvolume
    15. Container Storage Interface (CSI)
    16. Container Attached Storage
    17. Container Object Storage Interface (COSI)
    18. Summary
  3. 3. Databases on Kubernetes the Hard Way
    1. The Hard Way
    2. Prerequisites for running data infrastructure on Kubernetes
    3. Running MySQL on Kubernetes
    4. ReplicaSets
    5. Deployments
    6. Services
    7. Accessing MySQL
    8. Running Apache Cassandra on Kubernetes
    9. StatefulSets
    10. Accessing Cassandra
    11. Sidebar: What about DaemonSets ?
    12. Summary
  4. Index