[HN Gopher] Learn Kubernetes with Google
       ___________________________________________________________________
        
       Learn Kubernetes with Google
        
       Author : Gigacore
       Score  : 83 points
       Date   : 2022-11-23 12:46 UTC (10 hours ago)
        
 (HTM) web link (learnkubernetes.withgoogle.com)
 (TXT) w3m dump (learnkubernetes.withgoogle.com)
        
       | nunez wrote:
       | VMware has a similar offering called KubeAcademy at
       | https://kube.academy
        
       | vanillax wrote:
       | This seems to gives you no starting point.
        
         | jahlove wrote:
         | Right? The first link on the page is "Installing Istio on
         | Kubernetes".
         | 
         | What is Istio? Why would I want to install it? Can you teach me
         | what Kubernetes is first, and how to install that?
        
           | autotune wrote:
           | I love Kubernetes for the most part and it's awesome, but
           | yeah, starting with Istio is like going from 0 to 60 MPH in a
           | few seconds in a sports car when that person has been riding
           | an e-bike as their primary transportation for 3 years.
        
           | jldugger wrote:
           | Yea, the front page seems to be optimized for recency --
           | Istio is on top because its the newest module, as the heading
           | "Latest release" states.
           | 
           | If you scroll down to "View all series" they have one listed
           | as "KUBERNETES FOR COMPLETE BEGINNERS"[1]. The content is 1-2
           | years old which can be quite a ways back in our field.
           | 
           | [1]: https://learnkubernetes.withgoogle.com/kubernetes-
           | essentials....
        
           | SOLAR_FIELDS wrote:
           | Not to mention that beside its insane complexity most people
           | these days probably just need linkerd instead. Google pushes
           | Istio because they built it but it's so overkill for so many
           | people's use cases.
           | 
           | Yeah you really need to understand what K8s does before even
           | thinking about a service mesh like Istio, weird that it's the
           | first link on the page.
        
         | znpy wrote:
         | it's the usual problem with kubernetes.
         | 
         | and it's always mostly poorly documented, particularly
         | regarding how to set it up (api server parameters etc).
         | 
         | my guess is that google pushes kubernetes as a "runtime" but
         | meant to be used via its proprietary implementation on google
         | cloud.
        
         | brudgers wrote:
         | _To me_ , Kubernetes looks like a thing a person learns on a
         | team.
         | 
         | It is bigger than what one person can typically learn on their
         | own.
         | 
         | Which makes sense since it is based on a tool for teams at
         | Google.
         | 
         | Most organizations don't have Google like teams.
         | 
         | And most organizations don't have Google sized problems...and
         | Kubernetes is based on solutions to Google sized problems.
        
           | yunwal wrote:
           | K8s certification courses (CKA for example) have good intros
           | usually. I did the one on kodekloud, but I think there are
           | plenty of other good ones too.
        
         | kitd wrote:
         | Yes, it looks like a library of K8S tutorials without any
         | overall walkthrough.
         | 
         | After a search, I guess this one would be the best starting
         | point:
         | 
         | https://learnkubernetes.withgoogle.com/kubernetes-essentials...
        
       | mynameisash wrote:
       | I know that K8s isn't Docker, but discussing learning the former,
       | does anyone have a suggestion for learning the latter? I know
       | what Docker is and have even used it for a production service,
       | but I definitely don't feel like I've learned it "properly". I
       | vaguely recall reading some of the Docker documentation and was
       | underwhelmed with its ability to onboard newbies.
        
         | 0xEFF wrote:
         | I suggest reframing the question to, "how do I learn how to
         | build container images?" Docker as a container runtime is dying
         | fast and being replaced, so no need to learn the runtime.
         | 
         | The lasting contribution of Docker is the Dockerfile, learning
         | that and the alternative ways to build an image is sufficient
         | in 2022.
        
         | sgeisenh wrote:
         | I'm a big fan of Julia Evans' zines. They're short and to-the-
         | point and are often excellent jumping off points.
         | 
         | This one seems highly relevant:
         | https://wizardzines.com/zines/containers/
         | 
         | This was also posted on HN a couple weeks ago:
         | https://earthly.dev/blog/chroot/
        
         | lazyant wrote:
         | https://devopswithdocker.com/
        
         | makestuff wrote:
         | Docker's recent licensing changes seem to make it not as
         | popular anymore (>10M revenue every developer needs a license
         | for docker desktop). Kubernetes even deprecated docker as a
         | container runtime (https://kubernetes.io/blog/2020/12/02/dont-
         | panic-kubernetes-...).
        
           | plonk wrote:
           | That deprecation was because the Docker shim (compatibility
           | layer) was expensive to maintain. You can still use
           | containerd, which is Docker's runtime, as a Kubernetes
           | runtime.
        
         | SOLAR_FIELDS wrote:
         | I learned it by first building a homelab cluster and spinning
         | up simple services with DNS on it. Then I did the same on a
         | cloud provider. Digital Ocean has some great guides and starter
         | kits for how to do it on their platform.
        
       | manishsharan wrote:
       | A lot of these learning resources either tie you down a vendor
       | Cloud specific Kubernetes like this one or run they risk of
       | getting outdated. My journey to Learn Kubernetes using Vagrant ,
       | VirtualBoxe VMs, Ansible and Kubeadmin has run into a lot of
       | those.
       | 
       | First , there is the issue of Docker and Kubernetes compatibility
       | that I ran into. I could not get Docker shim to work and pivoted
       | to Containerd. Once I sorted this out , I was able to get my
       | Kubernete cluster deployed. Or So I thought.
       | 
       | I ran into an issue of my nodes not using the correct IP address
       | to join the cluster. Apparently, there is a flag you need to
       | enable in the nodes like KUBELET_EXTRA_ARGS="--node-ip=<your node
       | ip address>". Once I got this sorted out by modifying
       | /etc/systemd/system/kubelet.service.d/10-kubeadm.conf , my nodes
       | were able to join the cluster properly and I was ready to do
       | actual development. Or so I thought.
       | 
       | There is this issue of Loadbalancer. I had no idea that the only
       | way to get Kubernetes to work and expose deployed services
       | require a cloud vendor specific load balancer. If you deploy
       | Kubernetes using Kubeadmin and VMs, you do not get a load
       | balancer. So now I have to deploy something called MetalLB or
       | create services of type NodePort so that they can be accessed
       | using node ip addresses. MetalLB requires knowledge of BGP which
       | I don't have. So I will stick to NodePort.
       | 
       | So now I have to deploy a vm with Haproxy as the Loadbalancer
       | that could forward the calls to Nodeports of my services on my
       | Kubernetes cluster on my laptop.
       | 
       | I have been told it is roses all the way once the cluster is
       | working with the load balancer. Or so I think.
        
         | flemhans wrote:
         | Just FYI: MetalLB can be used without BGP, in L2 mode. It was
         | actually one of the few things that "just worked" for me (with
         | k3s).
        
         | schwap wrote:
         | Have you looked into using an ingress controller[1]? Still not
         | quite as easy as a managed LoadBalancer but at least you
         | wouldn't have to configure every single service manually.
         | 
         | edit: of course, not very useful if your services aren't using
         | HTTP.
         | 
         | https://kubernetes.io/docs/concepts/services-networking/ingr...
        
       | [deleted]
        
       | pmoriarty wrote:
       | Is withgoogle.com an official Google website, or are they about
       | to get hit with a takedown notice for trademark infringement?
        
         | politelemon wrote:
         | It does look official: https://who.is/whois/withgoogle.com
        
           | sajb wrote:
           | It's good. The certificate is also valid for _.apps.google
           | and_.appspot.com, and is issued by Google Trust Services LLC.
        
             | capableweb wrote:
             | > Google Trust Services LLC
             | 
             | Which confusingly, is under the TLD .goog instead of
             | .google, for god knows what reason...
        
               | zeroxfe wrote:
               | > god knows what reason...
               | 
               | Likely for privilege separation.
        
           | capableweb wrote:
           | Doesn't Google/Alphabet have their very own TLD that could
           | use instead? Then it'd be very obvious what is/isn't
           | official.
        
             | lolinder wrote:
             | Given that that domain was registered in 2008, they
             | probably have just been using this one for so long that
             | it's not worth the hassle to switch now that they have the
             | TLD.
        
         | Spoom wrote:
         | It's official.
        
         | jvolkman wrote:
         | It seems to be the domain they use for conferences and other
         | things that they host. Like
         | https://opensourcelive.withgoogle.com/
        
       | fernandotakai wrote:
       | i quite like "kubernetes the hard way" by Kelsey Hightower
       | https://github.com/kelseyhightower/kubernetes-the-hard-way
       | 
       | not sure how up-to-date it is, but it really helped me understand
       | how k8s works.
        
         | hnarayanan wrote:
         | While the above resource is really good, it is more about setup
         | than using Kubernetes.
        
         | lmarcos wrote:
         | I did it as well and I wouldn't recommend it to people who want
         | to know how to use K8s. If you are going to administer (i.e.,
         | setup from scratch) K8s clusters, then yes it's a good
         | resource.
        
           | ghostpepper wrote:
           | I'd qualify that with "if you need to know how to use it as
           | quickly as possible" then it probably goes into more depth
           | than you need.
           | 
           | On the other hand, having at least some idea of how the thing
           | you're using works under the hood is never a bad idea.
        
       ___________________________________________________________________
       (page generated 2022-11-23 23:02 UTC)