קהל היעד
- מהנדסי DevOps, מנהלי מערכות ומפתחים בעלי רקע טכני בינוני
- בעלי ידע בסיסי בלינוקס ושורת הפקודה
- מבינים מושגי מכולות (Docker) ויש להם ניסיון עבודה עם Git
בסיום הקורס המשתתפים יוכלו
- לתאר את ארכיטקטורת OpenShift ויחסי הגומלין בין רכיביו (API server, etcd, SDN ועוד)
- לפרוס ולהפעיל אשכול OpenShift מקומי (CRC) ולנהל אותו דרך ה-CLI והקונסולה הגרפית
- ליצור ולנהל פרויקטים, משאבים ומשתמשים (Roles, RoleBindings, ServiceAccounts)
- לבנות ולהפעיל יישומים מכולתיים באמצעות Source-to-Image (S2I) ו-Dockerfile
- להגדיר סקיילינג ידני ואוטומטי (HPA) ולנהל אמצעי אחסון מתמשכים (PV/PVC)
- להגן על יישומים עם SecurityContextConstraints ו-NetworkPolicies
- להטמיע צינורות CI/CD בסיסיים בעזרת OpenShift Pipelines (Tekton) או Jenkins
- לצפות במטריקות ולנתח לוגים באמצעות Prometheus, Grafana ו-EFK (Elasticsearch, Fluentd, Kibana)
נושאי הלימוד
Day 1 – Introduction & Cluster Setup
- OpenShift Overview
- Container orchestration vs. Kubernetes vs. OpenShift
- Key components: API server, controllers, etcd, SDN
- OpenShift Architecture
- Master and worker nodes
- Builds, deployments, registry, router
- Installation Options
- CodeReady Containers (CRC) for local labs
- Overview of full-cluster installation
- Hands-On Lab
- Install and start CRC
- Log in via oc CLI and web console
- Explore cluster status and key resources
Day 2 – Core Concepts & Resource Management
- Projects and Namespaces
- Creating and switching projects
- Resource quotas and limits
- Authentication & Authorization
- Users, groups, roles and RoleBindings
- Service accounts
- Working with CLI
- oc commands: get, describe, edit, apply
- YAML templates vs. imperative commands
- Basic Workloads
- Pods, ReplicaSets, Deployments
- Services and Routes
- Hands-On Lab
- Create a new project
- Deploy a simple NGINX application
- Expose it externally via a Route
Day 3 – Builds, Image Streams & Application Delivery
- Build Strategies
- Source-to-Image (S2I)
- Dockerfile builds
- Binary and Pipeline builds
- Image Streams
- Tagging and tracking images
- Automated triggers
- Templates and Catalog
- Creating and using custom Templates
- Sharing application definitions
- Hands-On Lab
- Build a “Hello-World” Node.js app via S2I
- Configure automated redeployment on code change
- Publish to internal registry and deploy via ImageStream
Day 4 – Scaling, Storage & Networking
- Scaling Applications
- Manual scaling vs. Horizontal Pod Autoscaler (HPA)
- Cluster Autoscaler overview
- Persistent Storage
- PersistentVolume (PV) & PersistentVolumeClaim (PVC)
- StorageClasses and dynamic provisioning
- OpenShift Networking
- Cluster-wide SDN (OVN-Kubernetes)
- Routes, Ingress vs. Route
- NetworkPolicy basics
- Hands-On Lab
- Configure HPA on a demo workload
- Provision a PVC and mount it into a Pod
- Apply a simple NetworkPolicy to isolate traffic
Day 5 – Operators, CI/CD, Security & Monitoring
- Operators and OperatorHub
- What is an Operator?
- Installing and managing Operators
- CI/CD with OpenShift Pipelines or Jenkins
- Overview of OpenShift Pipelines (Tekton)
- Setting up a Jenkins pipeline for build-test-deploy
- Security Controls
- SecurityContextConstraints (SCC)
- Image security and admission controllers
- Monitoring & Logging
- Integrated Prometheus and Grafana
- EFK stack basics (Elasticsearch, Fluentd, Kibana)
- Hands-On Lab
- Deploy the Prometheus Operator and view metrics
- Create a simple Jenkins pipeline to deploy an app
- Review logs in Kibana
- Wrap-Up & Next Steps
- Review key concepts
- Recommended certification path (e.g., EX280)
- Further reading and community resources