OCE K8s Architecture
OCE K8s Architecture
Anti Apps Vendor Low (software vendors Medium (Ops can High High
Lock-in sells closed HW-boxes) backup and restore any
VM)
● Reference
○ The Kubernetes Book, Nigel Poulton
Supported Kubernetes-based platforms 8
K8s don’t have installation scripts, monitoring, Docker registry, support for storages, and so on.
It’s like Linux kernel (Kubernetes) and Linux distribution (OpenShift).
K8s Terms 9
• Pod is set of containers with shared network (other parts like list of processed and file system also can be
shared but it requires configuration).
• Node is host for pods, it’s b-m server or VM.
• Any 1 node or pod can go down at any time. So, to recover pods different controllers are used: Deployment
(for apps), StatefulSet (for DBs), DaemonSet (for technical apps that should start on each node), CronJob (job
that should start by some schedule), and Job (pod that should finish successfully).
• Service allows to access ports from pods in a stable way (stable IP and DNS name). It’s implemented as iptable
rules. Service has different ways to expose to external world.
• Ingress is a way to expose http(s) ports to external world with configuration for domain names and subpathes.
• NetworkPolicy is internal K8s firewall.
• K8s is configured in a declarative way by standard or custom resources (YAML or JSON files).
• K8s resources can be namespaced or cluster-wide. Most of resources are namespaced (like pod or service).
• Helm is a templating engine for K8s resources.
• Helm chart is a package of YAML templates (something like rpm).
• Helm release is an installed helm chart (chart + values for templates).
What is a cloud native app? 10
OCE
12
Artifacts Folder 13
/opt/offline_dir:
• bootstrap -- scripts to work with artifacts (load and check)
• git -- git bundles to be imported into GitTea
• images -- Docker images to be imported into local Docker registry
• images.csv -- Docker images description in csv format for scripts
• images.yaml -- Docker images description in YAML format for scripts
• openshift-installation -- binaries for OpenShift
• services -- scripts and configuration files for services started on Ship & Deploy server
Ship & Deploy Services 14