Jika Anda adalah seorang pengembang aplikasi, Anda pasti menginginkan pembuatan aplikasi yang mudah dan menjangkau customer. Membuat CI/CD pipeline lazim dilakukan dalam pengembangan aplikasi sebagai penghubung antara pengembang dan operasional agar dapat terorganisir dengan baik. CI/CD pipeline dapat berfungsi sebagai pendorong proses pengembangan aplikasi sekaligus dapat mengurangi risiko dalam setiap tahap pengembangan. Selain itu, CI/CD juga berguna dalam membantu pengembang dan penguji dalam melakukan rilis dan update aplikasi dengan lebih cepat dan aman karena CI/CD dilakukan dalam lingkungan yang terstruktur. Meskipun dimungkinkan untuk mengeksekusi setiap langkah pipeline CI/CD secara manual, nilai sebenarnya dari pipeline CI/CD diwujudkan melalui otomatisasi.
Boost Fertility New Invention Ups Success Rates.pdf
Openshift Workshop
1.
2. Agenda
1. Introduction to Kubernetes
• Kubernetes Definition
• Introduction to Container
• Kubernetes Architecture
• Kubernetes Concept
• Kubernetes Configuration
• Red Hat Openshift – Logical
Architecture
2. Instructor led CI/CD
3. Instructor led Auto Scaling
2
3. • Open-source Container Orchestration Tools
• Developed by Google
• Help manage containerized applications in different deployment environment
3
Kubernetes Definition
5. 1. VMs vs. Containers
2. Container features
• Lightweight
• Portable
• Isolated
5
Virtual Machines Containers
Infrastructure
Operating System
Container Runtime
Bins/Lib
App1
Bins/Lib
App2
Infrastructure
Operating System
Bins/Lib
App1
Bins/Lib
App2
OS OS
What is a Container?
6. 1. Trend from Monolith to Microservices
2. Increase usage of Containers
3. Demand for a proper way of managing those
containers
6
What Problem Does Kubernetes Solve?
8. 8
Cloud Controller Manager
Runs cloud controller processes that take
care of e.g.
Node autoscaling, creating DNS entries, …
Controller Manager
Run all built-in controllers, like Node or
Replication Controller
Scheduler
Distributes unscheduled workloads
across the available worker nodes
API Server
Tracking state of all cluster components
and managing interactions between
them
Cluster DNS*
Provides in-cluster DNS for Pods and
Services
etcd
Key value store for all cluster
configuration data
Cloud Provider API*
API to manage cloud (AWS, Azure.
GCP, …) resources
Kubeproxy
Accepts and controls network
connections to the node’s Pods
Kubelet
Manages containers based on
incoming Pod specification
Container Runtime
Runtime that implements the
CRI, like CRI-O or containerd
Watches for changes
Watches for
changes
Reads from/
Writes to
Watches for changes
Talks to
Worker Node(s)
uses
Watches for changes
*
Control Plane
Optional Component
Kubernetes Architecture
9. Pod
Replication Controller
/ Deployment
Service Label
One or More Containers
Shared IP
Shared Storage Volume
Shared Resources
Shared Lifecycle
Ensures that a specified
Number of pod replicas are
running a any one time
Grouping of pods, act as one,
has stable virtual IP and DNS
name
Key/Value pairs associated with
kubernetes objects
(e.g. env=production)
Kubernetes Concept
9