前言
以 Docker 为代表的容器技术缩短了企业应用从开发、构建到公布、运行的整个生命周期。Gartner 揣测到 2022 年将会有 75% 的全球化企业将在生产中应用容器化的利用(以后约为 30%)。因为 Docker 往往难以独立撑持起大规模容器化部署,因而诞生了 Kubernetes 等容器编排工具,解决了大规模容器的组织和治理难题。
但事实上,Kubernetes 的应用体系还是非常复杂的,对于企业的开发运维人员而言,须要具备肯定的网络、存储、零碎等方面的技术能力。同时在 Kubernetes 集群的部署过程中,也须要面临多节点集群搭建保护、网络和存储的抉择配置等难题。上述问题是企业在大规模利用的容器化部署和容器编排中不可避免的,科盾亦面临同样的窘境。
科盾为什么抉择容器化?
深圳市科盾科技有限公司(下文简称科盾)是全国当先的互联网大数据服务商,是一家专一于网络空间治理畛域科研及利用开发的国家高新技术企业,致力于为网安、网信、政府及大中型企业提供大数据互联网舆情监测、网络情报开掘和企业商情监测等服务,以便及时、精准、全面把握互联网舆情信息,疾速化解舆情危机。同时全面获取网络情报线索和市场竞争情报,为政府机构打击网络违法犯罪、企业进步市场竞争力提供高科技利器。舆情剖析的数据起源简直笼罩所有互联网平台的公开信息,包含常见的资讯网站和社交媒体、自媒体、短视频等平台。因而构建一套残缺精准的舆情监测零碎,不仅须要弱小的数据采集能力,还须要具备弱小的数据分析、价值开掘能力,给底层的 IT 架构带来微小的技术挑战。
在实现微服务及容器化部署之前,科盾是间接将利用部署在服务器上的,开发运维人员破费大量工夫在开发、测试和生产环境的配置上,还要解决日常呈现的网络、日志、监控等问题。随着公司业务的扩大,整个零碎越来越庞杂,且依赖简单、数据没有隔离、逻辑反复,于是科盾将其业务进行了微服务架构的革新。
科盾采纳了 SpringCloud 微服务体系及 Eureka 服务注册核心,将整体业务架构分为任务调度、数据采集、数据存储、数据处理等多个环节,其整体业务架构图如下:
任务调度零碎依据注册的数据采集节点信息,调度无效的采集指标给数据采集节点,数据采集节点依据算法对指标解决后,将数据后果传输依据其内容类型,传输给基于 MySQL、MongoDB、HBase、Elasticsearch、对象存储等服务的存储队列,再由解决链进行数据荡涤、资源文件拆分下载、模型预测、各个子系统业务标签、数据推送服务等。
在微服务阶段,随着利用数量的减少,一次公布往往波及了多个利用,这对团队的自动化运维程度提出了更高的要求。于是,团队开始对利用进行容器化革新。各个模块打包封装成镜像,就能够在任意平台上运行,轻松实现业务的迁徙和扩大;无需反复配置环境,配合 Gitlab 就能够十分不便的进行继续交付和部署,还能够对利用之间进行隔离。
Cube 比容器更快更轻
应用容器后的确解决了科盾先前面临的交付效率、运维老本和环境一致性等问题,但自建 Docker 服务仍存在一些问题,例如:• 需购买固定资源规格的主机,老本投入比拟高;• 只能通过主机进行挂载,操作繁琐;• 只反对繁多 IP,绑定额定的 IP 非常繁琐;• 遇到故障时须要额定装置管制调度零碎进行重启;• 只能通过 namespace 和 cgroup 进行弱隔离;• 须要应用 docker 命令进行创立,学习老本较高。
通过 UCloud 容器实例 Cube,用户只须要提供打包好的容器镜像,即可实现在数秒之内,实现批量部署容器化利用,而不须要事后购买主机或 K8S 集群,并且只需为容器理论运行耗费的资源付费。
此外 Cube 还具备以下劣势:• 网络上应用 UCloud VPC 网络进行内网服务,与 UCloud 其余云产品买通;• 存储间接应用云盘进行挂载应用,读写性能高,操作便捷;• Cube 管制调度零碎为容器主动重启,自愈能力强;• UCloud 海量资源撑持,超大集群防止繁多节点故障;• 应用 Firecracker 虚拟化技术实现虚拟机级别的强隔离。
基于 Cube 的劣势,科盾已将其数据采集节点迁徙到了 Cube,日志收集计划由原来的宿主机本地映射存取,改为发送到 Kafka 队列。因为容器化利用的特质,科盾无需对业务进行革新,间接采纳原有镜像即可在 Cube 上部署利用,实现平滑迁徙。而 Kafka 的利用,也晋升了日志收集、治理的效率。
Cube 帮忙科盾实现了业务的疾速回滚和横向扩大。后续,科盾打算引入 K8S 集群,并将更多数据处理链等上的服务迁徙至 Cube。
总结
科盾的业务架构从传统的服务器部署模式到微服务架构、容器化革新,再到抉择 UCloud 容器实例服务 Cube 的迁徙,是企业升高资源老本、晋升开发运维效率的摸索之路,也贴合云原生技术崛起的脉络。无论是容器 Docker、Kubernetes 还是 Serverless 架构的 Cube,最终都会回归到为企业降本增效的外围价值。
**
**
如果您对 Cube 产品感兴趣,欢送扫码退出 Cube 测试交换群!
https://u.wechat.com/ELATXrQmIDI2cCgzioMgl88 (二维码自动识别)
流动预报
想理解无关 Cube 产品背地的技术架构以及无服务器化容器的技术实现细节,欢送关注 10 月 23 日 UCloud TIC 大会技术论坛直播(点击浏览原文查看详情),届时将由 UCloud 容器云研发负责人张苗磊带来精彩分享,敬请关注!