Linux集群相关知识及术语(Cluster集群)

一、集群的类型
1、 LB(Load Balancing):负载均衡型集群
2、 HA(High Availability):高可用性集群、双机集群
3、 HP(High Performance):高性能集群
#负载均衡:意思是分摊到多个操作单元上进行执行,例如web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务
二、集群的定义
1、集群技术是一种较新的技术,通过集群技术,可以在付出较低成本的情况下获得在性能、可靠性、灵活性方面的相对较高的收益,任务调度则是集群系统中的核心技术。
2、集群是一组相互独立的、通过高速网络互连的计算机,它们构成了一个组,并以单一系统的模式加以管理。
3、一个客户与集群相互作用时,集群像是一个独立的服务器
4、集群配置是用于提高可用性和可缩放性。其特点:高可扩展性、高可用性、高性能、高性价比
三、集群类型中的可扩展类型
1、scale on:向上扩展
#将服务器的内存容量调大和cpu数量增加些,简单的说就是提升服务器硬件
2、scale out:向外扩展
#一台服务器应付不过来,我们就需要再增加一台服务器
四、kubernetes集群及其特点的描述与理解
1、kubernetes简称k8s,是用“8”代替了8个字符“ubernete”而成的缩写。它是一个开源的,用于管理云平台中多个主机上(Linux虚拟机)的容器化的应用。k8s的目标是让部署容器化的应用简单并且高效,k8s提供了应用部署、规划、更新、维护的一种机制。
2、传统的应用部署方式是通过插件或脚本安装应用,这样做的缺点是当前应用的运行配置、管理、所有生存周期将与当前操作系统绑定,这样不利于应用升级更新、回滚等操作。
3、k8s集群的新型方式是通过部署容器方式实现,每个容器之间互相隔离,每个容器有自己的文件系统,容器之间的进程不会相互影响,能区分计算资源。相对于虚拟机,容器能快速部署,由于容器与底层设施、机器文件系统是解耦的,所以它能在不同的云、不同版本的操作系统间进行迁移,简单地说就是可移植性强
4、容器占用的资源少、部署快,每个应用可以被打包成一个容器镜像。每个容器与其中的应用都是一对一的关系,使用容器可以在build(构建)或者release(发布)的阶段,为应用创建容器镜像,因为每个应用不需要与其它的应用堆栈组合,也不依赖于生产环境基础结构,这使得从研发到测试,到生产都能提供一致的环境。容器化的虚拟技术更轻量、更透明,更方便于监控与管理。
5、一个真正的分布式架构集群需要处理容器的跨主机通信的问题。
6、k8s集群是容器的编排工具,在kubernetes之前就有OpenShift,并且是一个独立的项目了,可以简单理解为OpenShift是k8s的发行版。
7、基于云平台开发的最好的方式是修改环境变量来配置文件,而修改配置文件来配置的方式不方便。
五、kubernetes集群架构相关知识的理解和解释
1、k8s集群架构中,有一个或者一组主节点(masters),一般两至三个就够了,并且彼此间要做高可用,主节点是整个集群的唯一入口,每一个node节点都是贡献一部分计算和存储能力的相关资源的节点,简单的说node就是运行容器的节点。
2、用户如何使用集群架构:首先用户客户端发送请求给主节点(masters),把创建启动容器的请求交给主节点(masters),然后主节点中有一个调度器去分析各node节点当前可用资源的状态,找一个最佳适配运行用户所请求的容器的节点并把它调度上去,有docker容器或者本地的容器引擎负责把这个容器启动起来。容器的启动时基于镜像。
3、套接字就是TCP用主机的IP地址加上主机上的端口号作为TCP连接的端点,这种端点就叫做套接字(socket)或插口,套接字用IP地址:端口号表示
4、k8s集群可以设定容器内应用请求资源的上限和下限,比如该容器内要用到2G内存资源,因此每个node节点不一定都有2G的内存资源,所以需要masters主节点中的调度器来调度适配的资源,根据容器node节点的最低要求的资源来进行评估,合理分配容器中应用运行的资源。
5、集群的主节点masters是整个集群的大脑,它有三个核心组件:第一是API Server负责接收并处理请求的;第二个是scheduler负责调度容器创建的请求;第三个是Contrlor Manager控制器管理器用来确保已创建的容器是否处于健康状态。#控制器管理器是确保控制器健康运行,而控制器是确保容器健康运行。控制容器健康运行的控制器只是其中的一种,整个集群中还有很多其它的控制器。
6、k8s并不一定调度容器的运行,调度的目标叫pod,是集群中最小单元,容器不是最小调度单元。pod可以理解为容器的外壳,给容器做了一层抽象的封装。因此pod便成了k8s之上最小的调度逻辑单元,pod内部主要就是放容器的。通过pod可以实现持久存储。
7、kubectl就是API-service的客户端程序,这个客户端程序是通过连接masters节点上的API-service,这也是k8s集群应用管理的唯一入口,而kubectl就是管理入口的客户端工具,它能够连接API-service上实现各种k8s相关对象资源的增删改查等操作。这里说的增删改查是对容器的增加、删除、修改、查看。
8、k8s上管理的对象很多,比如pod、service、replicaset、deployment、statefulet、daemonset、job、cronjob、node等等都是被k8s集群管理的资源对象

猜你喜欢

转载自blog.csdn.net/cdbdqn001/article/details/85706766
今日推荐