Kubernetes basics
Kubernetes Basics Program
1 - Kubernetes Basics
2 - Configuration
3 - Stateless Applications
4 - Stateful Applications
5 - Clusters
6 - Services
7 - Test
1 - Kubernetes Basics
https://kubernetes.io/docs/tutorials/kubernetes-basics/
Create a Kubernetes Cluster
https://kubernetes.io/docs/tutorials/kubernetes-basics/create-cluster/cluster-intro/
```shell script $ minikube start $ minikube version $ kubectl version $ kubectl cluster-info $ kubectl get nodes
### Deploy an app
https://kubernetes.io/docs/tutorials/kubernetes-basics/deploy-app/deploy-intro/
```shell script
$ kubectl <action> <resource>
$ kubectl <action> <resource> --help
$ kubectl create deployment <name> <app-image-location>
$ kubectl get deployments
$ kubectl proxy
$ curl http://localhost:8001/version
$ kubectl get pods
Explore your app
https://kubernetes.io/docs/tutorials/kubernetes-basics/explore/explore-intro/
- kubectl get - list resources
- kubectl describe - show detailed information about a resource
- kubectl logs - print the logs from a container in a pod
- kubectl exec - execute a command on a container in a pod
```shell script $ kubectl get pods $ kubectl describe pods $ curl http://localhost:8001/api/v1/namespaces/default/pods/$POD_NAME/proxy/ $ kubectl logs $POD_NAME $ kubectl exec $POD_NAME env
$ kubectl exec -ti $POD_NAME bash root@kubernetes-bootcamp-765bf4c7b4-c5wzl:/# curl localhost:8080 Hello Kubernetes bootcamp! | Running on: kubernetes-bootcamp-765bf4c7b4-c5wzl | v=1 root@kubernetes-bootcamp-765bf4c7b4-c5wzl:/# exit
### Expose your app publicly
https://kubernetes.io/docs/tutorials/kubernetes-basics/expose/expose-intro/
```shell script
$ kubectl get pods
$ kubectl get services
$ kubectl expose deployment/kubernetes-bootcamp --type="NodePort" --port 8080
service/kubernetes-bootcamp exposed
$ kubectl get services
$ kubectl describe services/kubernetes-bootcamp
$ kubectl get pods -l run=kubernetes-bootcamp
$ kubectl get services -l run=kubernetes-bootcamp
$ kubectl label pod $POD_NAME app=v1
$ kubectl delete service -l run=kubernetes-bootcamp
$ kubectl get services
Running Multiple Instances of Your App
```shell script $ kubectl get rs $ kubectl scale deployments/kubernetes-bootcamp –replicas=4 $ kubectl get deployments $ kubectl get pods -o wide $ kubectl describe deployments/kubernetes-bootcamp
$ kubectl describe services/kubernetes-bottcamp curl $(minikube ip):$NODE_PORT $ kubectl scale deployments/kubernetes-bootcamp –replicas=2 $ kubectl get pods -o wide
### Updating Your App
```shell script
$ kubectl get deployments.apps
$ kubectl get pods
2 - Configuration
https://kubernetes.io/docs/tutorials/kubernetes-basics/ https://kubernetes.io/docs/tutorials/configuration/configure-redis-using-configmap/
3 - Stateless Applications
```shell script
```shell script