backend-and-orchestration-t.../kubernetes/README.md
2023-03-16 20:15:35 -07:00

111 lines
5.6 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## resources on kubernetes
<br>
### tl; dr
<br>
1. a **kubernetes cluster** consists of nodes (similar to servers)
2. **nodes** run **pods**, which are collections of **docker containers**
3. **containers** in a pod share the same network
4. **deployment** is a kubernetes object responsible for launching and maintaining pods
6. **services** objects allow pods to communicate with other pods
<br>
---
### examples in this repository
<br>
* [spin up a node server example](node-server-example)
* [using kustomize for deployment](kustomize)
* [using python cdk for deployment](python-cdk)
<br>
---
### external resources
<br>
##### learning K8s
* [Kubelabs](https://github.com/collabnix/kubelabs).
* [Scalable Microservices with Kubernetes MOOC](https://www.udacity.com/course/scalable-microservices-with-kubernetes--ud615).
<br>
##### tools
- [Minikube](https://github.com/kubernetes/minikube) implements a local Kubernetes cluster on macOS, Linux, and Windows. You can install it following [this instructions](https://minikube.sigs.k8s.io/docs/start/).
- [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/) is a command line interface for running commands against Kubernetes clusters.
- [kubectx](https://github.com/ahmetb/kubectx) is a tool to switch between k8s contexts.
- [k14s](https://k14s.io/): Kubernetes Tools that follow Unix philosophy to be simple, and composable.
<br>
##### tutorials
* [Google's K8s 101](https://techdevguide.withgoogle.com/paths/cloud/sequence-2/kubernetes-101-pods-nodes-containers-and-clusters/#!).
* [K8s Bootcamp](https://kubernetesbootcamp.github.io/kubernetes-bootcamp/).
* [K8s the Hard Way](https://github.com/kelseyhightower/kubernetes-the-hard-way#labs).
* [Kubernetes Community Overview and Contributions Guide](https://docs.google.com/presentation/d/1JqcALpsg07eH665ZXQrIvOcin6SzzsIUjMRRVivrZMg/edit?usp=sharing).
* [An Intro to Googles Kubernetes and How to Use It](http://www.ctl.io/developers/blog/post/what-is-kubernetes-and-how-to-use-it/).
* [Getting Started on Kubernetes](http://containertutorials.com/get_started_kubernetes/index.html).
* [Kubernetes: The Future of Cloud Hosting](https://github.com/meteorhacks/meteorhacks.github.io/blob/master/_posts/2015-04-22-learn-kubernetes-the-future-of-the-cloud.md).
* [Kubernetes by Google](http://thevirtualizationguy.wordpress.com/tag/kubernetes/).
* [Application Containers: Kubernetes and Docker from Scratch](http://keithtenzer.com/2015/06/01/application-containers-kubernetes-and-docker-from-scratch/).
* [Learn the Kubernetes Key Concepts in 10 Minutes](http://omerio.com/2015/12/18/learn-the-kubernetes-key-concepts-in-10-minutes/).
* [The Children's Illustrated Guide to Kubernetes](https://kubernetes.io/blog/2016/06/illustrated-childrens-guide-to-kubernetes/).
* [The kubectl run command](http://medium.com/@mhausenblas/the-kubectl-run-command-27c68de5cb76#.mlwi5an7o) .
* [Docker Kubernetes Lab Handbook](https://github.com/xiaopeng163/docker-k8s-lab).
* [Curated Resources for Kubernetes](https://hackr.io/tutorials/learn-kubernetes).
* [Kubernetes Comic](https://cloud.google.com/kubernetes-engine/kubernetes-comic/).
* [Kubernetes 101: Pods, Nodes, Containers, and Clusters](https://medium.com/google-cloud/kubernetes-101-pods-nodes-containers-and-clusters-c1509e409e16).
* [An Introduction to Kubernetes](http://www.digitalocean.com/community/tutorials/an-introduction-to-kubernetes).
* [Kubernetes and everything else - Introduction to Kubernetes and it's context](https://rinormaloku.com/introduction-application-architecture/).
* [Installation on Centos 7](http://severalnines.com/blog/installing-kubernetes-cluster-minions-centos7-manage-pods-services)
* [Setting Up a Kubernetes Cluster on Ubuntu 18.04](https://mherman.org/blog/2018/08/20/setting-up-a-kubernetes-cluster-on-ubuntu/)
* [Cloud Native Landscape](https://landscape.cncf.io/)
* [Kubernetes Tutorials by Kubernetes Team](http://kubernetes.io/docs/tutorials/)
* [Kubernetes By Example by OpenShift Team](http://kubernetesbyexample.com)
* [Kubernetes Tutorial by Tutorialspoint](http://www.tutorialspoint.com/kubernetes/)
* [Imperative vs. Declarativea Kubernetes Tutorial](https://medium.com/payscale-tech/imperative-vs-declarative-a-kubernetes-tutorial-4be66c5d8914).
<br>
##### MOOCs & Learning Vidoes
* [Learn Kubernetes Youtube series](https://www.youtube.com/playlist?list=PL34sAs7_26wNBRWM6BDhnonoA5FMERax0).
* [Scalable Microservices with Kubernetes at Udacity](http://in.udacity.com/course/scalable-microservices-with-kubernetes--ud615).
* [Introduction to Kubernetes at edX](http://www.edx.org/course/introduction-kubernetes-linuxfoundationx-lfs158x).
<br>
##### Articles
* [Digital Ocean: How we launched our marketplace using k8s](https://blog.digitalocean.com/how-we-launched-our-marketplace-using-digitalocean-kubernetes-part-1/).
* [Are you Ready to Manage your Infrastructure like Google?](http://blog.jetstack.io/blog/k8s-getting-started-part1/).
* [Google is years ahead when it comes to the cloud, but it's happy the world is catching up](http://www.businessinsider.in/Google-is-years-ahead-when-it-comes-to-the-cloud-but-its-happy-the-world-is-catching-up/articleshow/47793327.cms).
* [Top Reasons Businesses Should Move to Kubernetes Now](http://supergiant.io/blog/top-reasons-businesses-should-move-to-kubernetes-now) .
<br>
##### Prometheus Operator
* [Monitor external services with the prometheus operator](https://jpweber.io/blog/monitor-external-services-with-the-prometheus-operator/).
* [Prometheus Operator — How to monitor an external service](https://devops.college/prometheus-operator-how-to-monitor-an-external-service-3cb6ac8d5acb).