KCNA Flashcards
1
Q
Idea of Cloud Native Architecture
A
Optimize software for cost efficiency and reliability
2
Q
Definition of Cloud Native
A
Build and run scalable applications in modern and dynamic environments
3
Q
Reason for Cloud Native
A
Come away from the monolithic approach
4
Q
Characteristics of Cloud Native Applications
A
- High level of automation
- Self healing
- Scalable
- (Cost-) Efficient
- Easy to maintain
- Secure by default
5
Q
Autoscaling
A
- vertical scaling
- add more CPU & RAM to the VM so it can handle more
- horizontal scaling
- add more servers / racks to the underlying infrastructure so loadbalancing can kick in
6
Q
Serverless
A
- servers are still ofc required
- developers don’t have to deal with things like network, Vms, operating systems etc..
- Function as a Service (FaaS) by cloud vendors
7
Q
Open Standards
A
- OCI Spec: image, runtime and distribution specification on how to run, build and distribute containers
- Container Network Interface (CNI): Networking for Containers
- Container Runtime Interface (CRI): Runtimes in Container Orchestration Systems
- Container Storage Interface (CSI): Storage in Container Orchestration Systems
- Service Mesh Interface (SMI)
8
Q
Use of Containers
A
- running applications more efficiently
- manage dependencies the application needs easily
9
Q
Container basics
A
- originates from the “chroot” command
- nowadays, namespaces and cgroups are used
- share kernel of host machine
- are only isolated processes
10
Q
4 Cs (outter to inner)
A
- Cloud
- Cluster
- Container
- Code
11
Q
Security with Containers
A
- don’t rely on the isolation properties for security
- containers share kernel with host → risk
- containers can have kernel capabilities which increase the risk
- execution of processes with too many privileges such as root or admin
- use of public images is also a risk
12
Q
Container Orchestration Fundamentals
A
- schedule multiple containers to servers in an efficient way
- allocate resources to containers
- Manage availability of containers
- Scale containers if load increases
- provide networking to connect containers
- provision storage for persistent container data
13
Q
Networking within Containers
A
- Microservice has interface implemented that can be called for a request
- Network namespaces allow own unique IP adresses and (same) port allocations
- container ports can be mapped to a host ports for accessability
14
Q
Service Discovery
A
DNS:
- modern DNS servers with API to register new services
Key-Value-Store:
- database to store information about services, f.e. etcd, Consul or Apache Zookeeper
15
Q
Service Mesh
A
- adds a proxy server to every container in your architecture
- this can modify and/or filter network traffic between server and client
- nginx, haproxy and envoy are techs for this