Wanting to dip my toes into kubernetes for homelab stuff and I have a few questions.

  1. Do I need a specialized OS for it? I’ve been trying to get some TalOS VMs running but I’ve ran into some issues. Would you recommend like a Ubuntu server running kubernetes over something like TalOS?

  2. Could I run this on a Windows server? I’m personally a Linux guy, but a friend who prefers windows server wanted to try it and I thought I’d ask.

  3. Can I migrate Docker services to a Kube cluster? How easy is it?

  4. Any recommendations for learning materials? I’ve clearly struggled with TalOS’s quick start materials as I haven’t been able to get into the tutorial cluster made with docker locally. I keep getting weird errors and reinstalling Talosctl and docker. I’ve diagnosed this as a “skill issue”. My learning budget is like $100 for a udemy class or good interactive guide (Paid for by work apparently. I was learning this for fun, but it may actually be needed knowledge for a project)

  • magikmw@piefed.social
    link
    fedilink
    English
    arrow-up
    4
    ·
    15 hours ago

    You can start with minikube, it’s a one node environment you can run in a vm. Another fairly straightforward kubernetes distribution is k3s, you can set it up on a bunch of nodes running common linux distributions via ansible for example.

    I learned how to kubernetes from open online sources and just trying really hard to set up certain apps. Some have kubernetes tutorials or deployment manifests included.

    You can also start with helm, which is like a package manager for kubernetes. It can ease you into configuration required for each application.

    As for docker, kubernetes uses containers, but those are bundled into pods. It’s not a particularly difficult leap I think. However I recommend trying using podman for a bit first. It’s fairly compatible with dockerfiles and commands, but also allows you to setup and export pods you can then directly use in kubernetes.

    • iggy@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      6 hours ago

      I would also suggest looking into k0s/k0sctl for deploying k8s. I think it’s probably the easiest deployment method I’ve personally used. It also makes updates dead simple.

      For deploying things to k8s, these days LLMs can write the k8s manifests pretty easy if there isn’t already helm or kustomize files available.