docker 和 containerd
docker 由 docker-client ,dockerd,containerd,docker-shim,runc组成,containerd是docker的基础组件之一,
从k8s的角度看,可以选择 containerd 或 docker 作为运行时组件,
其中 containerd 调用链更短,组件更少,更稳定,占用节点资源更少。
k8s后来的版本开始默认使用 containerd 。
containerd 相比于docker , 多了 namespace 概念,每个 image 和 container 都会在各自的namespace下可见。
docker 作为 k8s 容器运行时,调用关系为:
kubelet --> dockershim (在 kubelet 进程中) --> dockerd --> containerd
containerd 作为 k8s 容器运行时,调用关系为:
kubelet --> cri plugin(在 containerd 进程中) --> containerd
k8s使用etcd组件作为一个高可用、强一致性的服务发现存储。用于配置共享和服务发现。
etcd特点
简单:基于http+json的api
安全:可选SSL客户认证机制
快速:每个实例每秒支持一千次写操作
可信:使用Raft算法实现分布式
k8s架构组成
kubectl
master(kubeScheduler kubeApiserver kubeControllerManager)
node(kubelet kubeProxy DockerEngine)
etcdCluster
K8S SC PV PVC
存储类(StorageClass)定义了持久卷声明(PersistentVolumeClaim)所需的属性和行为,
持久卷(PersistentVolume)是实际的存储资源,
持久卷声明(PersistentVolumeClaim)是 Pod 对持久卷的请求。
握笔姿势小儿歌
老大老二握成圆
指尖相对不相连
把笔放在中指上
老四老五来帮忙
指实掌虚腕用力
写起字来不费力
docker是一个Client-Server结构的系统,docker守护进程运行在宿主机上,
守护进程从客户端接受命令并管理运行在主机上的容器,容器是一个运行时环境,
一个月工资3000多,想买一件8000多的羽绒服,
然后我妈说:还不如在家休息几个月,等天气暖和了再去上班
List list = new ArrayList();
list.removeIf("null"::equals);
芒格:真正的价值投资要从40岁开始。
对普通人来说,太年轻了,知识、阅历、财富的积累都不足以从事价值投资。
zuul的作用
动态路由
过滤器 登录拦截,权限判断等
负载均衡 通过ribbon实现
熔断降级 通过hystrix实现
第一页
上一页
下一页
最后一页