K8S云平台项目实践

随着科技的发展,越来越多技术概念涌现出来,比如大数据、中台、云等等。最近大热的“云平台”就属于一个相对抽象的名词,它以数据处理为主,通过云这种方式,将数据和想要展示的其他东西存储在云上,让企业不需要将过多的精力放在管理自己的产品上,只需要根据用户的需求,将已经设置好的产品组合或者展示界面等直接交付给用户,从而实现更便捷的统一管理

对于企业而言,已建立的内部集成并不能支撑其快速搭建开发环境、快速部署集群服务,并且动态水平扩展对多组织情况许可费用高昂、没有敏捷快速迭代机制,导致开发完毕就落伍,以及不能快速进行产品扩展,解决这一问题的根本方法就是引入K8S云平台。 

1.整体介绍 

云平台管理系统是一款管理公有云、私有云和混合云环境的整合性产品,为企业提供管理跨多个云基础设施的云计算产品,随着IT基础架构的不断发展,跨厂商云资源、物理资源及虚拟资源并存现象的不断涌现,企业对于云管理、云安全、云成本等要求也不断的提高。云平台管理系统的出现,就是帮助企业全面解决混合云IT架构下的跨云、多云管理等问题,针对云平台下开发、部署、管理、运维、集群配置、运行状态等进行统一管理。

1.1系统框架

UMC云管理平台是为K8S可视化管理而开发的,主要功能是通过调用K8S Api将各租户使用的K8S集群进行可视化管理,简化系统使用者的操作过程和操作难度,提高工作效率。整体系统架构如下图所示:

K8S云平台项目实践_第1张图片

底层通过容器化的不同产品作为支撑,包含ESB应用集成平台、MDM基础数据平台、IDM身份管理平台、DAP数据分析平台、BPM流程集成平台、Portal门户集成平台等产品。

中层通过K8S技术可根据企业自身需求对底层容器化的AEAI套件进行统一调度管理。

UMC云管理平台可以对调度过来的各容器化的AEAI集成套件进行统一管理和监控。

1.2功能框架 

K8S云平台项目实践_第2张图片

UMC云管理平台大致分为8个功能:许可查看,可以查看具体内容;租户管理和租户配置,通过管理租户树形结构,将机构、方案、环境、服务器关联起来,统一管理;实例监控,通过以左树右表的方式,将方案、环境、服务器和容器关联起来,统一监视容器信息,包括基本、状态、心跳、性能等信息;开发部署,与实例监控功能基本相同,追加查看部署日志功能;集群管理,用来管理和监视K8S集群的运行状态;基本配置,用来管理方案,产品的具体信息;系统管理,主要沿用数通畅联规范的系统管理。 

1.3数据架构

K8S云平台项目实践_第3张图片

1.表1是租户管理树表。

2.表2是机构表,也是树根节点。

3.表3是方案表:用于关联不同方案。

4.表4是环境表:开发环境、测试环境、生成环境等。

5.表5是容器实例表:运行产品的实例信息。

6.表6是部署日志表:部署的日志信息。

7.表7是配置参数表:维护管理产品配置表。

8.表8是变量实例表。

9.表9是产品关联实例表:配置产品容器部署的参数。

10.表10是扩展配置表:上传信息补丁、IDE、项目的文件。

11.表11是方案管理表(方案):管理方案信息。

12.表12是方案管理表(产品):管理产品信息。

2.K8S介绍 

Kubernetes 是一种可自动实施Linux 容器操作的开源平台,它可以帮助用户省去应用容器化过程的许多手动部署和扩展操作。也就是说,可以将运行 Linux 容器的多组主机聚集在一起,由 Kubernetes 轻松高效地管理这些集群。而且,这些集群可跨公共云、私有云或混合云部署主机。因此,对于要求快速扩展的云原生应用而言,Kubernetes 是理想的托管平台。

2.1Master介绍

Master是用于控制 Kubernetes 节点的计算机。Master节点上运行着集群管理相关的一组进程,这些进程实现了整个集群的资源管理、Pod调度、弹性伸缩、安全控制、系统监控和纠错等管理功能,并且全都是自动完成。 

Master下有很多组件,下面举例说明一些经常使用的组件:

K8S云平台项目实践_第4张图片

1.API server:整个系统的对外接口,供其他组件、客户端等的调用。

2.Scheduler:主要负责对集群内部资源进行调度。

3.controller manager:负责管理控制器。

4.ectd:用于保存集群所有的网络配置和对象的状态信息。

2.2Worker介绍

每个Worker负责对本节点上的pod的生命周期进行管理以及实现服务代理的功能

K8S云平台项目实践_第5张图片

1.Node节点包括Docker、kubelet、kube-proxy、fluented和很多很多pod。

2.docker:创建容器。

3.kubelet:对分派到它所在Node上的pod进行监控,包括创建、修改、监控、删除等。

4.kube-proxy:为pod对象提供代理。

5.fluentd:负责日志的收集、存储与查询。

6.pod:是K8S最基本的操作单元。一个pod代表着集群中运行的一个进程,其内部封装了一个或多个容器。

3.产品部署

在产品发版时通过UMC云平台部署产品,只需要通过界面配置就可以快速的发版新版本,并能够查看到对应的状态,而且平台操作可以满足大多数人的交互习惯,不像以前必须通过命令方式部署。

3.1功能介绍

IDM产品在UMC部署,通过租户配置功能就可以管理不同的产品方案,通过租户管理分隔不同环境,普遍项目中分为开发环境、测试环境、生产环境,每个环境可以配置不同的产品,进行管理和部署。

K8S云平台项目实践_第6张图片

3.2部署步骤

