{"id":49174,"date":"2025-04-25T15:15:39","date_gmt":"2025-04-25T15:15:39","guid":{"rendered":"https:\/\/www.devopsschool.com\/blog\/?p=49174"},"modified":"2025-07-12T05:56:32","modified_gmt":"2025-07-12T05:56:32","slug":"real-world-company-using-openshift-4-14-in-production","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/real-world-company-using-openshift-4-14-in-production\/","title":{"rendered":"Real-World Company Using OpenShift 4.14 in Production"},"content":{"rendered":"\n<p><\/p>\n\n\n\n<p>Imagine a <strong>FinTech company<\/strong> (like a bank or payment platform) running critical apps.<\/p>\n\n\n\n<p>They need:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Security \ud83d\udd12<\/li>\n\n\n\n<li>High Availability \ud83c\udfe2<\/li>\n\n\n\n<li>Scalability \ud83d\udcc8<\/li>\n\n\n\n<li>CI\/CD automation \ud83d\udee0<\/li>\n\n\n\n<li>Multi-cloud disaster recovery \ud83c\udf0e<\/li>\n\n\n\n<li>Monitoring and compliance \ud83d\udcca<\/li>\n<\/ul>\n\n\n\n<p>They deploy <strong>OpenShift 4.14<\/strong> like this:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83e\udde9 Architecture Diagram (High Level)<\/h1>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">                 +--------------------------+\n                 |     External Clients      |\n                 +--------------------------+\n                            |\n                            \u2193\n                  Load Balancer (F5\/AWS ALB)\n                            |\n                            \u2193\n             +---------------------------------+\n             |      OpenShift 4.14 Cluster      |\n             |  (3 Master + 6 Worker Nodes HA)  |\n             +---------------------------------+\n                            |\n      +---------+---------+---------+---------+---------+\n      |         |         |         |         |         |\n  Core Apps  Microservices  Monitoring  GitOps\/CD  Storage\n (e.g., API, (Payments,       (Prometheus,  (ArgoCD,     (Ceph, EBS,\n Billing UI)  Notifications)   Grafana)      Tekton)      NetApp)\n<\/code><\/span><\/pre>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udd25 Infrastructure Components<\/h1>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Layer<\/th><th>Details<\/th><\/tr><\/thead><tbody><tr><td>OpenShift Platform<\/td><td>OpenShift 4.14 running on AWS EC2 (or Bare Metal, Azure, GCP)<\/td><\/tr><tr><td>Masters<\/td><td>3 Control Plane nodes (HA)<\/td><\/tr><tr><td>Infra Nodes<\/td><td>2 nodes dedicated for ingress, monitoring, and registry<\/td><\/tr><tr><td>Worker Nodes<\/td><td>4+ nodes running application workloads<\/td><\/tr><tr><td>Storage<\/td><td>EBS for dynamic PVCs, Ceph for persistent apps, S3 object storage<\/td><\/tr><tr><td>Backup<\/td><td>Velero for backup and recovery<\/td><\/tr><tr><td>Networking<\/td><td>OVN-Kubernetes CNI, secured Ingress, firewall\/VPC<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udee0 What Happens Inside the Cluster<\/h1>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Area<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td>Internal Image Registry<\/td><td>Apps built in CI pipelines are pushed here<\/td><\/tr><tr><td>ImageStreams<\/td><td>Track versions of app images (dev \u2794 staging \u2794 prod)<\/td><\/tr><tr><td>CI\/CD Pipelines<\/td><td>Tekton Pipelines build, test, and deploy automatically<\/td><\/tr><tr><td>GitOps<\/td><td>ArgoCD monitors Git Repos and auto-syncs deployments<\/td><\/tr><tr><td>Monitoring<\/td><td>Built-in Prometheus, Grafana, AlertManager<\/td><\/tr><tr><td>Logging<\/td><td>Loki stack or EFK (Elasticsearch, Fluentd, Kibana)<\/td><\/tr><tr><td>Operators<\/td><td>Certified operators installed for databases (Postgres, Mongo), monitoring, and security<\/td><\/tr><tr><td>Security<\/td><td>SCCs enforced, Pod Security Admission, OAuth with SSO (Keycloak), network policies applied<\/td><\/tr><tr><td>TLS everywhere<\/td><td>All apps exposed externally use Let&#8217;s Encrypt or company-provided TLS certificates via Ingress Controller<\/td><\/tr><tr><td>Service Mesh (optional)<\/td><td>Istio\/Red Hat Service Mesh for complex apps needing traffic routing, retries, circuit breaking<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udce6 Application Lifecycle<\/h1>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Stage<\/th><th>What Happens<\/th><\/tr><\/thead><tbody><tr><td>Dev Commit Code<\/td><td>Developer pushes code to GitHub\/GitLab<\/td><\/tr><tr><td>CI Build<\/td><td>Tekton triggers build, builds container image<\/td><\/tr><tr><td>Push to Dev<\/td><td>Image pushed to internal OpenShift registry, deployed to <code>app-dev<\/code> project<\/td><\/tr><tr><td>Promote to Staging<\/td><td>After tests pass, ImageStream tag promoted to <code>app-staging<\/code><\/td><\/tr><tr><td>Promote to Prod<\/td><td>Approval step (manual or automatic) \u2794 ImageStream tag promoted to <code>app-prod<\/code><\/td><\/tr><tr><td>Monitoring Alerts<\/td><td>Prometheus tracks app metrics, AlertManager sends Slack\/email alerts if thresholds are breached<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83c\udf10 External Access<\/h1>\n\n\n\n<ul class=\"wp-block-list\">\n<li>OpenShift <strong>Ingress Controller<\/strong> (based on HAProxy) manages incoming traffic.<\/li>\n\n\n\n<li>Load Balancer (e.g., AWS ALB) in front distributes traffic across multiple router pods.<\/li>\n\n\n\n<li>Routes expose services securely (HTTPS, TLS termination at edge).<\/li>\n<\/ul>\n\n\n\n<p>Example public routes:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>App<\/th><th>Route<\/th><\/tr><\/thead><tbody><tr><td>API Gateway<\/td><td><code>https:\/\/api.example.com<\/code><\/td><\/tr><tr><td>Billing App<\/td><td><code>https:\/\/billing.example.com<\/code><\/td><\/tr><tr><td>Admin Dashboard<\/td><td><code>https:\/\/admin.example.com<\/code><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udd12 Security and Compliance Setup<\/h1>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Area<\/th><th>OpenShift Feature Used<\/th><\/tr><\/thead><tbody><tr><td>Authentication<\/td><td>OAuth server integrated with SSO (Keycloak\/LDAP)<\/td><\/tr><tr><td>Authorization<\/td><td>Role-based access control (RBAC) by projects\/namespaces<\/td><\/tr><tr><td>Network Security<\/td><td>OpenShift NetworkPolicy to isolate apps<\/td><\/tr><tr><td>Pod Security<\/td><td>SCCs (Security Context Constraints) enforced<\/td><\/tr><tr><td>Vulnerability Scanning<\/td><td>Quay Clair or Prisma Cloud scans container images<\/td><\/tr><tr><td>Compliance<\/td><td>OpenShift Compliance Operator runs CIS Benchmarks, PCI scans<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udcc8 Real Company Example Flow<\/h1>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">Developer commits code \u2794\nTekton builds &amp; tests \u2794\nArgoCD deploys to dev \u2794\nQA tests \u2794\nPromotion via ImageStream \u2794\nArgoCD syncs to production \u2794\nPrometheus monitors everything \u2794\nAlertManager informs on failures\n<\/code><\/span><\/pre>\n\n\n<p>\u2705 Minimal human error<br>\u2705 Rollbacks easy (previous image tags exist)<br>\u2705 Full GitOps-driven deployments<br>\u2705 Multi-cloud flexibility (AWS, Azure, GCP)<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83c\udfaf Conclusion: Why Companies Use OpenShift 4.14<\/h1>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Reason<\/th><th>Explanation<\/th><\/tr><\/thead><tbody><tr><td>Enterprise-ready Kubernetes<\/td><td>Certified platform with support<\/td><\/tr><tr><td>Security first<\/td><td>Built-in SCC, OAuth, Compliance tools<\/td><\/tr><tr><td>Automation native<\/td><td>GitOps, Pipelines, Operator Framework<\/td><\/tr><tr><td>Multi-cloud \/ hybrid cloud<\/td><td>ROSA, ARO, or on-premises<\/td><\/tr><tr><td>Easy cluster upgrades<\/td><td>Over-the-air OpenShift upgrades<\/td><\/tr><tr><td>Developer happiness<\/td><td>Great GUI console, developer tools<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\udccb Bonus: Technology Stack in This Company<\/h1>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Stack<\/th><th>Tools<\/th><\/tr><\/thead><tbody><tr><td>CI\/CD<\/td><td>Tekton Pipelines, ArgoCD<\/td><\/tr><tr><td>Monitoring<\/td><td>Prometheus, Grafana<\/td><\/tr><tr><td>Logging<\/td><td>Loki or EFK<\/td><\/tr><tr><td>Storage<\/td><td>EBS, Ceph, S3<\/td><\/tr><tr><td>Service Mesh (optional)<\/td><td>Istio\/Red Hat Service Mesh<\/td><\/tr><tr><td>SSO<\/td><td>Keycloak, LDAP<\/td><\/tr><tr><td>Database<\/td><td>Operators for Postgres, MongoDB<\/td><\/tr><tr><td>Security<\/td><td>Quay Clair, Prisma Cloud, SCCs, Compliance Operator<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">\ud83d\ude80 That&#8217;s the Real World!<\/h1>\n\n\n\n<p>\u2705 OpenShift is NOT &#8220;just Kubernetes&#8221; \u2014 it&#8217;s Kubernetes <strong>plus everything companies need to run safely and scale.<\/strong><\/p>\n\n\n\n<p>\u2705 OpenShift 4.14 keeps getting <strong>closer to pure Kubernetes<\/strong>, but still <strong>adds the real-world enterprise features<\/strong> Kubernetes users have to stitch together manually.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\"><\/h1>\n","protected":false},"excerpt":{"rendered":"<p>Imagine a FinTech company (like a bank or payment platform) running critical apps. They need: They deploy OpenShift 4.14 like this: \ud83e\udde9 Architecture Diagram (High Level) \ud83d\udd25 Infrastructure Components Layer&#8230; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_joinchat":[],"footnotes":""},"categories":[5153],"tags":[],"class_list":["post-49174","post","type-post","status-publish","format-standard","hentry","category-openshift"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/49174","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/comments?post=49174"}],"version-history":[{"count":1,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/49174\/revisions"}],"predecessor-version":[{"id":49175,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/49174\/revisions\/49175"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=49174"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=49174"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=49174"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}