10. Container
•A lightweight, stand-alone, executable package of a piece of
software that includes everything needed to run it: code,
runtime, system tools, system libraries, settings.
•Containers share the host operating system rather than the
hardware directly
•Way more lightweight than a VM
•Docker is the most popular implementation
14. Microservices
•An architecture pattern decomposing vertically a
monolith system into loosely coupled subsystems
(microservices). Nothing more. The pattern doesn't
dictate how it should be done technically.
•Just to highlight it: Microservices and Containers
are not the same and totally independent. You can
use Docker with a monolith app, and you can have
several microservices without using Docker at all.
15. Containers content
UI
• Alpine
• Nginx 1.10.2
• Jet app
– html, css, js
Middleware
• Ubuntu
• Java 1.8.0_171
• Tomcat 8.5
• ADF libraries
12.2.1
• ADF BC app (war)
Database
• Oracle Linux
• Oracle DB
11.2.0.2 XE
• DB schema with
dashboard tables
20. •Open Source platform (Google born)
•Orchestration engine for Ops
•A level of abstraction hiding the complexity of a hybrid
environment (prem/cloud)
•Configuration properties
•Load balancing
•Scalability
•Security
•Visibility
Kubernetes
21. • Cluster. Set of physical or VMs. Masters and workers.
• Node. Worker. Minion. A physical or virtual machine. Docker is installed on it.
• Kubelet. Internal service running on each worker node and managed by a master
node. Makes sure that everything works according to configuration files.
Kubernetes Architecture
23. • Pod. Logical set of containers. A smallest deployable and scalable unit
• Replica set. Defines how many instances of a pod should be alive
• Deployment. Creates a Replica Set to bring up a desired number of Pods
Kubernetes Architecture
24. • Service. Logical set of pods with a stable ip/access rules and name. Has a
lightweight internal load balancer.
• Internal, External
Kubernetes Architecture
37. Serverless
• A unit of work consumes resources only when it is used
– Function is a unit of work
• stateless
• serves one goal
• arguments (input) and result (output)
• Orchestration of independent pieces of work (functions as a
service FaaS)
– Carrying state of the entire flow (program)
– Error handling
– Transaction management
38. Serverless
• Code centric paradigm. Hyde Infrastructure.
–Focus on coding resolving business problems and forget about
infrastructure
–Everything is working on some “computing resources”
• Scalability
–Developers don't do anything for scaling. Scaling is handled
automatically.
• Billing
–Don't pay for idle time
–Pay for milliseconds
• Utilization
–Many small pieces running for short time on same VM
39. Serverless Platforms
•AWS Lambda
•Azure Functions
•OpenWhisk
– Open Source / Apache
•Fn
– Open Source / Oracle
– container native
•OpenFaaS
– Open Source / Alex Ellis
– container native
40. Fn
• Fn components are Docker containers
• Requires only Docker engine
• Can run on Kubernetes cluster