Course Outline
Day 1:
1. Introduction to container technology.
2. Introduction to architecture:
a. Kubernetes
b. OpenShift
3. Introduction to OpenShift.
a. component description
b. types of edition description
4. Introduction to the Openshift web console.
5. Introduction to OpenShift Command Line Interfaces.
6. Introduction to containers and Pods.
7. Introduction to RBAC in OpenShift.
8. Installing single-container applications using OpenShift CLI and applying the S2I mechanism.
9. Troubleshooting containers.
10. Configuring default and maximum resource requirements for computational resources
for Pods in a project.
11. Configuring computational resource allocations and resource quantity quotas
Kubernetes on a project.
Day 2:
12. Securing containers and Pods using Security Context Constraints (SCC).
13. Configuring network policies in OpenShift and troubleshooting.
14. Using the TLS protocol to secure connections and data transmission between
a client and an application server.
15. Installing multi-container applications in OpenShift.
a. OpenShift Templates (generally)
b. Helm
16. Controlling Pod placement policy on the OpenShift cluster.
17. Managing persistent storage for applications.
a. introduction to Persistent Data Volumes
b. selecting a Storage Class for applications
18. Ensuring high availability of applications in OpenShift:
a. container restart policy
b. using probes to check the status of applications in containers
c. limiting resources for containers
d. applying automatic scaling
Day 3:
19. Introduction to Istio service mesh.
20. Installing a service mesh on the OpenShift cluster.
21. Monitoring Istio.
22. Managing network traffic in Istio.
23. Running applications with a service mesh.
24. Securing applications using a service mesh.
25. Improving application reliability using a service mesh.
26. Monitoring applications using Prometheus and Grafana.
Day 4:
27. Introduction to Tekton CI.
28. Overview of Tekton tools:
a. CLI
b. Triggers
c. Catalog
d. Dashboard
29. Creating in Tekton:
a. Tasks and TaskRuns
b. Pipelines and PipelineRuns
c. Triggers
30. Deploying software using Tekton.
Day 5:
31. Introduction to OpenShift/K8s operators.
32. Creating operators for task automation.
Requirements
To effectively participate in the training, you should have: - basic knowledge of the Linux system and the ability to work with a terminal, - general knowledge of container technology (e.g., Docker), - familiarity with basic network concepts such as DNS, communication protocols, and firewalls, - experience working with applications deployed in virtual or cloud environments is an additional advantage but not required.