Skip to content

Latest commit

 

History

History
330 lines (283 loc) · 12.4 KB

Bootcamps.md

File metadata and controls

330 lines (283 loc) · 12.4 KB

KCD Chennai Live Bootcamps

KCD Chennai is a community-organized, not-for-profit event that gathers adopters and technologists from open source and cloud native communities for education, collaboration, and networking.

Learning need not wait till the day of the event! KCD Chennai brings you 2 live bootcamps to help you gain deeper and broader job-oriented skills on DevOps and Kubernetes. It is our endeavour to offer industry-leading quality education to the community, delivered by experts in the community.

These bootcamps are aimed are imparting the skills required for your job, so you can excel in your role.

Salient features of the bootcamps

  1. Online Live Bootcamps during Saturdays. Offers you the flexibility to meet professional commitments on weekdays.
  2. Instructors are working professionals with day-to-day hands-on experience on the topics.
  3. Job oriented curriculum
  4. Live Bootcamps gives you the freedom to ask questions and receive clarification in real-time.
  5. Plenty of live demos
  6. All sessions are recorded. In case you happen to miss a session, you can catch-up.
  7. Course completion certificate

Registration

Register @ https://kcdchennai.in/bootcamps

Table of contents

DevOps Bootcamp

Start Date End Date Time Duration
01-Jul-23 16-Sep-23 9:30 to 13:30 IST 40 hrs.

Instructors

Instructor Title Company LinkedIn
Mathagi Arun R Senior DevOps Engineer Ericsson Click
Karthick K Infrastructure Engineer Ericsson Click
Somanath Jeeva Senior Software Engineer Ericsson Click
Chidambaranathan R Principal Software Engineer Ericsson Click
Dhinakaran Maruthapillai Senior Software Engineer Ericsson Click
Senthil Raja Chermapandian Principal Software Engineer Ericsson Click
Raman Narasimhan Senior Software Engineer Ericsson Click

Schedule

Date Topics Instructor Duration
1-Jul DevOps and SRE Concepts Arun 2 hrs.
1-Jul CI/CD Pipeline using Jenkins Arun 2 hrs.
8-Jul Infra as Code using Terraform Karthick 3 hrs.
15-Jul Configuration Management using Ansible Karthick 3 hrs.
29-Jul Source Control Management: Git, GitHub Soma 2 hrs.
29-Jul Python programming Part 1 Soma 2 hrs.
5-Aug Python programming Part 2 Soma 2 hrs.
5-Aug Testing framework (Unit test, Functional test) Soma 2 hrs.
12-Aug DevSecOps: Scanning for vulnerabilities in Code and Container Images Arun 2 hrs.
12-Aug DevSecOps: CVEs, NVD, Analysing and Fixing CVEs Nathan 2 hrs.
19-Aug Building container images, Artifact Repo Dhina 3 hrs.
26-Aug Kubernetes Part 1 Dhina 4 hrs.
2-Sep Kubernetes Part 2 Dhina 4 hrs.
9-Sep Metrics and Logging Dhina 3 hrs.
16-Sep GitOps using ArgoCD Senthil & Raman 4 hrs.

Curriculum

1. DevOps and SRE Concepts

  1. What is DevOps?
  2. Evolution of DevOps
  3. DevOps Tools & Concepts
  4. Benefits of DevOps
  5. What is SRE?
  6. Evolution of SRE
  7. SRE Tools & Concepts
  8. Benefits of SRE
  9. DevOps vs/& SRE

2. CI/CD Pipeline using Jenkins

  1. What is CI/CD?
  2. Differences between CI & CD
  3. What is Jenkins?
  4. Why use Jenkin pipeline
  5. Jenkins Pipeline Concepts
  6. Lab: Create and Run a Jenkins Pipeline

3. Infra as Code using Terraform

  1. Introduction to IaC and Terraform
  2. Terraform Installation
  3. Terraform configuration, state files for Infrastructure Definition
  4. Terraform Providers, Variables, Modules and Outputs
  5. Manage Terraform resources and dependencies
  6. Debugging Terraform configurations.

4. Configuration Management using Ansible

  1. Introduction to configuration management and Ansible
  2. Ansible Installation and Setup
  3. Inventory Hosts and Groups
  4. Ansible Playbooks
  5. Ansible Modules and Collections
  6. Using Roles
  7. Troubleshoot and Debug Playbooks

5. Source Control Management: Git, GitHub

  1. What is Git and Why it is needed?
  2. Installing Git
  3. Git Repositories and GitHub
  4. Git branches
  5. Add, Commit & Push change
  6. Pull & Rebase
  7. Code Review

6. Python programming Part 1

  1. Installing Python
  2. Interpreter, Variables
  3. Operators
  4. Modules - os,sys,subprocess,re,etc
  5. Conditions and loops
  6. Creating and executing a python script

7. Python programming Part 2

  1. List, tuples, dictionaries
  2. Working with files
  3. Functions
  4. Exception handling
  5. Logging

8. Testing framework (Unit test & Functional test)

  1. What is Unit test? Why unit test?
  2. Setup PyTest
  3. Creating Test Cases for a script
  4. Executing testcases
  5. What is Robot Test Framework?
  6. Install and configure
  7. Creating and executing robot test

9. DevSecOps: Scanning for vulnerabilities in Code and Container Images

  1. What is DevSecOps?
  2. Evolution of DevSecOps
  3. DevSecOps Tools & Concepts
  4. Benefits of DevSecOps
  5. Lab: Static Code Analysis using SonarQube
  6. Lab: Scanning Container Images using Trivy

10. DevSecOps: CVEs, NVD, Analysing and Fixing CVEs

  1. What are CVEs?
  2. National Vulnerability Database (NVD)
  3. Analysing and Fixing CVEs

