Project Description

Containers are great for scaling stateless services and making them robust. However, stateful services like databases continue to pose challenges. In particular, upgrading a running database service to a new version with near zero downtime is not trivial. Wouldn't it be great if a helm chart or K8S operator could automatically take care of this for you? This would allow you to fire up a database in your K8S cluster and consume it as-a-service. And put us one step closer to building a private cloud that runs anywhere, powered by pure open source.

Goal for this Hackweek

  • Boot up an Amazon Kubernetes Service instance, deploy Rancher and register the cluster with Rancher
  • Install a helm chart for an older version of a stateful service on the cluster, e.g. MariaDB, PostgreSQL, MongoDB or similar
  • Put some data into the service and run a simulated load on it
  • Naively upgrade the service to a newer version via helm and observe what, if anything, breaks
  • Read database vendor instructions how human operators can achieve near zero downtime upgrades of the service
  • Try and script these instructions to perform an automatic near zero downtime upgrade on the cluster
  • Try and derive a general framework for near zero downtime upgrades of arbitrary stateful services (maybe as an extension to helm; needs to offer the right kind of service-specific extension points)

Resources

  • Starting as an independent exploration
  • Happy for anyone interested in Rancher, MariaDB and Helm to join!

Looking for hackers with the skills:

rancher containers mariadb postgresql mongodb near-zerodowntime upgrade

This project is part of:

Hack Week 20

Activity

  • over 3 years ago: michals liked this project.
  • over 3 years ago: mkoutny liked this project.
  • over 3 years ago: mlnoga added keyword "containers" to this project.
  • over 3 years ago: mlnoga added keyword "mariadb" to this project.
  • over 3 years ago: mlnoga added keyword "postgresql" to this project.
  • over 3 years ago: mlnoga added keyword "mongodb" to this project.
  • over 3 years ago: mlnoga added keyword "near-zerodowntime" to this project.
  • over 3 years ago: mlnoga added keyword "upgrade" to this project.
  • over 3 years ago: mlnoga added keyword "rancher" to this project.
  • over 3 years ago: mlnoga originated this project.

  • Comments

    Be the first to comment!

    Similar Projects

    A CLI for Harvester by mohamed.belgaied

    [comment]: # Harvester does not officially come...


    Rancher/k8s Trouble-Maker by tonyhansen

    [comment]: # (Please use the project descriptio...


    Cluster API Provider for Harvester by rcase

    [comment]: # (Please use the project descriptio...