自动化容器部署和复制。 实时弹性收缩容器规模。 容器编排成组,并提供容器间的负载均衡。 调度:容器在哪个机器上运行。
kubectl:客户端命令行工具,作为整个系统的操作入口。 kube-apiserver:以REST API服务形式提供接口,作为整个系统的控制入口。 kube-controller-manager:执行整个系统的后台任务,包括节点状态状况、Pod个数、Pods和Service的关联等。 kube-scheduler:负责节点资源管理,接收来自kube-apiserver创建Pods任务,并分配到某个节点。 etcd:负责节点间的服务发现和配置共享。 kube-proxy:运行在每个计算节点上,负责Pod网络代理。定时从etcd获取到service信息来做相应的策略。 kubelet:运行在每个计算节点上,作为agent,接收分配该节点的Pods任务及管理容器,周期性获取容器状态,反馈给kube-apiserver。 DNS:一个可选的DNS服务,用于为每个Service对象创建DNS记录,这样所有的Pod就可以通过DNS访问服务了。
简单:基于http+json的api让你用curl命令就可以轻松使用。 安全:可选SSL客户认证机制。 快速:每个实例每秒支持一千次写操作。 可信:使用Raft算法充分实现了分布式。
环境变量:当创建一个Pod的时候,kubelet会在该Pod中注入集群内所有Service的相关环境变量。需要注意的是,要想一个Pod中注入某个Service的环境变量,则必须Service要先比该Pod创建。这一点,几乎使得这种方式进行服务发现不可用。
DNS:可以通过cluster add-on的方式轻松的创建KubeDNS来对集群内的Service进行服务发现。
PID命名空间:Pod中的不同应用程序可以看到其他应用程序的进程ID。 网络命名空间:Pod中的多个容器能够访问同一个IP和端口范围。 IPC命名空间:Pod中的多个容器能够使用SystemV IPC或POSIX消息队列进行通信。 UTS命名空间:Pod中的多个容器共享一个主机名。 Volumes(共享存储卷):Pod中的各个容器可以访问在Pod级别定义的Volumes。
内网接入交换机:也称为TOR(top of rack),是服务器接入网络的设备。每台内网接入交换机下联40-48台服务器,使用一个掩码为/24的网段作为服务器内网网段。 内网核心交换机:负责IDC内各内网接入交换机的流量转发及跨IDC流量转发。 MGW/NAT:MGW即LVS用来做负载均衡,NAT用于内网设备访问外网时做地址转换。 外网核心路由器:通过静态互联运营商或BGP互联美团统一外网平台。
二层负载均衡:基于MAC地址的二层负载均衡。 三层负载均衡:基于IP地址的负载均衡。 四层负载均衡:基于IP+端口的负载均衡。 七层负载均衡:基于URL等应用层信息的负载均衡。
Service可能有很多个,如果每个都绑定一个node主机端口的话,主机需要开放外围的端口进行服务调用,管理混乱。 无法应用很多公司要求的防火墙规则。
A类 1.0.0.0-1226.255.255.255,默认子网掩码/8,即255.0.0.0 B类 128.0.0.0-191.255.255.255,默认子网掩码/16,即255.255.0.0 C类 192.0.0.0-223.255.255.255,默认子网掩码/24,即255.255.255.0 D类 224.0.0.0-239.255.255.255,一般用于组播 E类 240.0.0.0-255.255.255.255(其中255.255.255.255为全网广播地址),E类地址一般用于研究用途
0.0.0.0 严格来说,0.0.0.0已经不是一个真正意义上的IP地址了。它表示的是这样一个集合:所有不清楚的主机和目的网络。这里的不清楚是指在本机的路由表里没有特定条目指明如何到达。作为缺省路由。7.127.0.0.1 本机地址 224.0.0.1 组播地址。如果你的主机开启了IRDP(internet路由发现,使用组播功能),那么你的主机路由表中应该有这样一条路由。 169.254.x.x 使用了DHCP功能自动获取了IP的主机,DHCP服务器发生故障,或响应时间太长而超出了一个系统规定的时间,系统会为你分配这样一个IP,代表网络不能正常运行。 10.xxx、172.16.x.x~172.31.x.x、192.168.x.x 私有地址,大量用于企业内部。保留这样的地址是为了避免亦或是哪个接入公网时引起地址混乱。
文章转载自DevHome,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。