kubernetes 学习笔记--抽象概念--资源对象

1、基本概念

master 组件: api server 、sheduler、controller-manager 、etcd 

node 组件: docker 、kube-proxy、kubelet 

一下为个人理解,若存在偏差请指正

etcd :键值数据库

api server :为统一入口,及所有操作都与api server 通讯,然后更新到etd 数据库

sheduler :调度器,根据deploy 等控制器的操作调度相关pod 至合适的node节点

controller-manager:控制器管理工具,如ReplicaSet、Deployment、DaemonSet等控制器在其管控下实现功能

kubelet :node 节点的代理工具,与 api server通讯并操作节点

kube-proxy:管控service 资源的工具,由其生成对应的iptables或ipvs 规则 

2、抽象概念

kubernetes 中的一个重要概念,称之为资源。像Pod 、Service 、Ingress、ConfigMap、StatefulSet 、node等,在api server 操作中都称之为资源对象。最重要的资源对象为Pod ,一般由ReplicaSet、Deployment等控制器创建。Deployment是ReplicaSet的抽象,多了些调度升级策略等功能。Service 是Pod 对象上的服务抽象,提供某种入口,类似四层代理lvs。Ingress也是如此,类似七层代理nignx、haproxy 等。此图可以很好理解常用资源的关系

service 资源有四种类型ClusterIP、NodePort、LoadBalancer、ExternalName

ClusterIP:集群内部通讯ip,外部不可访问

NodePort:建立在ClusterIP之上,将NodePort 映射至ClusterIP,然后可以通过nodeip:nodeport 访问

LoadBalancer:可用外部的lvs、haproxy等负载均衡工具实现,转发至NodePort 

ExternalName:集群内部访问外部资源用,没有ClusterIP、NodePort

 

Ingress 资源:基于URL、虚拟主机、TLS等类型

因Ingress资源运行模式也是一个pod ,而pod 对外提供服务需要基于service ,因此需要部署成Deployment控制器管控的pod资源或者DaemenSet控制器管控的pod资源。

Deployment控制器管控的pod资源:客户端ip-->externalLB-->NodePort-->service-->ingress  

DaemenSet控制器管控的pod资源:客户端ip-->externalLB-->hostIP:hostPort-->Podip:Port

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值