11. Building container images, Artifact Repo

  1. Introduction to Container Images
  2. Building Container Images
  3. Container Image Registries
  4. Container Image tagging and versioning
  5. Artifact Repository Management

12. Kubernetes Part 1

  1. Introduction & Core Concepts
  2. Pod management
  3. Services & Networking
  4. Configuration
  5. Observability

13. Kubernetes Part 2

  1. State Persistence
  2. Authentication, Authorization & Admission Control
  3. Role Based Access Control (RBAC)
  4. CRD & Custom Controllers
  5. Deployment strategy
  6. Helm Package Manager

14. Metrics and Logging

  1. Introduction to Kubernetes Metrics & Logging
  2. Metrics Collection Architecture
  3. Custom Metrics
  4. Log Management

15. GitOps using ArgoCD

  1. Intro to GitOps
  2. Principles and benefits of GitOps
  3. Push and Pull Deployments
  4. Intro to ArgoCD
  5. Architecture of ArgoCD
  6. ArgoCD Components
  7. Lab: ArgoCD Installation
  8. Lab: Application
  9. Lab: ApplicationSet

Kubernetes Bootcamp

Start Date End Date Time Duration
01-Jul-23 09-Sep-23 14:00 to 18:00 IST 40 hrs.

Instructors

Instructor Title Company LinkedIn
Senthil Raja Chermapandian Principal Software Engineer Ericsson Click

Schedule

Date Topics Instructor Duration
1-Jul Introduction to Containers Senthil 4 hrs.
8-Jul Kubernetes Basics and Core concepts Senthil 4 hrs.
15-Jul Scheduling Senthil 4 hrs.
29-Jul Logging, Monitoring, Rolling Updates Senthil 4 hrs.
5-Aug Security Senthil 4 hrs.
12-Aug Storage Senthil 4 hrs.
19-Aug Networking Senthil 4 hrs.
26-Aug Design and create a Kubernetes Cluster Senthil 4 hrs.
2-Sep Cluster Maintenance & Troubleshooting Senthil 4 hrs.
9-Sep Custom Resource Definitions, Other Topics Senthil 4 hrs.

Curriculum

1. Introduction to Containers

  1. What are containers?
  2. Benefits of containers
  3. Underlying technologies that power containers
  4. Container images
  5. Container registry
  6. Lab: Creating containers using docker
  7. Lab: Container lifecycle management
  8. Lab: Building container images

2. Kubernetes Basics and Core concepts

  1. What is Kubernetes?
  2. Features of Kubernetes
  3. Kubernetes Architecture
  4. Pod, ReplicaSet, Deployment, Service, Daemonset
  5. Using Volumes
  6. Using Environment varibles
  7. ConfigMap and Secret
  8. Lab: Creating Pod, Replicaset, Deployment, Service
  9. Lab: Using Volumes
  10. Lab: Using ConfigMap and Secret

3. Scheduling

  1. Labels and Selectors
  2. Node Selectors
  3. Affinity and Anti-affinity
  4. Node Affinity and Pod Affinity
  5. nodeName
  6. Taints and Tolerations
  7. Resource requirements and limits
  8. Lab: Labels and Selectors
  9. Lab: Creating a Pod with Node Selector
  10. Lab: Creating a Pod with Affinity & Anti-Affinity
  11. Lab: Taints and Tolerations
  12. Lab: Resource requirements and limits

4. Logging, Monitoring, Rolling Updates

  1. Logging architecture
  2. Logging at the node level
  3. Cluster-level logging
  4. Cluster and Application monitoring
  5. Metrics and Prometheus
  6. Rolling Updates and Rollback
  7. Lab: Viewing logs from containers
  8. Lab: Viewing metrics using kubectl
  9. Lab: Metrics scraping using Prometheus
  10. Lab: Rolling Updates and Rollback

5. Security

  1. Cluster security
  2. Controlling access to the Kubernetes API
  3. Transport layer security & mutual TLS
  4. Authentication using Certificates
  5. Kubeconfig file
  6. Service Account
  7. Role Based Access Control (RBAC)
  8. Security Context
  9. Lab: Certificates
  10. Lab: Kubeconfig
  11. Lab: Role Based Access Control (RBAC)
  12. Lab: Security Context

6. Storage

  1. Volumes
  2. Persistent Volumes
  3. Persistent Volume Claims
  4. Container Storage Interface (CSI)
  5. Storage Class
  6. Provisioning and Binding PVs
  7. Lab: Provisioning PVs
  8. Lab: Persistent Volume Claims
  9. Lab: Storage Class

7. Networking

  1. Kubernetes networking model
  2. Network namespace
  3. Kubernetes DNS
  4. Kube-proxy
  5. Container Network Interface (CRI)
  6. Kubernetes Ingress and Ingress Rules
  7. Network Policy
  8. Lab: Pod to Pod networking
  9. Lab: Kubernetes DNS
  10. Lab: Network Policy

8. Design and create a Kubernetes Cluster

  1. Design a kubernetes cluster
  2. kubeadm
  3. microk8s
  4. Lab: Create a K8s cluster using microk8s
  5. Lab: Create a K8s cluster using kubeadm

9. Cluster Maintenance & Troubleshooting

  1. Basic cluster maintenance tasks
  2. Worker node OS upgrade
  3. K8s version upgrade
  4. Cluster health checks
  5. Lab: K8s version upgrade
  6. Lab: Troubleshooting Application failure
  7. Lab: Troubleshooting Worker node failure
  8. Lab: Troubleshooting network failure

10. Custom Resource Definitions, Other Topics

  1. Custom Resource Definition (CRD)
  2. Custom Resource (CR) and Controller
  3. High availability
  4. Lab: Creating a new API using CRD
  5. Lab: Creating and managing Custom Resoures