1 / 25
文档名称:

k8s docker集群搭建.docx

格式:docx   大小:394KB   页数:25页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

k8s docker集群搭建.docx

上传人:170486494 2019/2/21 文件大小:394 KB

下载得到文件列表

k8s docker集群搭建.docx

文档介绍

文档介绍:k8sdocker集群搭建一、es系列之介绍篇背景介绍云计算飞速发展-IaaS -PaaS -SaaS Docker技术突飞猛进-一次构建,到处运行-容器的快速轻量-es 首先,他是一个全新的基于容器技术的分布式架构领先方案。es(k8s)是Google开源的容器集群管理系统(谷歌内部:Borg)。在Docker技术的基础上,为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等一系列完整功能,提高了大规模容器集群管理的便捷性。 es是一个完备的分布式系统支撑平台,具有完备的集群管理能力,多扩多层次的安全防护和准入机制、多租户应用支撑能力、透明的服务注册和发现机制、內建智能负载均衡器、强大的故障发现和自我修复能力、服务滚动升级和在线扩容能力、可扩展的资源自动调度机制以及多粒度的资源配额管理能力。es提供完善的管理工具,涵盖了包括开发、部署测试、运维监控在内的各个环节。es中,Service是分布式集群架构的核心,一个Service对象拥有如下关键特征:拥有一个唯一指定的名字拥有一个虚拟IP(ClusterIP、ServiceIP、或VIP)和端口号能够体统某种远程服务能力被映射到了提供这种服务能力的一组容器应用上 Service的服务进程目前都是基于Socket通信方式对外提供服务,比如Redis、Memcache、MySQL、WebServer,或者是实现了某个具体业务的一个特定的TCPServer进程,虽然一个Service通常由多个相关的服务进程来提供服务,每个服务进程都有一个独立的Endpoint(IP+Port)访问点,es能够让我们通过服务连接到指定的Service上。es内建的透明负载均衡和故障恢复机制,不管后端有多少服务进程,也不管某个服务进程是否会由于发生故障而重新部署到其他机器,都不会影响我们队服务的正常调用,更重要的是这个Service本身一旦创建就不会发生变化,es集群中,我们不用为了服务的IP地址的变化问题而头疼了。容器提供了强大的隔离功能,所有有必要把为Service提供服务的这组进程放入容器中进行隔离。为此,es设计了Pod对象,将每个服务进程包装到相对应的Pod中,使其成为Pod中运行的一个容器。为了建立Service与Pod间的关联管理,es给每个Pod贴上一个标签Label,比如运行MySQL的Pod贴上name=mysql标签,给运行PHP的Pod贴上name=php标签,然后给相应的Service定义标签选择器LabelSelector,这样就能巧妙的解决了Service于Pod的关联问题。在集群管理方面,es将集群中的机器划分为一个Master节点和一群工作节点Node,其中,在Master节点运行着集群管理相关的一组进程kube-apiserver、kube-controller-manager和kube-scheduler,这些进程实现了整个集群的资源管理、Pod调度、弹性伸缩、安全控制、系统监控和纠错等管理能力,并且都是全自动完成的。Node作为集群中的工作节点,运行真正的应用程序,es管理的最小运行单元是Pod。es的kubelet、kube-proxy服务进程,这些服务进程负责Pod的创建、启动、监控、重启、销毁以及实现软件模式的负载均衡器。 es集群中,它解决了传统IT系统中服务扩容和升级的两大难题。你只需为需要扩容的Service关联的Pod创建一个ReplicationController简称(RC),则该Service的扩容及后续的升级等问题将迎刃而解。在一个RC定义文件中包括以下3个关键信息。目标Pod的定义目标Pod需要运行的副本数量(Replicas)要监控的目标Pod标签(Label) 在创建好RC后,es会通过RC中定义的的Label筛选出对应Pod实例并实时监控其状态和数量,如果实例数量少于定义的副本数量,则会根据RC中定义的Pod模板来创建一个新的Pod,然后将新Pod调度到合适的Node上启动运行,直到Pod实例的数量达到预定目标,这个过程完全是自动化。 es优势: -容器编排-轻量级-开源-弹性伸缩-es的核心概念Master k8s集群的管理节点,负责管理集群,提供集群的资源数据访问入口。拥有Etcd存储服务(可选),运行ApiServer进程,ControllerManager服务进程及Scheduler服务进程,关联工作节点Node。esAPIserver提供HTTPRest接口的关键服务进程,es里所有资源的增、删、改、查等操作的唯一入口;也是集群控制的入口进程;es所有资源对象的自动化控制中心;esSchedule是负责资源调度(Pod调度)的进程Node es集群架构中运行Pod的服务节点(亦叫agent或minion)。es集群操作