Basic concepts of docker/kubernete/kata-container
Kubereters
An open-source system for automating deployment, scaling, and management of containerized applications;
Traditional >> Hypervisor >> Container
Traditional:
No way to define resource boundaries for applications in a physical server before, run each applications on a different physical server;
Hypervisor:
Will run multi VMs on a single physical server's CPU;
Allow applications to be isolated between VMs and provides a level of securiy as the infomation of one application cannot be freely accessed by another application;
Each VM is a full machine running all the components, including its own operating system;
Container:
Have relaxed isolation properties to share the operating system among the applications;
Lightweight;
A container has its own filesytem/CPU/memory/process space/..
Are portable across clouds and OS distributions because they are decoupled from the underlying infrastrucure;
Benifits of containers:
1. Agile application creation and deployment: increased ease and efficiency of container image creation compared to VM image use
2. Continuous development, integrations and deployment:
provide for reliable and frequent container image build and deployment with quick and easy rollbacks;
3. Dev and Ops separation of concerns: create application container images at build/release time rather than deployment time, thereby decoupling applications from infrastructure;
4. Obervability not only surfaces OS-level information and metrics, but also application health and other signals;
5. Environmental consistency across development, testing, and production; Runs the same on a laptop as it does in the cloud;
6. Cloud and OS distribution portabilty: Runs on Ubuntu, RHEL, CoreOS, on-prem, Google Kubernetes Engine, and anywhrere else;
7. Application-centric management;
8. Loosely coupled, distributed;
9. Resource isolation;
10. Resource utilization;
Benefits of Kubernetes:
1. Service discovery and load balancing
kubernetes expose a container using the DNS name or using their own IP address;
if traffic to a container is high, kubernetes is able to load balance and distribute the network traffic so that the deployment is stable;
2. Stroage orchestartion
automatically mount a storage system of local storages/public cloud providers/..
3. Automated rollouts and rollbacks
automake kubernets to create new containers
4. Self-healing
restart fail containers, kill no-respond containers;
5. Automatic bin packing
tell kubernetes how much CPU and RAM each container needs, kubernets can fit containers onto your nodes to make the best use of you resources;
Kubernetes Master
When deploying kubernetes, we wil get a cluster, which is a set of machines (nodes),
that run containerzed applications managed by kubernetes.
A cluster has at least one worker node and at least one master node;
Kubernetes Master is a collection of three processes that run on a single node in your cluster, which is designed as the master node;
Three processes:
Kube-apiserver;
Kube-controller-manager;
Kube-scheduler;
Individual non-master node in cluster run two processes:
which communicates with the Kubernetes Master;
The primary node agent that runs on each node; It can register the node with tha apiserver using one of
the host name;
a flag to override the hostname;
specific logic for a cloud provider;
a network proxy which reflects Kubernetes networking services on each node;
Kubernets network proxy runs on each node, this relects services as defined in the Kubernetes API on each node
and can do simple TCP/UDP and SCTP stream forwarding or round robin TCP/UDP/SCTP forwarding across a set of backends/
Service cluster IPs and ports are currently found through Docker-links-compatible
Kubernetes Objects
Kubernetes contains serveral abstractions representing the state of system;
Basic Kubernetes objects include:
Kata-container
An open-source project and community working to build a standard implement of lightweight VM that feel and perform like containers, but provide the workload isolation and security advantages of VMs;
Kata container Components
- Agent -- The Kata-agent runs inside the virtual machine and sets up the container environment
- KSM throttler -- An optional utility that monitors containers and deduplicates memory to max container density on a host
- Proxy -- A process running on the host and co-ordinates access to the agent running inside the VM
- Runtime -- Be invoked by a container manager and provides high-level verbs to manage containersd
- Shim -- A process that runs on the host, acts as though it is the workload ( which actually runs inside the VM), required to be compliant with th expecations of the OCI runtime sepc
- Hypervisor --
- Kernel -- HV uses a linux kernel to boot the guest image
Docker
Following storage drivers:
- overlay2 is the preferred storage driver, for all currently supported linux distributions, and requires no extra conf
- aufs is the preferred stroage driver for Docker 18.06 or older, when running on Ubuntu 14 on Kernel 3.13 which has no support or ovrlay2
- devicemapper is supported, but requires direct-lvm for production environments, because loopback-lvm, while zero-conf, has very poor performance.
Basic concepts of docker/kubernete/kata-container的更多相关文章
- Kata Container 介绍
docker容器,性能高,不安全:VM虚拟机,安全性好,性能损耗大:Kata Container轻量级虚拟机的容器,即安全,性能也高. 开源容器项目Kata Containers,旨在将虚拟机(VM) ...
- Basic Concepts of Block Media Recovery
Basic Concepts of Block Media Recovery Whenever block corruption has been automatically detected, yo ...
- docker的网络-Container network interface(CNI)与Container network model(CNM)
Overview 目前围绕着docker的网络,目前有两种比较主流的声音,docker主导的Container network model(CNM)和社区主导的Container network in ...
- (二)Basic Concepts 基本概念
Basic Concepts There are a few concepts that are core to Elasticsearch. Understanding these concepts ...
- Docker入门03——Container
1 启动容器 1.1 新建并启动 1.2 启动已终止容器 2 后台运行 3 终止 4 进入容器 5 导入和导出 5.1 导出 5.2 导入 6 删除 1 启动容器 1.1 新建并启动 docker r ...
- CMUSphinx Learn - Basic concepts of speech
Basic concepts of speech Speech is a complex phenomenon. People rarely understand how is it produced ...
- docker Cannot start container [8] System error: exec format error
docker Cannot start container [8] System error: exec format error 学习了:https://www.aliyun.com/jiaoch ...
- Docker 容器(container)
版权所有,未经许可,禁止转载 章节 Docker 介绍 Docker 和虚拟机的区别 Docker 安装 Docker Hub Docker 镜像(image) Docker 容器(container ...
- Docker实现退出container后保持继续运行的解决办法
现象: 运行一个image,例如ubuntu14.04: 1 docker run -it --rm ubuntu:14.04 bash 退出时: 执行Ctrl+D或者执行exit 查看线程: 1 d ...
随机推荐
- CF723D 【Lakes in Berland】
题目链接 题解 CF723D [Lakes in Berland] 首先将边界的水用bfs处理掉 再将中间的每一个湖泊处理出来,存入一个结构体内,结构体里记录湖泊大小和开始点 将湖泊排序从小往大填满, ...
- C#采集摄像头实时画面和抓拍
在.net中,并没有简单直接的操纵摄像头的类.那么如何简单快捷地采集摄像头的画面,进行抓拍等操作呢?答案是调用SharpCapture!专业采集摄像头画面等数据的类库.下面开始演示关键代码,您也可以在 ...
- docker容器入门最佳教程
为什么要写这个 简单回答是:容器技术非常热门,但门槛高. 容器技术是继大数据和云计算之后又一炙手可热的技术,而且未来相当一段时间内都会非常流行. 对 IT 行业来说,这是一项非常有价值的技术.而对 I ...
- 2019 易车java面试笔试题 (含面试题解析)
本人3年开发经验.18年年底开始跑路找工作,在互联网寒冬下成功拿到阿里巴巴.今日头条.易车等公司offer,岗位是Java后端开发,最终选择去了易车. 面试了很多家公司,感觉大部分公司考察的点都差不多 ...
- Java自学-数组 复制数组
Java 如何复制数组 数组的长度是不可变的,一旦分配好空间,是多长,就多长,不能增加也不能减少 步骤 1 : 复制数组 把一个数组的值,复制到另一个数组中 System.arraycopy(src, ...
- pandas-12 数学计算操作df.sum()、df.min()、df.max()、df.decribe()
pandas-12 数学计算操作df.sum().df.min().df.max().df.decribe() 常用的数学计算无非就是加减,最大值最小值,方差等等,pandas已经内置了很多方法来解决 ...
- ES6--Promise讲解
相信凡是写过javascript的童鞋也一定都写过回调方法(callback),简单说回调方法就是将一个方法func2作为参数传入另一个方法func1中,当func1执行到某一步或者满足某种条件的时候 ...
- 图解HTTP(二)
第四章 返回结果的HTTP状体码 1.状态码告知从服务器返回的结果 类别 原因短语 1XX Infomational信息性状态码 接收的请求正在处理中 2XX Success成功状态码 请求正常处 ...
- python day 15: IO多路复用,socketserver源码培析,
目录 python day 15 1. IO多路复用 2. socketserver源码分析 python day 15 2019/10/20 学习资料来自老男孩教育 1. IO多路复用 ''' I/ ...
- RabbitMq 消息队列 在Python端的应用
https://www.cnblogs.com/Xuuuuuu/p/10895552.html rabbit_server持久化,消费者端手动确认保证消息不会丢失.具体代码如下: 1对1生产者端代码: ...