Many of the posts I read here are about Docker. Is anybody using Kubernetes to manage their self hosted stuff? For those who’ve tried it and went back to Docker, why?

I’m doing my 3rd rebuild of a K8s cluster after learning things that I’ve done wrong and wanted to start fresh, but when enhancing my Docker setup and deciding between K8s and Docker Swarm, I decided on K8s for the learning opportunities and how it could help me at work.

What’s your story?

  • vsis@feddit.cl
    link
    fedilink
    English
    arrow-up
    92
    arrow-down
    1
    ·
    1 year ago

    Kubernetes is useful if you have gone full cattle over pets. And that is very uncommon in home setups. If you only own one or two small machines you cannot destroy infra easily in a “cattle” way, and the bloatware that comes with Kubernetes doesn’t help you neither.

    In homelabs and home servers the pros of Kubernetes are not very useful: high availability, auto-scaling, gitops integrations, etc: Why would you need autoscaling and HA for a SFTP used only by you? Instead you write a docker-compose.yml and call it a day.

    • jsnfwlr@lemmy.world
      link
      fedilink
      English
      arrow-up
      32
      ·
      1 year ago

      The one exception to this is if you’re using your homelab to learn kubernetes.

      That was the only time I used K8s and k3s on my homelab.

      And for anything that I do want to set up in a HA/cattle kind of way, I use Docker Swarm, as it feels like a more comfortable extension of docker compose.

      • andrew@lemmy.stuart.fun
        link
        fedilink
        English
        arrow-up
        4
        ·
        1 year ago

        I think the biggest reasons for me have been growth and professional development. I started my home cluster 8 years ago as a single node of basically just running the hack/ scripts on my Linux desktop. I’ve been able to grow that same cluster to 6 hosts as I’ve replaced desktops and as I got a bit into the used enterprise server scene. I’ve replaced multiple routers and moved behind cloudflare, added a private CA a few times, added solid persistence with rook+ceph, and built my ideal telemetry stack, added velero backups into Backblaze b2, and probably a lot more I’m not thinking of.

        That whole time, I’ve had to do almost zero maintenance or upgrades on the side projects I’ve built over the years, or on the self hosted services I’ve run. If you ignore the day or so a year I’ve spent cursing my propensity to upgrade a tad too early and hit snags, though I’ve just about always been able to resolve them pretty quickly and have learned even more from those times.

        And on top of that, I get to take a lot of that expertise to work where it happens to pay quite well. And I’ve spent some time working towards building the knowledge into a side gig. Maybe someday that’ll pay the bills too.

    • Lodra@programming.dev
      link
      fedilink
      English
      arrow-up
      3
      arrow-down
      1
      ·
      1 year ago

      While you’re probably right overall, there are many good reasons to use k8s. The api provides all sorts of benefits. Kubectl, k9s, and other operational UIs . Good deployment models and tools like argo. Loads of helm charts that are (theoretically) ready to use.

      No, those things aren’t free. There’s a lot of overhead to running k8s.

  • vojel@feddit.de
    link
    fedilink
    English
    arrow-up
    20
    ·
    1 year ago

    I run k3s and all my stuff runs in it no need to deal with docker anymore.

    • Limit@lemm.ee
      link
      fedilink
      English
      arrow-up
      4
      arrow-down
      1
      ·
      1 year ago

      I’m not very familiar with kubernetes or k3s but I thought it was a way to manage docker containers. Is that not the case? I’m considering deploying a k3s cluster in my proxmox environment to test it out.

  • eodur@lemmy.world
    link
    fedilink
    English
    arrow-up
    15
    ·
    1 year ago

    Kubernetes is great if you run lots of services and/or already use kubernetes at work. I use it all the time and I’ve learned a lot on my personal cluster that I’ve taken to work to improve their systems. If you’re used to managing infra already then it’s not that much more work, and it’s great to be able to shutdown a server for maintenance and not have to worry about more than a brief blip on your home services.

  • Lung@lemmy.world
    link
    fedilink
    English
    arrow-up
    14
    ·
    1 year ago

    I manage like 200 servers in Google cloud k8s but I don’t think I’d do that for home use. The core purpose is to manage multiple servers and assign processes between them, auto scaling, cluster internal network - running docker containers for single instance apps for personal use doesn’t require this kind of complexity

    My NAS software has a docker thing just built into it. I can upload or specify a package and it just runs it on the local hardware. If you have a Linux shell, I guess all you really have to do is run dockerd to start the daemon, make sure your network config allows connections, and upload your docker containers to it for running

    • keyez@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 year ago

      My thinking is the same, I see lots of k8s mentions on here and from coworkers at home and all I use is docker and VMs because I don’t want all that complexity I have to deal with at work.

  • humanaut@lemmy.world
    link
    fedilink
    English
    arrow-up
    7
    ·
    1 year ago

    Nomad all the way. K8s is so bloated. Docker swarm can only do docker. Nomad can do basically anything.

    • useful_idiot@lemmy.eatsleepcode.ca
      link
      fedilink
      English
      arrow-up
      8
      ·
      1 year ago

      It’s a damn shame it’s going not free open source, I Just switched my lab over to nomad and consul last year and it has been incredibly smooth sailing.

    • iluminae@lemmy.world
      link
      fedilink
      English
      arrow-up
      4
      ·
      1 year ago

      Nomad is a breath of fresh air after working with k8s professionally.

      Don’t get me wrong, love k8s, but it’s a bit much (until you need it)

      • Lupec@lemm.ee
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        I’ve been reading into k3s out of curiosity, which as I understand is supposed to be one of the simpler ones, and even as someone who works as a developer and maintains a small homelab, it just makes me feel utterly clueless lol. Which is to say, I’ll definitely be giving Nomad a good look.

        Oh and if you do happen to have any other more newbie friendly suggestions, I’d love to hear about them!

  • thekernel@kbin.social
    link
    fedilink
    arrow-up
    7
    arrow-down
    1
    ·
    1 year ago

    I like the concept, but hate the configuration schema and tooling which is all needlessly obtuse (eg. helm)

  • Decronym@lemmy.decronym.xyzB
    link
    fedilink
    English
    arrow-up
    6
    arrow-down
    1
    ·
    edit-2
    1 year ago

    Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:

    Fewer Letters More Letters
    DNS Domain Name Service/System
    Git Popular version control system, primarily for code
    HA Home Assistant automation software
    ~ High Availability
    HTTP Hypertext Transfer Protocol, the Web
    LXC Linux Containers
    NAS Network-Attached Storage
    SSD Solid State Drive mass storage
    SSH Secure Shell for remote terminal access
    VPN Virtual Private Network
    VPS Virtual Private Server (opposed to shared hosting)
    k8s Kubernetes container management package
    nginx Popular HTTP server

    11 acronyms in this thread; the most compressed thread commented on today has 11 acronyms.

    [Thread #82 for this sub, first seen 26th Aug 2023, 23:55] [FAQ] [Full list] [Contact] [Source code]

    • dan@upvote.au
      link
      fedilink
      English
      arrow-up
      4
      ·
      1 year ago

      HA is high availability. Home Assistant is usually shortened to HASS.

      • Lupec@lemm.ee
        link
        fedilink
        English
        arrow-up
        4
        ·
        1 year ago

        It does list that as another possible meaning, if I’m reading the table correctly

    • andrew@lemmy.stuart.fun
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 year ago

      AKS is a shame. Most of azure, actually. I do my best to find ways around the insanity but it always seems to leak back in with something insane they chose to do for whatever Microsoft reason they have.

  • TheLordlessBard@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    5
    ·
    1 year ago

    Love is a strong word, but kubernetes is definitely interesting. I’m finishing up a migration of my homelab from a docker host running in a VM managed with Portainer to one smaller VM and three refurbished lenovo mini PCs running Rancher. It hasn’t been an easy road, but I chose to go with Rancher and k3s since it seemed to handle my usecase better than Portainer and Docker Swarm could. I can’t pass up those cheap mini PCs

    • Osnapitsjoey@lemmy.one
      link
      fedilink
      English
      arrow-up
      0
      ·
      edit-2
      1 year ago

      Does rancher connect the pcs together? I have like 3 mini pcs sitting around, and I’ve always wanted to kinda combine them somehow

      Like being able to combine cpu power or something. Idk if this is possible without getting a mobo with multiple cpu slots, but if it is. I’d love to learn!

      • TheLordlessBard@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        0
        ·
        1 year ago

        Yeah, Kubernetes is designed to run in a cluster so you can pool processing power and memory from multiple devices. I banged my head against the wall for hours trying to figure out how to set up a cluster by hand, but then discovered if you install Rancher in a regular docker container it can handle all that for you

        • Osnapitsjoey@lemmy.one
          link
          fedilink
          English
          arrow-up
          2
          ·
          1 year ago

          No shit. So you’re saying I can hook up like three mini pcs and make a mega at home server!? I gotta look into this. Did you follow a guide or anything you think is good enough or is as easy as a Google?

          • TheLordlessBard@sh.itjust.works
            link
            fedilink
            English
            arrow-up
            1
            ·
            1 year ago

            My recommendation is to look into k3sup and Rancher. I had a lot of trouble trying to install rancher in a docker container and migrating to a cluster after, and k3sup makes it really easy to set up a k3s cluster without having to configure everything manually

            You can accomplish the same task with docker swarm, but I figured it would be better to learn something that wasn’t abandonware

            I haven’t dug into the storage side yet since I have a separate NAS, but it will probably be beneficial to set up something like Ceph, GlusterFS, or Longhorn if you don’t have one

            • Osnapitsjoey@lemmy.one
              link
              fedilink
              English
              arrow-up
              1
              ·
              1 year ago

              Oh I just realized this is for kubernates. Unraid is all dockers. Can a docker swarm also pool resources?

              • TheLordlessBard@sh.itjust.works
                link
                fedilink
                English
                arrow-up
                1
                ·
                1 year ago

                Yep, similar concept. Not sure how well unraid will handle the swarm behavior but I can imagine there’s someone out there who has tried it before

  • RegalPotoo@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 year ago

    Kubernetes is awesome for self hosting, but tbh is superpower isn’t multi-node/scalability/clustering shenanigans, it’s that because every bit of configuration is just an object in the API, you can really easily version control everything - charts and config in git, tools like Helm make applying changes super easy, use Renovate to do automatic updates, use your CI tool of choice to deploy on commit, leverage your hobby into a DevOps role, profit

  • Oliver Lowe@lemmy.sdf.org
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 year ago

    Here’s a slightly different story: I run OpenBSD on 2 bare-metal machines in 2 different physical locations. I used k8s at work for a bit until I steered my career more towards programming. Having k8s knowledge handy doesn’t really help me so much now.

    On OpenBSD there is no Kubernetes. Because I’ve got just two hosts, I’ve managed them with plain SSH and the default init system for 5+ years without any problems.

  • russjr08@outpost.zeuslink.net
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 year ago

    I feel like it took me quite a while to get the hang of Docker, and Kubernetes on a general look seems all that much more daunting! Hopefully one day I can break it down into smaller pieces so I can get started with it!

  • orizuru@lemmy.sdf.org
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 year ago

    Seems a bit overkill for a personal use selfhosting set-up.

    Personally, I don’t need anything that requires multiple replicas and loadbalencers.

    Do people who have homelabs actually need them? Or is it just for learning?

    • egonallanon@lemm.ee
      link
      fedilink
      English
      arrow-up
      2
      ·
      1 year ago

      I find mine useful as both a learning process and as a thing need. I don’t like using cloud services where possible so I can set things up to replace having to rely on those such as next loud for storage, plex and some *arr servers for media etc. And I think once you put the hardware and power costs vs what I’d pay for all the subs (particularly cloud storage costs) it comes out cheaper at least with hardware I’m using.

    • kelvie@lemmy.ca
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      A lot of people thought this was the case for VMs and docker as well, and now it seems to be the norm.

      • orizuru@lemmy.sdf.org
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        A lot of people thought this was the case for VMs and docker as well, and now it seems to be the norm.

        Yes, but docker does provide features that are useful at the level of a hobbyist self-hosting a few services for personal use (e.g. reproducibility). I like using docker and ansible to set up my systems, as I can painlessly reproduce everything or migrate to a different VPS in a few minutes.

        But kubernetes seems overkill. None of my services have enough traffic to justify replicas, I’m the only user.

        Besides learning (which is a valid reason), I don’t see why one would bother setting it up at home. Unless there’s a very specific use-case I’m missing.