Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!


What are the cheapest managed kubernetes providers?
New on LowEndTalk? Please Register and read our Community Rules.

All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.

What are the cheapest managed kubernetes providers?

sivesive Member, Host Rep

Are there any options for managed kubernetes providers where they will host the control plane masters in a separate cluster and they charge <$3 / GB memory on the worker nodes? I think its pretty possible for a provider to do such as you can use a private IPv6 subnet for pod communication and have a service type load balancer provision a IPv4 load balancer.

Comments

  • The cheapest managed ones I am aware of are DigitalOcean and Linode. But unless something has changed in the past year their control plane is not HA.

    If you want to save money for real, you could give https://github.com/vitobotta/hetzner-k3s a try. I am the author and I am going to release v2.0 probably next weekend or anyway soon.

    It's by far the easiest way to create a Kubernetes cluster in Hetzner Cloud, meaning that while you don't have a fancy dashboard with point to click configuration, all you need to create a cluster is just download the binary and write a simple configuration file in YAML. If you keep most things to default it's really a tiny amount of configuration.

    Since it uses Hetzner Cloud, that is much cheaper than DigitalOcean etc, you can save a lot of money but without sacrificing in features.

    A cluster created with my tool has out of the box a cloud controller manager, a CSI provider, the cluster autoscaler and the system upgrade controller.

    So out of the box, within a few minutes you get a fully operational cluster that can provision load balancers and node pools, has both static node pools as well as autoscaled nodepools (yes! even autoscaling like with managed services), and can perform upgrades in a breeze.

    So while it's a not a managed service it's ridiculously easy to use and much cheaper. v2.0 coming soon includes a lot of improvements.

  • mailcheapmailcheap Member, Host Rep
    edited April 24

    @vitobotta said: If you want to save money for real, you could give https://github.com/vitobotta/hetzner-k3s a try. I am the author and I am going to release v2.0 probably next weekend or anyway soon.

    Seriously awesome 💯

    My main doubt after a quick read is regarding cluster aware persistent storage, and how the storage needs of different apps are handled:

    • Block: Longhorn?
    • File: cephfs plugin is not in k3s
    • Object: ceph?
    • App database: CockroachDB?

    Pavin.

    Thanked by 1vitobotta
  • For the block storage I definitely recommend using the default storage class that you get out of the box when you create a cluster. It's backed by Hetzner Cloud's "volumes" feature and it's pretty rock solid, much more reliable than any software-defined storage option out there (and I have used them all, Longhorn, Ceph, Piraeus, you name it). Performance is decent too, you get around 7500 IOPS and 300 MB/sec sequential both read and write. The volumes are backend by Ceph behind the scenes and replicated for redundancy.

    Longhorn is a pretty cool option overall but has a not so good history in terms of reliability unfortunately. Ceph (e.g. with Rook) is pretty good but hungry on resources.

    If you create clusters with my tool I recommend:

    • regular block storage: the default storage class you get out of the box, using Hetzner's block storage. I strongly recommend this in the 95% of the cases
    • ReadWriteMany, either Longhorn (based on NFS behind the scenes) or the NFS provisioner, which basically can use regular block storage (like Hetzner's with the default storage class) via a storage class that allows RWX access via NFS
    • Object storage: Minio
    • Databases and anything else that would benefit from max IOPS: Rancher's local path provisioner; this is actually bundled with k3s, and I will make it possible to enable it in the next release coming soon. This allows using local storage for max performance, and works great with databases because these normally do their own replication, so you don't need replication at the storage layer.
    Thanked by 1mailcheap
  • SplitIceSplitIce Member, Host Rep
    edited April 26

    As someone who manages 4 kubernetes clusters (+ many smaller test / standalone clusters) let me be the first to suggest that you carefully consider your choice.

    Not all levels of management are the same. Not all service providers have the same ecosystem (Object Storage, limits, etc).

    Choose whats right for you, not just the cheapest. Or you may regret it later with a very expensive migration.

    Quite often kubernetes deployments end up being a bit vendor specific over time (resource limits, s3 services, etc) and migration... can be time consuming and full of risks. Take the time to evaluate and test those that exist within your budget, or adjacent to it. Consider the costs of related services (e.g Object Storage).

    For example part of the reason my 2 of my clusters under management are on Linode is that excess transfer from the nodes can be used for free requests to object storage (transfer pooling). Regardless of if Linode is the cheaper option access to object storage for just data storage costs quickly adjusts the scale. Kubernetes might cost a bit more (than say Vultr) but Object storage csots are $300 - 400 cheaper (roughly 40% of that account). So consider all costs involved. Build a budget. Check all limits and requirements (current and those within your 5 year plan).

    Thanked by 1mailcheap
  • dev_vpsdev_vps Member

    @vitobotta said:
    The cheapest managed ones I am aware of are DigitalOcean and Linode. But unless something has changed in the past year their control plane is not HA.

    If you want to save money for real, you could give https://github.com/vitobotta/hetzner-k3s a try. I am the author and I am going to release v2.0 probably next weekend or anyway soon.

    It's by far the easiest way to create a Kubernetes cluster in Hetzner Cloud, meaning that while you don't have a fancy dashboard with point to click configuration, all you need to create a cluster is just download the binary and write a simple configuration file in YAML. If you keep most things to default it's really a tiny amount of configuration.

    Since it uses Hetzner Cloud, that is much cheaper than DigitalOcean etc, you can save a lot of money but without sacrificing in features.

    A cluster created with my tool has out of the box a cloud controller manager, a CSI provider, the cluster autoscaler and the system upgrade controller.

    So out of the box, within a few minutes you get a fully operational cluster that can provision load balancers and node pools, has both static node pools as well as autoscaled nodepools (yes! even autoscaling like with managed services), and can perform upgrades in a breeze.

    So while it's a not a managed service it's ridiculously easy to use and much cheaper. v2.0 coming soon includes a lot of improvements.

    I greatly appreciate this.
    Thank you.

    Thanked by 1vitobotta
Sign In or Register to comment.