Based on AWS, Azure and IBM ressources
Abderrahmane Smimite
Availability is usually a part of the SLA (Service Level Agreement)
Nines | percent of uptime | Max downtime/ year | eq. Max downtime/day |
---|---|---|---|
1 | 90% | 36,5 days | 2,4 hrs |
2 | 99% | 3,65 days | 14 min |
3 | 99,9% | 8,76 hrs | 86 sec |
4 | 99,99% | 52,6 min | 8,6 sec |
5 | 99,999% | 5,25 min | 0,86 sec |
simple calculator: https://uptime.is
Recovery Time Objective (RTO)
Recovery Point Objective (RPO)
How much money/time can you invest to meet these objectives
How quickly must the system recover?
How much data can you afford to lose?
Source: wikipedia
Complex systems:
Fault tolerance
Built-in Redundancy (self-healing) of an application component
Scalability
Capability to accommodate to growth without changing application design
Recoverability
Process, policies and procedures related to restoring service after catastrophic event
Implement redundancy when possible in order to prevent single failure from bringing down the entire system
Golden rule:
Note: maybe you need multi-cloud, maybe you don't
(there's a letter missing btw)
Golden rule:
(c) 2018, Amazon Web Services
Kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications.
Kubernetes is
an orchestrator
library
dependencies
App
library
Containerized app
App 1
App 2
App N
Registry
Master node
Store
Dashboard/CLIs/APIs
Scheduler
Controller
Worker node
Proxy
Kubelet
App 1
Worker node
Proxy
Kubelet
App 1
App 2
Docker
Kubernetes
Kubernetes Features
1 - Management of Pods
Worker node
App 1
App 2
App N
POD
POD
2 - Replication controller
and load balancer
Worker node
POD1
POD1
Worker node
POD1
3 - Storage management
Kubernetes Features
4 - Ressource monitoring and health checking
5 - Horizontal Auto Scaling
6 - Service discovery
Kubernetes Features
7 - Networking (container to container, pod to pod, pod to external)
8 - services
9 - Rolling deployment and rollback
10 - Logging
Kubernetes Features
+ 2 (personal) bonuses
11 - Good transition to Infrastructure as Code (IaC)
12 - makes micro services architecture "less" scary