部署新的产品介质要先在集群管理中上传新版介质,新增镜像,选择要部署的产品,点击保存。

K8S云平台项目实践_第7张图片

点击“上传产品”按钮,上传新产品介质。

K8S云平台项目实践_第8张图片

上传后:

K8S云平台项目实践_第9张图片

部署产品时,选择开发环境下产品节点页面,产品信息跟随方案改变,集群名称和命名空间显示的是该产品所处环境的集群和命名空间。创建和编辑DeploymentYaml、ServiceYaml、ingressYaml文件时,要按照DeploymentYaml > ServiceYaml > ingressYaml的顺序创建。

K8S云平台项目实践_第10张图片

通过配置参数功能注册项目中想要的相关配置文件里的内容。

K8S云平台项目实践_第11张图片

扩展配置中也可以把项目相关扩展文件传进去。

K8S云平台项目实践_第12张图片

配置好后,首先启动redis,点击保存后,点击创建。

K8S云平台项目实践_第13张图片

点击确认创建。

K8S云平台项目实践_第14张图片

分别进行创建ConfigMap、StatefulSet、Service,分别点击编辑进行创建。

K8S云平台项目实践_第15张图片

K8S云平台项目实践_第16张图片

然后进入集成信息标签页面,进行启动产品sever介质,也是分别点击Deploy、Service、Ingress编辑,弹出对应编辑页面进行编辑创建。

K8S云平台项目实践_第17张图片

如下图所示:

K8S云平台项目实践_第18张图片

K8S云平台项目实践_第19张图片

启动后访问IDM产品,可以访问登录页面,说明启动成功。

K8S云平台项目实践_第20张图片

 3.3注意事项

1.Yaml创建顺序:Deployment > Service > Ingress。

2.产品节点中“服务URL”必须按照格式填写。

4.产品补丁

产品在使用过程出现问题,就要进行修复,修复后通过产品补丁方式在UMC上进行部署,补丁上传到开发环境,通过同步功能进行灰度升级到测试环境、生成环境。

4.1功能介绍

产品使用时,运维人员或者项目实施人员可以通过事实监控查看运行日志。

K8S云平台项目实践_第21张图片

如果发现错误反馈给开发人员进行修复,开发人员修复后打包补丁发给运维人员或者项目实施人员,运维人员或者项目实施人员通过租户管理进行上传补丁。

K8S云平台项目实践_第22张图片

4.2升级步骤

选择租户管理,选择要升级的产品,点击新增。

K8S云平台项目实践_第23张图片

配置要上传的文件在sever中的实际路径。

K8S云平台项目实践_第24张图片

点击保存后,返回基础信息页面,点击反创建,再点保存,进行重新创建。

K8S云平台项目实践_第25张图片

查看开发环境功能是否修复成功,如果测试没问题后,在测试环境基础页面点击“拉取资源”按钮,把刚才升级开发环境的文件同步到测试环境中,然后点击反创建,再点保存,进行重新创建,运行测试环境监测功能,正式环境也是如此升级。

K8S云平台项目实践_第26张图片

4.3注意事项

1.补丁一定要先上传到开发环境,不能跨环境进行上传,否则会导致所有环境不一致。

2.上传补丁后,在开发环境要做好充分测试,测试好后再同步升级到其他环境。

5.总结分析

对于数通畅联来说,产品已经实现了容器化,那么容器化后产品具体能够带来哪些方便、又有哪些优势?容器化后产品和UMC平台如何结合使用?产品未来发展方向如何?

5.1转容器化优势

容器化使产品的迭代升级有了保证,能够快速的升级部署不同的产品,支持快速搭建不同租户、产品方案下的正式、测试、开发等环境,同时支持产品服务的快速部署和升级回滚,第一时间完成产品服务的调整,将影响降到最低,极大程度保护企业用户使用度。随着现在云模式的逐步扩大,越来越多的企业开始选择云资源、物理资源及虚拟资源并存的发展方向。

5.2产品结合使用

UMC支持搭建不同的方案,UMC可以通过搭建方案支撑起产品之间灵活组合,推出不同的方案场景,来满足不同的项目需求,目前我们主要推出的产品组合也是要在公司UMC云平台搭建典型样例的,IDM统一身份管理平台+ESB应用集成开发平台、ESB应用集成开发平台+MDM主数据管理平台、MDM主数据管理平台+ESB应用集成开发平台、DAP数据分析平台+ESB应用集成开发平台这些方案组合,都要通过项目来萃取出典型集成场景,确保以后项目中更快更好的使用。

5.3产品体系发展

云平台管理软件可以有效的解决企业的业务数据和应用程序跨云、多云等情况,实现快速对云平台开发、部署、管理、运维,对集群配置、运行状态等进行统一管理,并帮助企业全面解决云管理、云安全、云成本等问题。

云平台是对各种资源的虚拟化、优化配置与管理,在此之上提供开箱即用的应用服务给用户,典型分为IaaS、PaaS、SaaS三种模式,其中IaaS、SaaS发展的比较快,IaaS方面的赛道已被头部玩家锁定。目前PaaS的发展也在快速发力,中台概念的普及推动着PaaS的发展,基于PaaS开发SaaS,或者SaaS附带高扩展能力的PaaS都是典型的形态。云平台和物联网、大数据是密切相关,物联网提供海量数据采集、基本处理的抓手与通道,云平台提供虚拟基础环境、运行环境、开发环境、应用平台,大数据提供数据处理模型、计算、加工、分析以及更高级的趋势分析、智能预警等,而我国工业2025、工业互联网发展对这三块需求都比较旺盛,前景一片光明。

你可能感兴趣的:(技术文档,产品文档,K8S,kubernetes,云平台,UMC云管理)