SlideShare a Scribd company logo
Pradipta Banerjee
(@pradipta_kr, www.cloudgeekz.com)
§ Cloud Native Stack
§ High Level requirements
§ Details
§ Whether to Dockerize ?
§ Which orchestration tool to use?
Host (Bare-metal or Virtual
Machine)
Linux O/S
Monitoring/Mgmt
Agents
Docker Engine
Docker Orchestration
DevOps:
• CI/CD Pipeline Tooling
• Build Service
• Trusted & Secure Registry
• Image Scanning & Integrity
• App & Image Governance
• PaaS
Operations
• LifeCycle Management of
Host and Containers
• Cluster Management
• Network Management
• Storage Management
• Monitoring & Alerting
• User Management
• Logging
• Security
• HA
• Backup and Disaster
Recovery
Misc
• Firewall
• Load Balancer
• Service Discovery
• DNS
• Proxy
• Ingress
• …
Storage
Network
Single System View
§ Docker Host
§ VM/baremetal
§ Lifecycle management of hosts ?
§ Docker Storage for Containers and
Volumes?
§ Network for Host and Docker Containers?
§ Docker Orchestration
§ Handling user authentication &
authorization
§ How to expose services ?
§ How to access legacy backends ?
§ How to handle resource management for
different users and teams ?
§ Handling HA, backup & restore
§ Docker Image Build & Distribution
§ Where to get the base images ?
§ How to handle multi-arch builds ?
§ How to scan the images for any existing
vulnerabilities ?
§ Should the images be stored on public registry
or private registry ?
§ Configuration management
§ How to manage keys, secrets and runtime
configuration of containers?
§ Logging
§ What logging mechanism to use for containers
and host ?
§ Should we use same or different logging
mechanism for containers and host ?
§ Monitoring
§ How to monitor host & containers ?
§ How to integrate into existing enterprise wide
monitoring solution ?
On Prem Container Cloud - Lessons Learned
§ Every orchestration s/w (Kubernetes, Docker swarm, Mesos-
marathon) is opinionated when it comes to describing a
containerized application (pattern)
§ Developers and Operators need to be in agreement.
§ This session is mostly focused on Kubernetes
On Prem Container Cloud - Lessons Learned
§ Key Points to Remember
§ AUFS is not supported by any Linux Distribution
§ OverlayFS is a good choice – check support statement
§ Devicemapper with Direct-LVM is a decent (& supported) option
§ https://docs.docker.com/engine/userguide/storagedriver/device-
mapper-driver/
§ Storage sizing depends on the role of the host
§ Building Docker images requires significantly more storage
§ NFS
§ HostPath
§ Use a specific directory or file on the host
§ The directory can be from local storage or external storage (eg.
SAN)
§ Many more options in Kubernetes - Gluster, Ceph, etc.
§ NFS and HostPath are good options for on-prem Kubernetes
deployments
§ Overlay (eg. Flannel)
§ Easier maintenance
§ Has performance overheads
§ Flat
§ Maintenance overheads (manual partitioning and management of IP address space)
§ Better performance
§ Layer-3 (eg. Calico)
§ Easier maintenance
§ Better performance
§ Provides network policy config
§ Calico is a good choice for Docker Networking with Kubernetes
§ Calico/Flannel comparison Ref: http://chunqi.li/2015/11/15/Battlefield-Calico-
Flannel-Weave-and-Docker-Overlay-Network/
§ Base Image
§ From Public Registries like DockerHub
§ Create your own
§ Generic Best Practice
§ Use layering
§ One layer for base, one for user configuration and one for application
§ Leverage ‘USER’ directive to run programs inside container as non-root.
§ Use environment variables for runtime configuration
§ Use volumes for storing application data
§ Ensure regular scanning of images
§ Multi-architecture Builds
§ Use architecture emulators or native multi-arch build farms
§ Use fat (V2) image manifest or labels in the image name
(ppc64le/mysql, mysql-ppc64le)
§ Example using arch emulator for multi-arch build -
https://goo.gl/eU0Qbj
§ Run your own private registry leveraging opensource docker
distribution code (available with all Linux distributions)
§ Commercial Docker orchestration tools ships with private registry
(IBM Spectrum Conductor for Containers, RedHat OpenShift,
Docker DataCenter etc)
§ Standalone 3rd party solutions available as well
§ Docker Trusted Registry (DTR)
§ Artifactory
§ Vulnerability Scanning of Docker Images
§ Integrated with 3rd party solutions
§ Setup your own (Clair, atomic-scan)
§ Example using Clair - https://goo.gl/Ff3ACw
§ Authentication
§ Static Password File
§ Certificate Based
§ Token Based
§ OpenID
§ KeyStone (required for LDAP/AD authentication)
§ Authorization
§ Role Based
§ Attribute Based
§ Example LDAP/AD authentication setup with Kubernetes - https://goo.gl/5qfy80
§ Use Kubernetes Namespaces
§ One namespace per user or group
§ Separate namespaces for Dev/Test/Staging/Build
§ Specify Resource Quota (cpu, mem, #pods, #services, #RCs,
#PersistentVolumeClaims) for each namespace
§ Use the same Kubernetes cluster for dynamic builds
§ Example Jenkins Build Pipeline Setup: https://goo.gl/OvHKm1
§ Security Constraints
§ Allowed/Disallowed container operations
§ Explicitly add/remove Linux capabilities from containers
§ Disable Linux system calls
§ Allow/Disallow container to run as root
§ Pod Security Policy
§ Governs what actions a pod can perform
§ Selinux/AppArmor rules
§ Network Policies
§ Governs how Pods communicates with each other
§ Always set Kubernetes cluster wide security policies for production
deployments
§ Example Cluster-wide Security Policy Setup - https://goo.gl/oBKm2S
§ Internal (service not accessible outside of Kubernetes cluster)
§ ClusterIP (kube-proxy)
§ External
§ External IPs
§ NodePort
§ Cloud Loadbalancer (for off-prem)
§ Ingress
§ Requires supported Ingress controllers eg. nginx, ha-proxy
§ 3rd party controllers (check with vendors) – F5, NetScaler etc.
§ Use Ingress for exposing services in Kubernetes
§ Kubernetes state is maintained in ETCD which is a distributed
key-value store
§ Deployment considerations for ETCD
§ Fault-tolerant cluster
§ Storage for ETCD (Network and IO latency directly affects ETCD)
§ ETCD data backup and restore
§ Enable TLS
§ Deployment considerations for ETCD - https://goo.gl/n5VX1f
§ Explicitly create a Kubernetes Endpoint and a Service
§ Create a Kubernetes Endpoint with IP and Port details of the Legacy
Backend
§ Create a Kubernetes Service to expose the Endpoint
§ Complete Example - https://goo.gl/V8TKnK
§ Docker Logging
§ Which docker logging driver to use – json, syslog, journald etc.
§ Kubernetes metadata is available as part of docker labels
§ Kubernetes Logging
§ If using systemd based Linux distro, then by default all logging is to journald
§ If ForwardToSyslog (/etc/systemd/journald.conf) is set to Yes, then logs will be available in
syslog (rsyslog) as well
§ All kubernetes logs are in journald or /var/log/messages (if ForwardToSyslog is set to Yes).
§ Centralized logging
§ Docker/Kubernetes -> Rsyslog -> ELK
§ Docker/Kubernetes -> Rsyslog -> Splunk
§ Log rotation for Docker and Kubernetes is external and needs to be handled accordingly
Kubernetes
Cluster
Heapster
(Aggregator)
InfluxDB
SinkSource Grafana
• What if you want to integrate Kubernetes monitoring with your existing
enterprise monitoring solution ?
• Write your own sink ?
• Use a different monitoring solution than Heapster
• Note: Horizontal POD Autoscaling based on CPU utilization leverages
Heapster
ELK
…
§ Docker Orchestration options are opinionated
§ OverlayFS or Devicemapper with Direct-LVM for Docker Storage
§ Plan for ETCD fault-tolerance, backup and restore
§ NFS and HostPath for Docker Volumes
§ Use Image Signing and Scanning
§ Calico for Docker networking (low-overhead, supports Kubernetes
Network Policy)
§ Use Kubernetes Security Policies
§ Use Ingress for exposing Services
§ Use Kubernetes Authentication and RBAC Authorization
§ Use Kubernetes namespaces for efficient cluster resource
management
On Prem Container Cloud - Lessons Learned

More Related Content

What's hot (20)

PDF
Setup Hybrid Clusters Using Kubernetes Federation
inwin stack
 
PPTX
NetflixOSS for Triangle Devops Oct 2013
aspyker
 
PDF
DCEU 18: Desigual Transforms the In-Store Experience with Docker Enterprise C...
Docker, Inc.
 
PDF
DCEU 18: 5 Patterns for Success in Application Transformation
Docker, Inc.
 
PPTX
Introduction to helm
Jeeva Chelladhurai
 
PPTX
Dell Trials and Triumphs using Docker on Client Systems by Sean McGinnis and ...
Docker, Inc.
 
PDF
DCSF 19 Microservices API: Routing Across Any Infrastructure
Docker, Inc.
 
PDF
A curtain-raiser to the container world Docker & Kubernetes
zekeLabs Technologies
 
PPTX
Continuous Delivery to Kubernetes Using Helm
Adnan Abdulhussein
 
PDF
Everything You Need to Know About Docker and Storage by Ryan Wallner, ClusterHQ
Docker, Inc.
 
PPTX
How (and why) to roll your own Docker SaaS
Ryan Crawford
 
PPTX
Structured Container Delivery by Oscar Renalias, Accenture
Docker, Inc.
 
PDF
Creating a Kubernetes Operator in Java
Rudy De Busscher
 
PDF
Multi-cloud Kubernetes BCDR with Velero
Kublr
 
PPT
Sebastien goasguen cloud stack the next year
ShapeBlue
 
PDF
Kubernetes Architecture - beyond a black box - Part 1
Hao H. Zhang
 
PPTX
Docker - A curtain raiser to the Container world
zekeLabs Technologies
 
PPT
Sebastien goasguen cloud stack and docker
ShapeBlue
 
PPTX
Kubernetes 1.16 and rancher 2.3 enhancements
Saiyam Pathak
 
PPTX
DevOps: Kubernetes + Helm with Azure
Jessica Deen
 
Setup Hybrid Clusters Using Kubernetes Federation
inwin stack
 
NetflixOSS for Triangle Devops Oct 2013
aspyker
 
DCEU 18: Desigual Transforms the In-Store Experience with Docker Enterprise C...
Docker, Inc.
 
DCEU 18: 5 Patterns for Success in Application Transformation
Docker, Inc.
 
Introduction to helm
Jeeva Chelladhurai
 
Dell Trials and Triumphs using Docker on Client Systems by Sean McGinnis and ...
Docker, Inc.
 
DCSF 19 Microservices API: Routing Across Any Infrastructure
Docker, Inc.
 
A curtain-raiser to the container world Docker & Kubernetes
zekeLabs Technologies
 
Continuous Delivery to Kubernetes Using Helm
Adnan Abdulhussein
 
Everything You Need to Know About Docker and Storage by Ryan Wallner, ClusterHQ
Docker, Inc.
 
How (and why) to roll your own Docker SaaS
Ryan Crawford
 
Structured Container Delivery by Oscar Renalias, Accenture
Docker, Inc.
 
Creating a Kubernetes Operator in Java
Rudy De Busscher
 
Multi-cloud Kubernetes BCDR with Velero
Kublr
 
Sebastien goasguen cloud stack the next year
ShapeBlue
 
Kubernetes Architecture - beyond a black box - Part 1
Hao H. Zhang
 
Docker - A curtain raiser to the Container world
zekeLabs Technologies
 
Sebastien goasguen cloud stack and docker
ShapeBlue
 
Kubernetes 1.16 and rancher 2.3 enhancements
Saiyam Pathak
 
DevOps: Kubernetes + Helm with Azure
Jessica Deen
 

Viewers also liked (13)

PDF
Containers and Developer Defined Data Centers - Evan Powell - Keynote in Bang...
CodeOps Technologies LLP
 
PDF
How to Contribute to Cloud Native Computing Foundation
CodeOps Technologies LLP
 
PDF
Application Security in a Container World - Akash Mahajan - BCC 2017
CodeOps Technologies LLP
 
PPTX
Serverless: Why is it hot and What is it not?
Srushith Repakula
 
PDF
Creating Event Driven Serverless Applications - Sandeep - Adobe - Serverless ...
CodeOps Technologies LLP
 
PDF
Serverless Summit - Quiz
CodeOps Technologies LLP
 
PPTX
Serverless in azure
Veresh Jain
 
PDF
Serverless Architecture Patterns - Manoj Ganapathi - Serverless Summit
CodeOps Technologies LLP
 
PPTX
Serverless Summit India 2017: Fission
Vishal Biyani
 
PDF
Blockchain - Apt Store for Serverless Apps - Nasir - Serverless Summit
CodeOps Technologies LLP
 
PDF
IoT and Serverless - AWS - Serverless Summit - Madhusudan Shekar
CodeOps Technologies LLP
 
PDF
Democratizing Serverless—The Open Source Fn Project - Serverless Summit
CodeOps Technologies LLP
 
PDF
Build a Chatbot in Ten Minutes - Dave Kerr - Serverless Summit
CodeOps Technologies LLP
 
Containers and Developer Defined Data Centers - Evan Powell - Keynote in Bang...
CodeOps Technologies LLP
 
How to Contribute to Cloud Native Computing Foundation
CodeOps Technologies LLP
 
Application Security in a Container World - Akash Mahajan - BCC 2017
CodeOps Technologies LLP
 
Serverless: Why is it hot and What is it not?
Srushith Repakula
 
Creating Event Driven Serverless Applications - Sandeep - Adobe - Serverless ...
CodeOps Technologies LLP
 
Serverless Summit - Quiz
CodeOps Technologies LLP
 
Serverless in azure
Veresh Jain
 
Serverless Architecture Patterns - Manoj Ganapathi - Serverless Summit
CodeOps Technologies LLP
 
Serverless Summit India 2017: Fission
Vishal Biyani
 
Blockchain - Apt Store for Serverless Apps - Nasir - Serverless Summit
CodeOps Technologies LLP
 
IoT and Serverless - AWS - Serverless Summit - Madhusudan Shekar
CodeOps Technologies LLP
 
Democratizing Serverless—The Open Source Fn Project - Serverless Summit
CodeOps Technologies LLP
 
Build a Chatbot in Ten Minutes - Dave Kerr - Serverless Summit
CodeOps Technologies LLP
 
Ad

Similar to On Prem Container Cloud - Lessons Learned (20)

PDF
oci-container-engine-oke-100.pdf
NandiniSinghal16
 
PPTX
On Docker and its use for LHC at CERN
Sebastien Goasguen
 
PPTX
Docker and kubernetes
Dongwon Kim
 
PDF
[BarCamp2018][20180915][Tips for Virtual Hosting on Kubernetes]
Wong Hoi Sing Edison
 
PDF
Kubernetes stack reliability
Oleg Chunikhin
 
PDF
How Self-Healing Nodes and Infrastructure Management Impact Reliability
Kublr
 
PPTX
Why Kubernetes as a container orchestrator is a right choice for running spar...
DataWorks Summit
 
PDF
Docker Tips And Tricks at the Docker Beijing Meetup
Jérôme Petazzoni
 
PDF
Docker-v3.pdf
Bruno Cornec
 
PDF
State of Union - Containerz
Shiva Narayanaswamy
 
PPTX
Kubernetes the deltatre way the basics - introduction to containers and orc...
Rauno De Pasquale
 
PDF
Common primitives in Docker environments
alexandru giurgiu
 
PDF
Real-World Docker: 10 Things We've Learned
RightScale
 
PDF
A DevOps guide to Kubernetes
Paul Czarkowski
 
PDF
DevOpsDays Houston 2019 - Dan Kirkpatrick - My Kubernetes Tool Chain: Open-So...
DevOpsDays Houston
 
PDF
Ivan Zhuravel and Ihor Khlaponin "DC/OS vs Kubernetes. Let the Fight Begin!"
LogeekNightUkraine
 
PPTX
Docker based Architecture by Denys Serdiuk
Lohika_Odessa_TechTalks
 
PPTX
Docker and kubernetes
Meiyappan Kannappa
 
PDF
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
QAware GmbH
 
PDF
[HKOSCON][20180616][Containerized High Availability Virtual Hosting Deploymen...
Wong Hoi Sing Edison
 
oci-container-engine-oke-100.pdf
NandiniSinghal16
 
On Docker and its use for LHC at CERN
Sebastien Goasguen
 
Docker and kubernetes
Dongwon Kim
 
[BarCamp2018][20180915][Tips for Virtual Hosting on Kubernetes]
Wong Hoi Sing Edison
 
Kubernetes stack reliability
Oleg Chunikhin
 
How Self-Healing Nodes and Infrastructure Management Impact Reliability
Kublr
 
Why Kubernetes as a container orchestrator is a right choice for running spar...
DataWorks Summit
 
Docker Tips And Tricks at the Docker Beijing Meetup
Jérôme Petazzoni
 
Docker-v3.pdf
Bruno Cornec
 
State of Union - Containerz
Shiva Narayanaswamy
 
Kubernetes the deltatre way the basics - introduction to containers and orc...
Rauno De Pasquale
 
Common primitives in Docker environments
alexandru giurgiu
 
Real-World Docker: 10 Things We've Learned
RightScale
 
A DevOps guide to Kubernetes
Paul Czarkowski
 
DevOpsDays Houston 2019 - Dan Kirkpatrick - My Kubernetes Tool Chain: Open-So...
DevOpsDays Houston
 
Ivan Zhuravel and Ihor Khlaponin "DC/OS vs Kubernetes. Let the Fight Begin!"
LogeekNightUkraine
 
Docker based Architecture by Denys Serdiuk
Lohika_Odessa_TechTalks
 
Docker and kubernetes
Meiyappan Kannappa
 
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
QAware GmbH
 
[HKOSCON][20180616][Containerized High Availability Virtual Hosting Deploymen...
Wong Hoi Sing Edison
 
Ad

More from CodeOps Technologies LLP (20)

PDF
AWS Serverless Event-driven Architecture - in lastminute.com meetup
CodeOps Technologies LLP
 
PPTX
Understanding azure batch service
CodeOps Technologies LLP
 
PDF
DEVOPS AND MACHINE LEARNING
CodeOps Technologies LLP
 
PDF
SERVERLESS MIDDLEWARE IN AZURE FUNCTIONS
CodeOps Technologies LLP
 
PPT
BUILDING SERVERLESS SOLUTIONS WITH AZURE FUNCTIONS
CodeOps Technologies LLP
 
PPTX
APPLYING DEVOPS STRATEGIES ON SCALE USING AZURE DEVOPS SERVICES
CodeOps Technologies LLP
 
PPTX
BUILD, TEST & DEPLOY .NET CORE APPS IN AZURE DEVOPS
CodeOps Technologies LLP
 
PPTX
CREATE RELIABLE AND LOW-CODE APPLICATION IN SERVERLESS MANNER
CodeOps Technologies LLP
 
PPTX
CREATING REAL TIME DASHBOARD WITH BLAZOR, AZURE FUNCTION COSMOS DB AN AZURE S...
CodeOps Technologies LLP
 
PPTX
WRITE SCALABLE COMMUNICATION APPLICATION WITH POWER OF SERVERLESS
CodeOps Technologies LLP
 
PPTX
Training And Serving ML Model Using Kubeflow by Jayesh Sharma
CodeOps Technologies LLP
 
PPTX
Deploy Microservices To Kubernetes Without Secrets by Reenu Saluja
CodeOps Technologies LLP
 
PDF
Leverage Azure Tech stack for any Kubernetes cluster via Azure Arc by Saiyam ...
CodeOps Technologies LLP
 
PDF
YAML Tips For Kubernetes by Neependra Khare
CodeOps Technologies LLP
 
PDF
Must Know Azure Kubernetes Best Practices And Features For Better Resiliency ...
CodeOps Technologies LLP
 
PPTX
Monitor Azure Kubernetes Cluster With Prometheus by Mamta Jha
CodeOps Technologies LLP
 
PDF
Jet brains space intro presentation
CodeOps Technologies LLP
 
PDF
Functional Programming in Java 8 - Lambdas and Streams
CodeOps Technologies LLP
 
PPTX
Distributed Tracing: New DevOps Foundation
CodeOps Technologies LLP
 
PDF
"Distributed Tracing: New DevOps Foundation" by Jayesh Ahire
CodeOps Technologies LLP
 
AWS Serverless Event-driven Architecture - in lastminute.com meetup
CodeOps Technologies LLP
 
Understanding azure batch service
CodeOps Technologies LLP
 
DEVOPS AND MACHINE LEARNING
CodeOps Technologies LLP
 
SERVERLESS MIDDLEWARE IN AZURE FUNCTIONS
CodeOps Technologies LLP
 
BUILDING SERVERLESS SOLUTIONS WITH AZURE FUNCTIONS
CodeOps Technologies LLP
 
APPLYING DEVOPS STRATEGIES ON SCALE USING AZURE DEVOPS SERVICES
CodeOps Technologies LLP
 
BUILD, TEST & DEPLOY .NET CORE APPS IN AZURE DEVOPS
CodeOps Technologies LLP
 
CREATE RELIABLE AND LOW-CODE APPLICATION IN SERVERLESS MANNER
CodeOps Technologies LLP
 
CREATING REAL TIME DASHBOARD WITH BLAZOR, AZURE FUNCTION COSMOS DB AN AZURE S...
CodeOps Technologies LLP
 
WRITE SCALABLE COMMUNICATION APPLICATION WITH POWER OF SERVERLESS
CodeOps Technologies LLP
 
Training And Serving ML Model Using Kubeflow by Jayesh Sharma
CodeOps Technologies LLP
 
Deploy Microservices To Kubernetes Without Secrets by Reenu Saluja
CodeOps Technologies LLP
 
Leverage Azure Tech stack for any Kubernetes cluster via Azure Arc by Saiyam ...
CodeOps Technologies LLP
 
YAML Tips For Kubernetes by Neependra Khare
CodeOps Technologies LLP
 
Must Know Azure Kubernetes Best Practices And Features For Better Resiliency ...
CodeOps Technologies LLP
 
Monitor Azure Kubernetes Cluster With Prometheus by Mamta Jha
CodeOps Technologies LLP
 
Jet brains space intro presentation
CodeOps Technologies LLP
 
Functional Programming in Java 8 - Lambdas and Streams
CodeOps Technologies LLP
 
Distributed Tracing: New DevOps Foundation
CodeOps Technologies LLP
 
"Distributed Tracing: New DevOps Foundation" by Jayesh Ahire
CodeOps Technologies LLP
 

Recently uploaded (20)

PPTX
BB FlashBack Pro 5.61.0.4843 With Crack Free Download
cracked shares
 
PDF
AI Prompts Cheat Code prompt engineering
Avijit Kumar Roy
 
PDF
Generic or Specific? Making sensible software design decisions
Bert Jan Schrijver
 
PDF
Empower Your Tech Vision- Why Businesses Prefer to Hire Remote Developers fro...
logixshapers59
 
PDF
Meet in the Middle: Solving the Low-Latency Challenge for Agentic AI
Alluxio, Inc.
 
PDF
Windows 10 Professional Preactivated.pdf
asghxhsagxjah
 
PDF
AI + DevOps = Smart Automation with devseccops.ai.pdf
Devseccops.ai
 
PDF
Dipole Tech Innovations – Global IT Solutions for Business Growth
dipoletechi3
 
PDF
Technical-Careers-Roadmap-in-Software-Market.pdf
Hussein Ali
 
PDF
4K Video Downloader Plus Pro Crack for MacOS New Download 2025
bashirkhan333g
 
PPTX
Function & Procedure: Function Vs Procedure in PL/SQL
Shani Tiwari
 
PDF
Latest Capcut Pro 5.9.0 Crack Version For PC {Fully 2025
utfefguu
 
PDF
Top Agile Project Management Tools for Teams in 2025
Orangescrum
 
PPTX
Comprehensive Risk Assessment Module for Smarter Risk Management
EHA Soft Solutions
 
PDF
Salesforce Experience Cloud Consultant.pdf
VALiNTRY360
 
PDF
Best Web development company in india 2025
Greenusys
 
PPTX
UI5con_2025_Accessibility_Ever_Evolving_
gerganakremenska1
 
PPTX
Transforming Insights: How Generative AI is Revolutionizing Data Analytics
LetsAI Solutions
 
PDF
MiniTool Partition Wizard Free Crack + Full Free Download 2025
bashirkhan333g
 
PDF
10 Salesforce Consulting Companies in Sydney.pdf
DianApps Technologies
 
BB FlashBack Pro 5.61.0.4843 With Crack Free Download
cracked shares
 
AI Prompts Cheat Code prompt engineering
Avijit Kumar Roy
 
Generic or Specific? Making sensible software design decisions
Bert Jan Schrijver
 
Empower Your Tech Vision- Why Businesses Prefer to Hire Remote Developers fro...
logixshapers59
 
Meet in the Middle: Solving the Low-Latency Challenge for Agentic AI
Alluxio, Inc.
 
Windows 10 Professional Preactivated.pdf
asghxhsagxjah
 
AI + DevOps = Smart Automation with devseccops.ai.pdf
Devseccops.ai
 
Dipole Tech Innovations – Global IT Solutions for Business Growth
dipoletechi3
 
Technical-Careers-Roadmap-in-Software-Market.pdf
Hussein Ali
 
4K Video Downloader Plus Pro Crack for MacOS New Download 2025
bashirkhan333g
 
Function & Procedure: Function Vs Procedure in PL/SQL
Shani Tiwari
 
Latest Capcut Pro 5.9.0 Crack Version For PC {Fully 2025
utfefguu
 
Top Agile Project Management Tools for Teams in 2025
Orangescrum
 
Comprehensive Risk Assessment Module for Smarter Risk Management
EHA Soft Solutions
 
Salesforce Experience Cloud Consultant.pdf
VALiNTRY360
 
Best Web development company in india 2025
Greenusys
 
UI5con_2025_Accessibility_Ever_Evolving_
gerganakremenska1
 
Transforming Insights: How Generative AI is Revolutionizing Data Analytics
LetsAI Solutions
 
MiniTool Partition Wizard Free Crack + Full Free Download 2025
bashirkhan333g
 
10 Salesforce Consulting Companies in Sydney.pdf
DianApps Technologies
 

On Prem Container Cloud - Lessons Learned

  • 2. § Cloud Native Stack § High Level requirements § Details
  • 3. § Whether to Dockerize ? § Which orchestration tool to use?
  • 4. Host (Bare-metal or Virtual Machine) Linux O/S Monitoring/Mgmt Agents Docker Engine Docker Orchestration DevOps: • CI/CD Pipeline Tooling • Build Service • Trusted & Secure Registry • Image Scanning & Integrity • App & Image Governance • PaaS Operations • LifeCycle Management of Host and Containers • Cluster Management • Network Management • Storage Management • Monitoring & Alerting • User Management • Logging • Security • HA • Backup and Disaster Recovery Misc • Firewall • Load Balancer • Service Discovery • DNS • Proxy • Ingress • … Storage Network Single System View
  • 5. § Docker Host § VM/baremetal § Lifecycle management of hosts ? § Docker Storage for Containers and Volumes? § Network for Host and Docker Containers? § Docker Orchestration § Handling user authentication & authorization § How to expose services ? § How to access legacy backends ? § How to handle resource management for different users and teams ? § Handling HA, backup & restore § Docker Image Build & Distribution § Where to get the base images ? § How to handle multi-arch builds ? § How to scan the images for any existing vulnerabilities ? § Should the images be stored on public registry or private registry ? § Configuration management § How to manage keys, secrets and runtime configuration of containers? § Logging § What logging mechanism to use for containers and host ? § Should we use same or different logging mechanism for containers and host ? § Monitoring § How to monitor host & containers ? § How to integrate into existing enterprise wide monitoring solution ?
  • 7. § Every orchestration s/w (Kubernetes, Docker swarm, Mesos- marathon) is opinionated when it comes to describing a containerized application (pattern) § Developers and Operators need to be in agreement. § This session is mostly focused on Kubernetes
  • 9. § Key Points to Remember § AUFS is not supported by any Linux Distribution § OverlayFS is a good choice – check support statement § Devicemapper with Direct-LVM is a decent (& supported) option § https://docs.docker.com/engine/userguide/storagedriver/device- mapper-driver/ § Storage sizing depends on the role of the host § Building Docker images requires significantly more storage
  • 10. § NFS § HostPath § Use a specific directory or file on the host § The directory can be from local storage or external storage (eg. SAN) § Many more options in Kubernetes - Gluster, Ceph, etc. § NFS and HostPath are good options for on-prem Kubernetes deployments
  • 11. § Overlay (eg. Flannel) § Easier maintenance § Has performance overheads § Flat § Maintenance overheads (manual partitioning and management of IP address space) § Better performance § Layer-3 (eg. Calico) § Easier maintenance § Better performance § Provides network policy config § Calico is a good choice for Docker Networking with Kubernetes § Calico/Flannel comparison Ref: http://chunqi.li/2015/11/15/Battlefield-Calico- Flannel-Weave-and-Docker-Overlay-Network/
  • 12. § Base Image § From Public Registries like DockerHub § Create your own § Generic Best Practice § Use layering § One layer for base, one for user configuration and one for application § Leverage ‘USER’ directive to run programs inside container as non-root. § Use environment variables for runtime configuration § Use volumes for storing application data § Ensure regular scanning of images § Multi-architecture Builds § Use architecture emulators or native multi-arch build farms § Use fat (V2) image manifest or labels in the image name (ppc64le/mysql, mysql-ppc64le) § Example using arch emulator for multi-arch build - https://goo.gl/eU0Qbj
  • 13. § Run your own private registry leveraging opensource docker distribution code (available with all Linux distributions) § Commercial Docker orchestration tools ships with private registry (IBM Spectrum Conductor for Containers, RedHat OpenShift, Docker DataCenter etc) § Standalone 3rd party solutions available as well § Docker Trusted Registry (DTR) § Artifactory § Vulnerability Scanning of Docker Images § Integrated with 3rd party solutions § Setup your own (Clair, atomic-scan) § Example using Clair - https://goo.gl/Ff3ACw
  • 14. § Authentication § Static Password File § Certificate Based § Token Based § OpenID § KeyStone (required for LDAP/AD authentication) § Authorization § Role Based § Attribute Based § Example LDAP/AD authentication setup with Kubernetes - https://goo.gl/5qfy80
  • 15. § Use Kubernetes Namespaces § One namespace per user or group § Separate namespaces for Dev/Test/Staging/Build § Specify Resource Quota (cpu, mem, #pods, #services, #RCs, #PersistentVolumeClaims) for each namespace § Use the same Kubernetes cluster for dynamic builds § Example Jenkins Build Pipeline Setup: https://goo.gl/OvHKm1
  • 16. § Security Constraints § Allowed/Disallowed container operations § Explicitly add/remove Linux capabilities from containers § Disable Linux system calls § Allow/Disallow container to run as root § Pod Security Policy § Governs what actions a pod can perform § Selinux/AppArmor rules § Network Policies § Governs how Pods communicates with each other § Always set Kubernetes cluster wide security policies for production deployments § Example Cluster-wide Security Policy Setup - https://goo.gl/oBKm2S
  • 17. § Internal (service not accessible outside of Kubernetes cluster) § ClusterIP (kube-proxy) § External § External IPs § NodePort § Cloud Loadbalancer (for off-prem) § Ingress § Requires supported Ingress controllers eg. nginx, ha-proxy § 3rd party controllers (check with vendors) – F5, NetScaler etc. § Use Ingress for exposing services in Kubernetes
  • 18. § Kubernetes state is maintained in ETCD which is a distributed key-value store § Deployment considerations for ETCD § Fault-tolerant cluster § Storage for ETCD (Network and IO latency directly affects ETCD) § ETCD data backup and restore § Enable TLS § Deployment considerations for ETCD - https://goo.gl/n5VX1f
  • 19. § Explicitly create a Kubernetes Endpoint and a Service § Create a Kubernetes Endpoint with IP and Port details of the Legacy Backend § Create a Kubernetes Service to expose the Endpoint § Complete Example - https://goo.gl/V8TKnK
  • 20. § Docker Logging § Which docker logging driver to use – json, syslog, journald etc. § Kubernetes metadata is available as part of docker labels § Kubernetes Logging § If using systemd based Linux distro, then by default all logging is to journald § If ForwardToSyslog (/etc/systemd/journald.conf) is set to Yes, then logs will be available in syslog (rsyslog) as well § All kubernetes logs are in journald or /var/log/messages (if ForwardToSyslog is set to Yes). § Centralized logging § Docker/Kubernetes -> Rsyslog -> ELK § Docker/Kubernetes -> Rsyslog -> Splunk § Log rotation for Docker and Kubernetes is external and needs to be handled accordingly
  • 21. Kubernetes Cluster Heapster (Aggregator) InfluxDB SinkSource Grafana • What if you want to integrate Kubernetes monitoring with your existing enterprise monitoring solution ? • Write your own sink ? • Use a different monitoring solution than Heapster • Note: Horizontal POD Autoscaling based on CPU utilization leverages Heapster ELK …
  • 22. § Docker Orchestration options are opinionated § OverlayFS or Devicemapper with Direct-LVM for Docker Storage § Plan for ETCD fault-tolerance, backup and restore § NFS and HostPath for Docker Volumes § Use Image Signing and Scanning § Calico for Docker networking (low-overhead, supports Kubernetes Network Policy) § Use Kubernetes Security Policies § Use Ingress for exposing Services § Use Kubernetes Authentication and RBAC Authorization § Use Kubernetes namespaces for efficient cluster resource management