随着科技的发展,越来越多技术概念涌现出来,比如大数据、中台、云等等。最近大热的“云平台”就属于一个相对抽象的名词,它以数据处理为主,通过云这种方式,将数据和想要展示的其他东西存储在云上,让企业不需要将过多的精力放在管理自己的产品上,只需要根据用户的需求,将已经设置好的产品组合或者展示界面等直接交付给用户,从而实现更便捷的统一管理。
对于企业而言,已建立的内部集成并不能支撑其快速搭建开发环境、快速部署集群服务,并且动态水平扩展对多组织情况许可费用高昂、没有敏捷快速迭代机制,导致开发完毕就落伍,以及不能快速进行产品扩展,解决这一问题的根本方法就是引入K8S云平台。
云平台管理系统是一款管理公有云、私有云和混合云环境的整合性产品,为企业提供管理跨多个云基础设施的云计算产品,随着IT基础架构的不断发展,跨厂商云资源、物理资源及虚拟资源并存现象的不断涌现,企业对于云管理、云安全、云成本等要求也不断的提高。云平台管理系统的出现,就是帮助企业全面解决混合云IT架构下的跨云、多云管理等问题,针对云平台下开发、部署、管理、运维、集群配置、运行状态等进行统一管理。
UMC云管理平台是为K8S可视化管理而开发的,主要功能是通过调用K8S Api将各租户使用的K8S集群进行可视化管理,简化系统使用者的操作过程和操作难度,提高工作效率。整体系统架构如下图所示:
底层通过容器化的不同产品作为支撑,包含ESB应用集成平台、MDM基础数据平台、IDM身份管理平台、DAP数据分析平台、BPM流程集成平台、Portal门户集成平台等产品。
中层通过K8S技术可根据企业自身需求对底层容器化的AEAI套件进行统一调度管理。
UMC云管理平台可以对调度过来的各容器化的AEAI集成套件进行统一管理和监控。
UMC云管理平台大致分为8个功能:许可查看,可以查看具体内容;租户管理和租户配置,通过管理租户树形结构,将机构、方案、环境、服务器关联起来,统一管理;实例监控,通过以左树右表的方式,将方案、环境、服务器和容器关联起来,统一监视容器信息,包括基本、状态、心跳、性能等信息;开发部署,与实例监控功能基本相同,追加查看部署日志功能;集群管理,用来管理和监视K8S集群的运行状态;基本配置,用来管理方案,产品的具体信息;系统管理,主要沿用数通畅联规范的系统管理。
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是方案管理表(产品):管理产品信息。
Kubernetes 是一种可自动实施Linux 容器操作的开源平台,它可以帮助用户省去应用容器化过程的许多手动部署和扩展操作。也就是说,可以将运行 Linux 容器的多组主机聚集在一起,由 Kubernetes 轻松高效地管理这些集群。而且,这些集群可跨公共云、私有云或混合云部署主机。因此,对于要求快速扩展的云原生应用而言,Kubernetes 是理想的托管平台。
Master是用于控制 Kubernetes 节点的计算机。Master节点上运行着集群管理相关的一组进程,这些进程实现了整个集群的资源管理、Pod调度、弹性伸缩、安全控制、系统监控和纠错等管理功能,并且全都是自动完成。
Master下有很多组件,下面举例说明一些经常使用的组件:
1.API server:整个系统的对外接口,供其他组件、客户端等的调用。
2.Scheduler:主要负责对集群内部资源进行调度。
3.controller manager:负责管理控制器。
4.ectd:用于保存集群所有的网络配置和对象的状态信息。
每个Worker负责对本节点上的pod的生命周期进行管理以及实现服务代理的功能。
1.Node节点包括Docker、kubelet、kube-proxy、fluented和很多很多pod。
2.docker:创建容器。
3.kubelet:对分派到它所在Node上的pod进行监控,包括创建、修改、监控、删除等。
4.kube-proxy:为pod对象提供代理。
5.fluentd:负责日志的收集、存储与查询。
6.pod:是K8S最基本的操作单元。一个pod代表着集群中运行的一个进程,其内部封装了一个或多个容器。
在产品发版时通过UMC云平台部署产品,只需要通过界面配置就可以快速的发版新版本,并能够查看到对应的状态,而且平台操作可以满足大多数人的交互习惯,不像以前必须通过命令方式部署。
IDM产品在UMC部署,通过租户配置功能就可以管理不同的产品方案,通过租户管理分隔不同环境,普遍项目中分为开发环境、测试环境、生产环境,每个环境可以配置不同的产品,进行管理和部署。
部署新的产品介质要先在集群管理中上传新版介质,新增镜像,选择要部署的产品,点击保存。
点击“上传产品”按钮,上传新产品介质。
上传后:
部署产品时,选择开发环境下产品节点页面,产品信息跟随方案改变,集群名称和命名空间显示的是该产品所处环境的集群和命名空间。创建和编辑DeploymentYaml、ServiceYaml、ingressYaml文件时,要按照DeploymentYaml > ServiceYaml > ingressYaml的顺序创建。
通过配置参数功能注册项目中想要的相关配置文件里的内容。
扩展配置中也可以把项目相关扩展文件传进去。
配置好后,首先启动redis,点击保存后,点击创建。
点击确认创建。
分别进行创建ConfigMap、StatefulSet、Service,分别点击编辑进行创建。
然后进入集成信息标签页面,进行启动产品sever介质,也是分别点击Deploy、Service、Ingress编辑,弹出对应编辑页面进行编辑创建。
如下图所示:
启动后访问IDM产品,可以访问登录页面,说明启动成功。
1.Yaml创建顺序:Deployment > Service > Ingress。
2.产品节点中“服务URL”必须按照格式填写。
产品在使用过程出现问题,就要进行修复,修复后通过产品补丁方式在UMC上进行部署,补丁上传到开发环境,通过同步功能进行灰度升级到测试环境、生成环境。
产品使用时,运维人员或者项目实施人员可以通过事实监控查看运行日志。
如果发现错误反馈给开发人员进行修复,开发人员修复后打包补丁发给运维人员或者项目实施人员,运维人员或者项目实施人员通过租户管理进行上传补丁。
选择租户管理,选择要升级的产品,点击新增。
配置要上传的文件在sever中的实际路径。
点击保存后,返回基础信息页面,点击反创建,再点保存,进行重新创建。
查看开发环境功能是否修复成功,如果测试没问题后,在测试环境基础页面点击“拉取资源”按钮,把刚才升级开发环境的文件同步到测试环境中,然后点击反创建,再点保存,进行重新创建,运行测试环境监测功能,正式环境也是如此升级。
1.补丁一定要先上传到开发环境,不能跨环境进行上传,否则会导致所有环境不一致。
2.上传补丁后,在开发环境要做好充分测试,测试好后再同步升级到其他环境。
对于数通畅联来说,产品已经实现了容器化,那么容器化后产品具体能够带来哪些方便、又有哪些优势?容器化后产品和UMC平台如何结合使用?产品未来发展方向如何?
容器化使产品的迭代升级有了保证,能够快速的升级部署不同的产品,支持快速搭建不同租户、产品方案下的正式、测试、开发等环境,同时支持产品服务的快速部署和升级回滚,第一时间完成产品服务的调整,将影响降到最低,极大程度保护企业用户使用度。随着现在云模式的逐步扩大,越来越多的企业开始选择云资源、物理资源及虚拟资源并存的发展方向。
UMC支持搭建不同的方案,UMC可以通过搭建方案支撑起产品之间灵活组合,推出不同的方案场景,来满足不同的项目需求,目前我们主要推出的产品组合也是要在公司UMC云平台搭建典型样例的,IDM统一身份管理平台+ESB应用集成开发平台、ESB应用集成开发平台+MDM主数据管理平台、MDM主数据管理平台+ESB应用集成开发平台、DAP数据分析平台+ESB应用集成开发平台这些方案组合,都要通过项目来萃取出典型集成场景,确保以后项目中更快更好的使用。
云平台管理软件可以有效的解决企业的业务数据和应用程序跨云、多云等情况,实现快速对云平台开发、部署、管理、运维,对集群配置、运行状态等进行统一管理,并帮助企业全面解决云管理、云安全、云成本等问题。
云平台是对各种资源的虚拟化、优化配置与管理,在此之上提供开箱即用的应用服务给用户,典型分为IaaS、PaaS、SaaS三种模式,其中IaaS、SaaS发展的比较快,IaaS方面的赛道已被头部玩家锁定。目前PaaS的发展也在快速发力,中台概念的普及推动着PaaS的发展,基于PaaS开发SaaS,或者SaaS附带高扩展能力的PaaS都是典型的形态。云平台和物联网、大数据是密切相关,物联网提供海量数据采集、基本处理的抓手与通道,云平台提供虚拟基础环境、运行环境、开发环境、应用平台,大数据提供数据处理模型、计算、加工、分析以及更高级的趋势分析、智能预警等,而我国工业2025、工业互联网发展对这三块需求都比较旺盛,前景一片光明。