Proqram

DevOps

Bir DevOps mühəndisinin məqsədi development və operational komandalar arasında əməkdaşlığı inkişaf etdirmək, prosesləri avtomatlaşdırmaq, davamlı inteqrasiya və çatdırılma pipeline-larını həyata keçirmək, etibarlılıq və miqyaslılığı təmin etmək, bulud texnologiyalarını mənimsəmək, DevOps mədəniyyətini təşviq etmək, daim yeni texnoloqiyalardan xəbərdar olmaq və onları tətbiq etməklə proqram təminatının inkişafını sadələşdirməkdir. texnologiyaları və idarəedici biznes məqsədləri. Kurs bütün bu mövzularda biliklərinizi artıracaq və bunları niyə istifadə etməli olduğunuzu, hər birinin həqiqətən necə fayda verdiyini anlamağınıza kömək edəcək.

Proqrama qeydiyyat aktiv deyil
Başlanğıc

Aprel 2024

Müddət

4 ay

Qrup

20-25 nəfər

Tədris qrafiki

III gün saat 19:30; VI gün saat 11:00

Kurs tələbələrə bunları qazandıracaq:

Setup and maintain code versioning with Git.

Strong troubleshooting skills

Setup and maintain applications with Docker.

Create custom Docker files and images.

Basic concepts programing

Basic concepts of virtualization

Automate multiple containers with Docker Compose

Setup and maintain on premise Kubernetes clusters.

Deploy applications into Kubernetes with automated scripts.

Deploy applications with Gitlab into Kubernetes cluster.

Cloud engineering with AWS, IaC (Terraform)

Ansible automation

Observability and monitoring whole infrastructure

Continuous integration and continuous delivery (Gitlab Ci)

Proqram

DevOps
14

Modul sayı

  • Monolithic architecture and Microservice architecture info
  • Introduction to SDLC
  • Introduction to devops & CI/CD (gitlab ci)
  • Code version controlling systems
  • Introduction to Container Orchestration
  • Introduction to cloud engineering
  • Introduction to database (key value, relation)
  • LAB: Git Overview and Installing Git
  • LAB: Git File Management, git remote & git local
  • LAB: Core git concepts, branch, merge, rebase, cherry pick, stash, pull, push, tags
  • LAB: Advanced GIT concepts, git hooks
  • LAB: Git branching best practices, GitFlow with SDLC
  • Benefits of Containers
  • Docker Overview
  • Images & Containers
  • Docker volumes
  • Docker network
  • Docker File
  • Entrypoint, CMD & RUN
  • Docker best practices
  • Docker Compose

  • LAB: Running Petclinic microservices in local with Docker Compose
  • CI/CD tools, Gitlab, etc.
  • Gitlab CI overview
  • Deep dive on the LMS CI/CD implementation
  • Gitlab runners
  • Docker in Docker
  • Automate the whole SDLC process E2E

  • LAB: Create a fully functional CI and CD pipeline for Petclinic Microservices in Gitlab
  • Control node
  • Managed nodes
  • Inventory
  • Playbooks
  • Plays
  • Roles
  • Tasks
  • Handlers
  • Modules

  • LAB: Introduction to Ansible Automation
  • LAB: Vagrant Demo via Ansible
  • Kubernetes Foundation (architecture, components, communication flow)
  • Resource quota for Namespaces.
  • Tricks and Tips with command
  • Labels Selectors
  • Kubernetes
  • Deployments, Services, Replicas
  • K8S Templates
  • Minikube

  • LAB: Provision Kubernetes via Ansible
  • LAB: Minikube
  • Network Overview
  • Pod to Pod, Container to Container communication
  • Kubernetes Services
  • Ingress
  • External Traffic into Kubernetes

  • LAB: Expose Microservices through Ingress
  • Config Maps
  • Secrets
  • Mount ConfigMap and Secret
  • Kubernetes Probes(Liveness and readiness checks)
  • Resource limits

  • LAB: Multiple labs on AWS (EKS) and on premises K8S
  • Taint and Toleration
  • Node Affinity
  • Node Selector
  • Metric Server
  • Applications Logs
  • Command and Arguments
  • Init Containers
  • OS Upgrade
  • Upgrade Cluster
  • Backup and Restore methods.
  • Kubernetes SSL certification.

  • LAB: Rolling updates and Rollback in deployments
  • Role and Role Bindings
  • Cluster Role and Cluster Role bindings
  • Empty Dir, Host Path
  • Storage Types
  • Persistent volume and Persistent Volume Claims
  • Cron Jobs
  • Stateful Sets
  • RBAC
  • Database configuration for microservices

  • LAB: Persisting data for Petclinic microservices
  • Helm Overview
  • Using Helm Charts
  • Custom Helm Charts
  • Advanced Helm Templating operations
  • How to effectively use helm and k8s namespaces to support multiple envs (Stage/Dev).

  • LAB: Packaging and deploying microservices on Kubernetes with helm chats
  • LAB: Use helm sub charts
  • Cloud Foundation
  • Introduction to Cloud
  • Core cloud concepts
  • AWS, EC2, VPC, EKS and other base services on AWS
  • Networking in the cloud
  • Security and access control in cloud

  • LAB: Create cloud components and deploy microservices, using deployment strategies
  • What is infrastructure as code?
  • Terraform fundamentals.
  • Create cloud components with Terraform.
  • Terraform local state and remote state concepts.
  • Terraform modules and best practices

  • LAB: Provision fully infrastructure with code using best practices
  • Introduction to elastic stack
  • Collecting microservice logs in EFK

  • LAB: Create dashboard and monitor the microservices
  • Introduction to Prometheus
  • Setup & Configure
  • Prometheus Query Language
  • Monitoring
  • Metrics & alerts

  • LAB: Create a dashboard in Grafana and monitor the microservices
  • LAB: Create Health check for Java application health check. Using an actuator for microservice