基于kubernetes云平台设计与实现(附件)【字数:9154】
Keywords: Kubernetes; Docker; microservices; containerization目 录
一、引言 1
(一)选题背景 1
(二)开发意义 2
二、系统底层相关技术 2
(一)CentOS操作系统 3
(二)Docker容器 3
(三)Kubernetes管理平台 3
三、部署Kubernetes高可用集群 5
(一)高可用架构设计 5
(二)集群节点系统安装 5
(三)CentOS系统基础优化 6
(四)keepalived配置 8
(五)haproxy配置 10
(六)Docker容器应用配置 10
(七)Kubernetes三剑客配置 11
(八)Kubernetes集群初始化 11
(九)flannel网络组件安装及初始化 11
(十)Kubord面板配置 12
四.集群可视化管理 13
(一)多种认证方式 13
(二)微服务应用分层展示 15
(三)工作负载管理 15
(四)套件扩展 17
(五)告警配置 18
五.集群部署微服务个人财务应用 18
(一)helm配置与安装 18
(二)拉取代码并转换文件 19
(三 *51今日免费论文网|www.51jrft.com +Q: *351916072*
)helm安装piggymetrics 19
(四)使用piggymetrics进行记账 20
六.微服务应用分析 21
(一)服务注册和发现中心 21
(二)授权认证服务中心 22
(三)配置服务 22
七、总结 23
致谢 24
参考文献 25
一、引言
(一)选题背景
传统的网络服务在初期方便管理和部署,但随着后期业务规模的扩大,可能会出现一些致命性问题。比如业务无法灵活伸缩,在高峰流量时,无法快速水平扩展。随着微服务和容器化的发展普及,利用Kubernetes对容器的编排,以达到服务的平稳运行。
随着云原生技术的发展,众多企业采用Kubernetes来管理维护容器应用,并且集群规模出现爆发式增长趋势,企业急需对随集群规模的壮大带来的种种挑战的解决方案。在这基础上,为了能更好地提供高可用,负载均衡的应用,企业也对容器混合云解决方案产生了极大的兴趣。
(二)开发意义
在刚进入软件单体应用的时代,开发人员会将应用的所有的功能服务都开发打包在一起,通过网络CDN手段进行加速,提升用户的访问应用体验。在这背后增加了维护成本,应用一旦出现了一些bug,就可能需要对整个业务进行滚动修复测试,严重的程序错误可能会导致整个业务系统宕机。一个超大型的应用系统,需要许多开发人员团队合作维护这一整套代码,维护周期长。
为了解决以上根本性技术缺陷,微服务概念应运而生。一个服务,一个职责,这才是微服务的体现,一个微服务负责应用系统中的一个功能业务。将业务应用封装并对外提供服务,继承了单体应用时代的SOA核心思想。微服务与微服务之间可以相关联,随着微服务集群的扩大,实现管理维护,甚至水平垂直伸缩和高可用越来越困难,运维人员对高效利用服务硬件资源并降低成本,以及自动化部署等问题越来越棘手。
Kubernetes的出现减少了开发运维团队的负担,让他们的工作重心从硬件资源管理切换到Kubernetes资源管理上。Kubernetes对所部署的硬件资源进行了抽象的封装模型化,不用去详细了解关注它们的底层硬件的原理和规划,大大提高了服务器资源的利用率。Kubernetes将微服务运行成一个个节点,根据业务需求,自动根据节点集群的资源利用情况进行合理的伸缩负载均衡操作,这是传统应用维护方式无法媲美的。因为Kubernetes采用的是容器化编排管理方式和Docker容器镜像打包特性,开发人员无需关心应用版本的兼容性,在打包过程中,运行环境和代码所需的依赖包一同打入镜像,再将镜像推进镜像仓库中,随时取用,方便维护。
二、系统底层相关技术
(一)CentOS操作系统
Centos(Community Enterprise Operating System)是Linux发行版本之一,也是社区企业操作系统。基于GPL开源协议,由红帽公司旗下的RHEL(Red Hat Enterprise Linux)开源出来的源代码所编译而成。开源社区不定期修复其系统漏洞以及部分企业运维人员上报的日常使用的bug。与RHEL不同的是,centos不会提供商业技术服务,由企业另行支出系统管理维护费用。
(二)Docker容器
(1)简介
Docker engine是一个开源的容器应用引擎,开发者可以将他们的应用以及依赖环境打包成一个镜像,运行在任何支持虚拟化的系统上。一个容器,一个应用,它将基础硬件资源抽象化分割成许多集装箱(俗称容器),利用操作系统内核namespace将它们分类规整,互不影响。高效地利用硬件资源,比如说CPU,存储器,I/O输入输出接口,当服务结束时,销毁容器,自动释放系统资源。
原文链接:http://www.jxszl.com/jsj/wljs/608367.html