k8s入门-集群组件介绍

目录

k8s是谷歌以Borg为前身,基于谷歌15年生产环境经验的基础上开源的一个项目。

k8s致力于提供跨主机集群的自动部署、扩展、高可用以及运行应用程序容器的平台。

k8s集群包含master节点和node节点,是一个主从架构,通常我们会用3台服务器已高可用的形式作为主节点,不进行业务部署(可以设置要不要在主节点上部署应用);从节点作为工作节点。

以下为集群组件及功能:

master节点:集群的控制中枢

kube-apiserver:集群的控制中枢,各模块间信息交互需要经过kube-apiserver,同时它也是集群管理、资源配置、集群安全机制的入口。

controller-manager:集群的状态管理器,保证pod等资源始终达到一个期望的效果,需要和apiserver进行通信,在需要的时候创建、更新或删除所管理的资源。

scheduler:集群的调度中心,他会根据指定的一系列条件选择最佳节点部署pod;就是说如果我们有5个node节点,当我们创建一个pod时候,是由scheduler决定这个pod部署在哪个节点上。

etcd cluster:键值数据库,存放集群信息;生产环境中最好etcd与集群分离,建议3个以上节点(奇数),使用ssd硬盘安装。

node节点:工作节点,也叫worker节点

kubelet:负责监听节点上pod状态,同时负责上报节点与节点上pod状态,负责与master节点通信,并管理pod。

kube-proxy:负责pod之间的通信和负载均衡,将指定的流量分发到后端机器上。
查看kube-proxy工作模式:

curl 127.0.0.1:10249/proxyMode

我使用的是ipvs。

ipvs:监听master节点增加和删除service以及endpoint的消息,调用netlink接口创建相应对的ipvs规则。通过ipvs规则,将流量转发至相应的pod上。
iptables:监听master节点增加和删除service以及endpoint的消息,对于每一个service,他都会创建一个iptables规则,并将service的clusterIP代理到后端相应的pod。

kube-system命名空间:系统组件pod

calico:符合CNI标准的网络插件,给每个pod生成一个唯一额IP地址,并且将每个节点当做一个路由器(实现或节点通信)。

coreDNS:用于k8s集群内部service解析,可以让pod把service名称解析为IP地址,然后通过service的IP地址进行连接到对应应用上。

docker:容器引擎,负责对容器的管理

metrics-server:查看pod占用资源情况

以上就是k8s入门-集群组件介绍的详细内容,更多关于k8s入门-集群组件介绍的资料请关注我们其它相关文章!

(0)

