Kubernetes Scheduler是一个策略丰富.拓扑感知.工作负载特定的功能,调度器显著影响可用性.性能和容量.调度器需要考虑个人和集体的资源要求.服务质量要求.硬件/软件/政策约束.亲和力和反亲和力规范.数据局部性.负载间干扰.完成期限等.工作负载特定的要求必要时将通过 API 暴露. kube-scheduler是Kube-Master相关的3个服务之一(ApiServer.Controller Manager.Scheduler),是有状态的服务,会修改集群的状态信息. 如果多个m…
kube-controller-manager运行控制器,它们是处理集群中常规任务的后台线程 Controller Manager就是集群内部的管理控制中心,由负责不同资源的多个Controller构成,共同负责集群内的Node.Pod等所有资源的管理,比如当通过Deployment创建的某个Pod发生异常退出时,RS Controller便会接受并处理该退出事件,并创建新的Pod来维持预期副本数. 几乎每种特定资源都有特定的Controller维护管理以保持预期状态,而Controller M…
Etcd是Kubernetes集群中的一个十分重要的组件,用于保存集群所有的网络配置和对象的状态信息. 整个kubernetes系统中一共有两个服务需要用到etcd用来协同和存储配置,分别是 网络插件flannel.对于其它网络插件也需要用到etcd存储网络的配置信息 kubernetes本身,包括各种对象的状态和元信息配置 Etcd是CoreOS基于Raft开发的分布式key-value存储,可用于服务发现.共享配置以及一致性保障(如数据库选主.分布式锁等) ETCD的主要功能: 基本的key…
API Server简介 Kubernetes API Server提供了K8S各类资源对象(如:pod.RC.Service等)的增删改查及watch等HTTP Rest接口,是整个系统的数据总线和数据中心. Kubernetes API Server功能如下: 1.提供了集群管理的REST API接口(包括认证授权.数据校验以有集体状态变更) 2.提供其他模块之间的数据交互和通信的枢纽(其它模块通过api server查询或者修改数据,只有它才能 直接操作etcd) 3.是资源配额控制的入口…
Flannel简介 ​ Flannel是CoreDNS团队针对Kubernetes设计的一个网络规划服务,简单来说,它的功能是让集群中的不同节点主机创建的Docker容器都具有全集群唯一的虚拟IP地址.但在默认的Docker配置中,每个Node的Docker服务会分别负责所在节点容器的IP分配.Node内部的容器之间可以互相访问,但是不能跨主机(Node)网络相互间是不能直接通信的.Flannel设计目的就是为集群中所有节点重新规划IP地址的使用规则,从而使得在不同的节点上的容器能够获得"同属一…
目标 理解线上部署考虑的因素 学会编译安装以及二进制安装mysql 学会升级mysql 学会多实例部署mysql数据库 学会合理部署mysql线上库   考虑因素: 版本选择,5.1,5.5还是5.6? 分支选择,官方社区版?percona server?mariadb? 推荐官方版,简单易上手 安装方式,包安装?二进制包安装?源码安装? 线上推荐二进制包安装 路径配置,参数配置(尽量模板化,标准化) 一个实例多个库,or多个实例单个库?   二进制安装mysql   下载软件安装包 解压放到指…
kube-apiserver集群规划 主机名 角色 IP地址 mfyxw30.mfxyw.com kube-apiserver主 192.168.80.30 mfyxw40.mfyxw.com kube-apiserver从 192.168.80.40 温馨提示:这里部署文档以mfyxw30.mfyxw.com主机为例,另外两台主机安装部署方法类似 1.下载kubernetes软件 kubernetes的github链接:https://github.com/kubernetes kuberne…
kube-proxy是Kubernetes的核心组件,部署在每个Node节点上,它是实现Kubernetes Service的通信与负载均衡机制的重要组件; kube-proxy负责为Pod创建代理服务,从apiserver获取所有server信息,并根据server信息创建代理服务,实现server到Pod的请求路由和转发,从而实现K8s层级的虚拟转发网络 在k8s中,提供相同服务的一组pod可以抽象成一个service,通过service提供的统一入口对外提供服务,每个service都有一个…
集群规划 主机名 角色 IP地址 mfyxw30.mfyxw.com kubelet 192.168.80.30 mfyxw40.mfyxw.com kubelet 192.168.80.40 注意:这里部署文档以mfyxw30.mfyxw.com主机为例,另外一台运算节点安装部署方法类似 1.创建生成kubelet证书签名请求(csr)的JSON配置文件 在运维主机mfyxw50.mfyxw.com上操作 [root@mfyxw50 cert]#cat > /opt/certs/kubelet…
四层反向代理集群规划 主机名 角色 IP地址 mfyxw10.mfyxw.com 4层负载均衡(主) 192.168.80.10 mfyxw20.mfyxw.com 4层负载均衡(从) 192.168.80.20 keepalived中的两种模式 (1)master->backup模式 一旦主库宕机,虚拟ip会自动漂移到从库,当主库修复后,keepalived启动后,还会把虚拟ip抢占过来,即使设置了非抢占模式(nopreempt)抢占ip的动作也会发生. (2)backup->backup模…