kubernetes学习记录(二)基础概念

一、pod概念

分类:自助式pod 控制器管理的pod

k8s为控制器管理pod

有pod就有一个pause容器被启动。一个pod有>=1个容器,这些容器公用pause的网络栈,存储卷。因此容器间进程互相看的见。localhost:端口,就可访问其他容器。原因,他们共用pause的网络栈。所以端口不能冲突。

ReplicationController简称RC(保持用户定义的副本数,容器异常退出。自动创建新的pod)

ReplicaSet简称RS(RC+支持集合式的selector,(对应创建pod时的一堆标签))

(官方正逐渐使用RS)

Deployment(虽然RS可独立使用,但一般还是建议使用Deployment来自动管理RS,这样不用担心和其他机制的不兼容问题 例pod滚动更新(RS不支持滚动更新,Deployment支持 ))

可以通过创建Deployment指定副本数,创建多个类似的pod

这三种有一定重合性

HPA:也是一个对象,需要被定义,基于RS定义的,cpu>80 max 10 min 2 (本来有几个)建pod

利用率降低,回收pod。

StatefulSet:解决有状态服务的问题。例 稳定的持久化存储,稳定的网络标志,有序部署,有序扩展,即pod时有顺序的,有序收缩,有序删除。

DaemonSet:确保全部或者一些node上运行一个pod的副本。

job: 负责批处理任务,即今执行一次的任务。

cron job :管理基于时间的Job

二、网络通信方式

假定了所有pod都在一个可以直接连通的扁平的网络空间中。

GCE:谷歌云服务器,有现成的网络模型

在自己的设备中部署集群,要先实现这个网络假设,将不同的节点上的docker容器之间的互相访问打通,例:flannel

flannel是CoreOS团队针对k8s设计的一个网络规划服务,简单来说,它的功能是让集群中不同节点主机创建的Docker容器都具有全集群唯一的虚拟IP地址。而且它还能在这些Ip地址之间建立一个覆盖网络(overlay network),通过这个覆盖网络,将数据原封不动的传递到目标容器内。

各pod间的通讯,Overlay Network

pod与service之间的通讯:各节点的Iptables规则。老了  现在为lvs

 flannel0是网桥,专门收集docker0网桥转发出来的数据报。

网段:自己理解为是第三个数,15、20等,从图中可以看出 web app1和backend不在一个网段。

pod到外网:masquerade

外网访问pod:service网络  借助nodeport进行映射

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值