相关推荐

  • C语言使用DP动态规划思想解最大K乘积与乘积最大问题

    最大K乘积问题 设I是一个n位十进制整数.如果将I划分为k段,则可得到k个整数.这k个整数的乘积称为I的一个k乘积.试设计一个算法,对于给定的I和k,求出I的最大k乘积. 编程任务: 对于给定的I 和k,编程计算I 的最大k 乘积. 需求输入: 输入的第1 行中有2个正整数n和k.正整数n是序列的长度:正整数k是分割的段数.接下来的一行中是一个n位十进制整数.(n<=10) 需求输出: 计算出的最大k乘积. 解题思路:DP 设w(h,k) 表示: 从第1位到第K位所组成的十进制数,设m(i,j)

  • c++基础算法动态DP解决CoinChange问题

    目录 问题来源 问题简述 解决方案 真正的DP 补充--硬币不能重复使用 补充2--不同顺序表示不同组合 结束语 问题来源 这是Hackerrank上的一个比较有意思的问题,详见下面的链接: https://www.hackerrank.com/challenges/ctci-coin-change 问题简述 给定m个不同面额的硬币,C={c0, c1, c2-cm-1},找到共有几种不同的组合可以使得数额为n的钱换成等额的硬币(每种硬币可以重复使用). 比如:给定m=3,C={2,1,3},n

  • C++动态规划之背包问题解决方法

    本文实例讲述了C++动态规划之背包问题解决方法.分享给大家供大家参考.具体分析如下: 问题描述: 背包的最大容量为W,有N件物品,每件物品重量为w,价值为p,怎样选择物品能使得背包里的物品价值最大? 输入: 10 3   (W,N) 4 5   (w,p) 6 7   (w,p) 8 9   (w,p) 实现代码: #include <stdio.h> #define THING 20 #define WEIGHT 100 int arr[THING][WEIGHT]; /* 背包容量为wei

  • C语言矩阵连乘 (动态规划)详解

    动态规划法 题目描述:给定n个矩阵{A1,A2....An},其中Ai与Ai+1是可以相乘的,判断这n个矩阵通过加括号的方式相乘,使得相乘的次数最少! 以矩阵链ABCD为例 按照矩阵链长度递增计算最优值 矩阵链长度为1时,分别计算出矩阵链A.B.C.D的最优值 矩阵链长度为2时,分别计算出矩阵链AB.BC.CD的最优值 矩阵链长度为3时,分别计算出矩阵链ABC.BCD的最优值 矩阵链长度为4时,计算出矩阵链ABCD的最优值 动归方程: 分析: k为矩阵链断开的位置 d数组存放矩阵链计算的最优值,

  • k8s入门-集群组件介绍

    目录 k8s是谷歌以Borg为前身,基于谷歌15年生产环境经验的基础上开源的一个项目. k8s致力于提供跨主机集群的自动部署.扩展.高可用以及运行应用程序容器的平台. k8s集群包含master节点和node节点,是一个主从架构,通常我们会用3台服务器已高可用的形式作为主节点,不进行业务部署(可以设置要不要在主节点上部署应用):从节点作为工作节点. 以下为集群组件及功能: master节点:集群的控制中枢 kube-apiserver:集群的控制中枢,各模块间信息交互需要经过kube-apise

  • k8s入门集群组件介绍及概念理解

    目录 master节点:集群的控制中枢 node节点:工作节点,也叫worker节点 kube-system命名空间:系统组件pod k8s是谷歌以Borg为前身,基于谷歌15年生产环境经验的基础上开源的一个项目. k8s致力于提供跨主机集群的自动部署.扩展.高可用以及运行应用程序容器的平台. k8s集群包含master节点和node节点,是一个主从架构,通常我们会用3台服务器已高可用的形式作为主节点,不进行业务部署(可以设置要不要在主节点上部署应用):从节点作为工作节点. 以下为集群组件及功能

  • centos7系统部署k8s集群详细介绍

    目录 1 版本.规划 1.1 版本信息: 1.2集群规划 2.部署 1.关闭防火墙 2.关闭selinux 3.关闭swap 4.添加主机名和IP对应关系 5.将桥接的IPV4流量传递给iptables的链 6.安装docker 安装: 7.添加阿里云yum软件源 8.安装kubeadm.kubelet.kubectl 9.初始化master节点 10.安装pod网络插件(CNI) 11.node节点加入集群 1 版本.规划 1.1 版本信息: 名称 版本号 内核 3.10.0-1160.el7

  • Kubernetes(K8S)容器集群管理环境完整部署详细教程-下篇

    本文系列: Kubernetes(K8S)容器集群管理环境完整部署详细教程-上篇 Kubernetes(K8S)容器集群管理环境完整部署详细教程-中篇 Kubernetes(K8S)容器集群管理环境完整部署详细教程-下篇 在前一篇文章中详细介绍了Kubernetes(K8S)容器集群管理环境完整部署详细教程-中篇,这里继续记录下Kubernetes集群插件等部署过程: 十一.Kubernetes集群插件 插件是Kubernetes集群的附件组件,丰富和完善了集群的功能,这里分别介绍的插件有cor

  • Kubernetes(K8S)容器集群管理环境完整部署详细教程-中篇

    本文系列: Kubernetes(K8S)容器集群管理环境完整部署详细教程-上篇 Kubernetes(K8S)容器集群管理环境完整部署详细教程-中篇 Kubernetes(K8S)容器集群管理环境完整部署详细教程-下篇 接着Kubernetes(K8S)容器集群管理环境完整部署详细教程-上篇继续往下部署: 八.部署master节点 master节点的kube-apiserver.kube-scheduler 和 kube-controller-manager 均以多实例模式运行:kube-sc

  • Kubernetes(K8S)容器集群管理环境完整部署详细教程-上篇

    Kubernetes(通常称为"K8S")是Google开源的容器集群管理系统.其设计目标是在主机集群之间提供一个能够自动化部署.可拓展.应用容器可运营的平台.Kubernetes通常结合docker容器工具工作,并且整合多个运行着docker容器的主机集群,Kubernetes不仅仅支持Docker,还支持Rocket,这是另一种容器技术.Kubernetes是一个用于容器集群的自动化部署.扩容以及运维的开源平台. 本文系列: Kubernetes(K8S)容器集群管理环境完整部署详

  • Redis cluster集群的介绍

    1.前言 Redis集群模式主要有2种: 主从集群.分布式集群. 前者主要是为了高可用或是读写分离,后者为了更好的存储数据,负载均衡. redis集群提供了以下两个好处 1.将数据自动切分(split)到多个节点 2.当集群中的某一个节点故障时,redis还可以继续处理客户端的请求. 一个 redis 集群包含 16384 个哈希槽(hash slot),数据库中的每个数据都属于这16384个哈希槽中的一个.集群使用公式 CRC16(key) % 16384 来计算键 key 属于哪个槽.集群中

  • Centos7 安装部署Kubernetes(k8s)集群实现过程

    目录 一.系统环境 二.前言 三.Kubernetes 3.1 概述 3.2 Kubernetes 组件 3.2.1 控制平面组件 3.2.2 Node组件 四.安装部署Kubernetes集群 4.1 环境介绍 4.2 配置节点的基本环境 4.3 节点安装docker,并进行相关配置 4.4 安装kubelet,kubeadm,kubectl 4.5 kubeadm初始化 4.6 添加worker节点到k8s集群 4.7 部署CNI网络插件calico 4.8 配置kubectl命令tab键自

  • Tomcat集群和Session复制应用介绍

    一个配置文件: 复制代码 代码如下: <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" channelSendOptions="6"> <Manager className="org.apache.catalina.ha.session.BackupManager" expireSessionsOnShutdown="false"

  • 关于Openfire集群源码的分析

    本文介绍了openfire的相关内容,这个东西现在用的人好像不多了.算了,我们看看具体内容. openfire是什么? Openfire 采用Java开发,开源的实时协作(RTC)服务器基于XMPP(Jabber)协议.Openfire安装和使用都非常简单,并利用Web进行管理.单台服务器可支持上万并发用户.由于是采用开放的XMPP协议,您可以使用各种支持XMPP协议的IM客户端软件登陆服务.如果你想轻易地构建高效率的即时通信服务器,那就选择它吧! openfire能做什么? 我们要了解Open

随机推荐