• • You will learn the Kubernetes concepts; You will learn the Kubernetes architecture Try to run the Kubernetes DEMO on the end; Sharing knowledge about Kubernetes; Foment the @Talks initiative; Bring some Kubernetes references; 2
Passionate for technology • +9 years of IT experience • Infrastructure Analyst @techfor • Linux SysAdmin @ibm • DevOps Engineer @kyndryl • Digital Creator @medium • Open-source contributor @github • Descomplicando o Kubernetes • Descomplicando o Helm • Descomplicando o Ansible • DevOps Exercises • I love music, coffee and travel • Web @amaurybsouza 4
knowledge required… • Many human errors. • DevOps culture didn’t was ready. • There was deploy on Friday. • Infrastructure is not versioned. • Infrastructure as Code not exist. • Communication (Dev and Ops). • Kubernetes not exist. • Cloud Native Apps no idea. • GitOps was far away. 7
good for developers, because with it you have the freedom to choose your programming language, your database and your favorite distribution. For sysadmins, it's even better, because, in addition to the freedom to choose the distribution, we don't need to prepare the server with all the application's dependencies. We also don't need to worry about whether the machine is physical or virtual, the Docker supports both. - Isolation of the layers Rational usage of resources Speed deployment Less dependence of environment 9
ensure the workflow between the several containers of the application? - How to detect containers with failures and how to fix it immediately? - How to cover cloud native applications? 12
on Kubernetes. - Built for the current architectural standard of applications. - Container orchestration de facto standard. - Professional differential. - If that's still not enough! Look for this… 17
- Interact with API. - Applies, destructions and modify services/resources. kubeadm - Used to create and configure the cluster - We can perform join, resets, init commands on cluster - A simple way to you try out kubernetes by first time. kubelet - Node agent on each worker node - Needs run on all worker nodes - Ensure that containers being run on POD 21
your local machine, on your desktop, there are several solutions that will create a Kubernetes cluster, using virtual machines or Docker, for example. 22
you can create and manage in Kubernetes. The following is an example of a Pod which consists of a container running the image nginx:1.14.2. apiVersion: v1 kind: Pod metadata: name: nginx spec: containers: - name: nginx image: nginx:1.14.2 ports: - containerPort: 80 To create the Pod shown above, run the following command: kubectl apply -f https://k8s.io/examples/pods/simple-pod.yaml 24
of replica Pods running at any given time. As such, it is often used to guarantee the availability of a specified number of identical Pods apiVersion: apps/v1 kind: ReplicaSet metadata: name: frontend labels: app: guestbook tier: frontend spec: # modify replicas according to your case replicas: 3 selector: matchLabels: tier: frontend template: metadata: labels: tier: frontend spec: containers: - name: php-redis image: gcr.io/google_samples/gbfrontend:v3 25
to a Pod. Like all of the REST objects, you can POST a Service definition to the API server to create a new instance. The name of a Service object must be a valid RFC 1035 label name. apiVersion: v1 kind: Service metadata: name: my-service spec: selector: app.kubernetes.io/name: MyApp ports: - protocol: TCP port: 80 targetPort: 9376 27
on Debian bookworm/sid Using the qemu2 (experimental) driver based on user configuration Starting control plane node minikube in cluster minikube Creating qemu2 VM (CPUs=2, Memory=6000MB, Disk=20000MB) ... Preparing Kubernetes v1.24.1 on Docker 20.10.16 ... Generating certificates and keys ... Booting up control plane ... Configuring RBAC rules ... Verifying Kubernetes components... Using image gcr.io/k8s-minikube/storage-provisioner:v5 Enabled addons: default-storageclass, storage-provisioner Done! kubectl is now configured to use "minikube" cluster and "default" namespace by default 29
kubectl command works • Check some points of Kubernetes like (resiliency, scalability, less downtime, deploy quickly). • Show main manifests from Kubernetes (POD’s, Replicaset, Deployment, Services). • Create a Deployment using the CLI. • Replicaset will be deployed. • POD will be deployed. • Create a Service using the CLI. • Export the NGINX service . • From ClusterIP to NodePort. • Access the NGINX app on web browser. 30
by the Cloud Native Computing Foundation (CNCF), in collaboration with The Linux Foundation, to help develop the Kubernetes ecosystemasas Get more details around the Kubernetes certifications at cncf.io/certification Why become a Kubernetes certified? - Kubernetes certification can help you land a new role. - Kubernetes certification will help you get into DevOps. - You’ll learn some things. - Values Kubernetes certification. 31