Kubernetes and Cloud Native Essentials LFS250
Containers are a standardized way to package and ship modern software.
- IMAGE: defines how to build and package container images
- Runtime: designs configs, execution environment and lifecycle of containers. Open source standards worthy considering
- OCI specifies image,runtime, distribution
- CNI - container network interface
- CRI – Container runtime Interface
- CSI - container storage interface
- SMI – service mesh interface KUBERNETES =container orchestration systems, open source platform for managing containerized workloads in the IT sector. Developer hhave a singular view of the application unlike the operations team; An application may have the following items in a node js application...
- Frontend service- end user accesses the frontend
- Db access service - where the frontend stores the data,
- Backend service – accesses the database
- The services are working together and exposed to the end user
- Master node manages the applications running in the compute resources
- Within teh containers there is the: o The applications itself o Requirements o Dependencies for the Underlying Operating systems o Application runtime o Etc
- From an operations team perspective, there are several issues to consider in regards to the compute resources in the orchestration platform when running the application in production. o Deploying on the master COMPUTE work node – 4 vcpus Scaling- Where each node hosts the containers maybe having one or two front end, 3 backends, 3 databases Network - exposing the services to each other and maybe an end user, load balancing Insights – Prometheus and – ability to see the entire service mesh. Self healing and configuration management. What is the difference between VM and container Virtual machine Container Host os, hypervisor, (os,libs, run time application) Host os, runtime engine (docker engine), (actual container with the libraries which will be scaled) Containers usally start with a manifest and if we need a third party service is introduced, it is easily scalable as they are not running on the same Host. In cloud native, it is modular and portable. Cloud native architecture
- Optimize cost , reliability and faster time to market through high level of automation (cicd pipelines to help rebuild the system incase of disaster, accommodate incremental changes, testing and deployment applicatiosn )
- its design patterns that help build and run scalable applications in modern, dynamic environments such as hybrid clouds, private and public when under alot of load.
- Instead of monolithic approach, cloud native architectural designs means we are looking at: o Containers and microservices o Service mesh o Immutable infrastructure - self healing, healthchecks, o Declarative Apis Scaling services that have alot of load like shopping cart and checkout. Despite its advantages, its complex to intergrate microservices architecture. Traditionally, Once you’re inside a zone, you can access every system inside. Patterns like zero trust computing mitigates that by requiring authentication from every user and process. Autoscalling = configure min and max limit of instances, metric to trigger scalling. Esp. On demand pricing models are desired for autoscaling ...it improves resilience and service availability. Means the resources are dybamically adjusted based on the current demand. ...metrics like CPU and memory can decide when to scale based on increase or decreate in loads Horizontal scalling - like spawning new compute resources - new racks and hardware A, B, C Vertical scaling - change in size of hardware like adding more cpu or memory Ram slots IN SERVER A.
Serverless
= abstract the underlying infrastructure
= based on ideal of scalling and provisioning based on events like incoming requests from an event data across ervices, platforms etc.
No need to prepare and configure resources like load balancers, ec2, OS and network to run an application.
Let the cloud provider choose the right environment, just provide the application code.
Ideal for = Event or data streams, scheduled tasks, business logic and batch processing.
FUNDAMENTALS OF CONTAINER ORCHESTRATION
Container Orchestration
Introduction
Container Orchestration
Use of Containers
Container Basics
Running Containers
Demo: Running Containers
Building Container Images
Demo: Building Container Images
Security
Container Orchestration Fundamentals
Networking
Service Discovery & DNS
Service Mesh
Storage
Top comments (0)