摘要: 1、常用的预选策略 2、优选函数 3、节点亲和调度 3.1、节点硬亲和性 3.2、节点软亲和性 4、Pod资源亲和调度 4.1、Pod硬亲和度 4.2、Pod软亲和度 4.3、Pod反亲和度 5、污点和容忍度 5.1、定义污点和容忍度 5.2、管理节点的污点 5.3、Pod对象的容忍度 API Se 阅读全文
posted @ 2019-06-29 10:06 muzinan110 阅读(1274) 评论(0) 推荐(0) 编辑
摘要: 监控 1、资源指标和资源监控 一个集群系统管理离不开监控,同样的Kubernetes也需要根据数据指标来采集相关数据,从而完成对集群系统的监控状况进行监测。这些指标总体上分为两个组成:监控集群本身和监控Pod对象,通常一个集群的衡量性指标包括以下几个部分: 节点资源状态:主要包括网络带宽、磁盘空间、 阅读全文
posted @ 2019-06-29 10:01 muzinan110 阅读(2841) 评论(0) 推荐(0) 编辑
摘要: K8S的网络中主要存在4种类型的通信: ①同一Pod内的容器间通信 ②各个Pod彼此间的通信 ③Pod和Service间的通信 ④集群外部流量和Service之间的通信 K8S为Pod和Service资源对象分别使用了各自的专有网络,Pod网络由K8S的网络插件配置实现,而Service网络则由K8 阅读全文
posted @ 2019-06-29 09:59 muzinan110 阅读(1196) 评论(0) 推荐(0) 编辑
摘要: etcd是一个高可用的分布式键值(key-value)数据库。etcd内部采用raft协议作为一致性算法,etcd基于Go语言实现。 etcd是一个服务发现系统,具备以下的特点: 简单:安装配置简单,而且提供了HTTP API进行交互,使用也很简单 安全:支持SSL证书验证 快速:根据官方提供的be 阅读全文
posted @ 2019-06-29 09:58 muzinan110 阅读(7950) 评论(0) 推荐(0) 编辑
摘要: 1、Master组件 1、API Server K8S对外的唯一接口,提供HTTP/HTTPS RESTful API,即kubernetes API。所有的请求都需要经过这个接口进行通信。主要负责接收、校验并响应所有的REST请求,结果状态被持久存储在etcd当中,所有资源增删改查的唯一入口。 2 阅读全文
posted @ 2019-06-29 09:57 muzinan110 阅读(1641) 评论(0) 推荐(0) 编辑
摘要: 一、高可用原理 配置一台新的master节点,然后在每台node节点上安装nginx,nginx通过内部的负载均衡将node节点上需要通过访问master,kube-apiserver组件的请求,反代到两台k8s-master节点上,这样就可以实现master节点的高可用,当任意一台master节点 阅读全文
posted @ 2019-06-29 09:53 muzinan110 阅读(3301) 评论(0) 推荐(0) 编辑
摘要: 高可靠设计,Etcd 集群,Kubernetes 三主节点,保证集群的高可用性。 基于 GlusterFS /nfs集群,在生产环境和非生产环境下提供存储卷服务。 Flannel+VXLAN,提供可靠的网络服务。 提供分布式监控和统一日志中心,全方位的应用监管能力。 支持 Redis/ZooKeep 阅读全文
posted @ 2019-06-29 09:50 muzinan110 阅读(2578) 评论(0) 推荐(0) 编辑
摘要: Netty线程模型 其中ChannelPiepline的设计模型采用的是Handler组成的责任链模型 blocking I/O 阻塞nonblocking I/O 非阻塞I/O multiplexing (select and poll) 多路复用signal driven I/O (SIGIO) 阅读全文
posted @ 2019-06-29 09:20 muzinan110 阅读(179) 评论(0) 推荐(0) 编辑
摘要: Spring Spring中的基本概念1.IOC/DI对象的属性由自己创建,为正向流程,而由Spring创建,为控制反转.DI(依赖注入)为实现IOC的一种方式,通过配置文件或注解包含的依赖关系创建与注入对象.正向流程导致了对象与对象之间的高耦合,IOC可以解决对象耦合的问题,有利于功能的复用 例如 阅读全文
posted @ 2019-06-29 09:19 muzinan110 阅读(296) 评论(0) 推荐(0) 编辑
摘要: 1.集合类 主要掌握如何实现. ArrayList实现原理要点概括 ArrayList是List接口的可变数组非同步实现,并允许包括null在内的所有元素。底层使用数组实现该集合是可变长度数组,数组扩容时,会将老数组中的元素重新拷贝一份到新的数组中,每次数组容量增长大约是其容量的1.5倍,这种操作的 阅读全文
posted @ 2019-06-29 09:18 muzinan110 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 1.JVM内存模型 线程独占:栈,本地方法栈,程序计数器线程共享:堆,方法区 回答以上问题是需回答两个要点:1. 各部分功能2. 是否是线程共享 2.JMM与内存可见性JMM是定义程序中变量的访问规则,线程对于变量的操作只能在自己的工作内存中进行,而不能直接对主内存操作.由于指令重排序,读写的顺序会 阅读全文
posted @ 2019-06-29 09:17 muzinan110 阅读(310) 评论(0) 推荐(0) 编辑
摘要: 1.了解基本数据结构及特点 如,有哪些二叉树,各有什么特点 树二叉搜索树 每个节点都包含一个值,每个节点至多有两棵子树,左孩子小于自己,右孩子大于自己,时间复杂度是O(log(n)),随着不断插入节点,二叉树树高变大,当只有左(右)孩子时,时间复杂度变为O(n). 平衡二叉树保证每个节点左右子树高度 阅读全文
posted @ 2019-06-29 09:16 muzinan110 阅读(534) 评论(0) 推荐(0) 编辑
摘要: 1.设计模式 单例模式 单例模式有哪几种实现方式,什么场景该使用静态方法实现,什么场景该使用双检锁实现 单例模式线程安全实现的常见三种方法: 1. 静态初始化(饿汉).不管是否使用都会创建 2. 双检锁(懒汉).单例变量必须要用volatile修饰. 3. 单例注册表.spring中bean的单例模 阅读全文
posted @ 2019-06-29 09:15 muzinan110 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 进程和线程的区别和联系 从资源占用,切换效率,通信方式等方面解答 线程具有许多传统进程所具有的特征,故又称为轻型进程(Light—Weight Process)或进程元;而把传统的进程称为重型进程(Heavy—Weight Process),它相当于只有一个线程的任务。在引入了线程的操作系统中,通常 阅读全文
posted @ 2019-06-29 09:13 muzinan110 阅读(1029) 评论(0) 推荐(0) 编辑