某物联网数智化园区行业基于 KubeSphere 的云原生实践

这篇具有很好参考价值的文章主要介绍了某物联网数智化园区行业基于 KubeSphere 的云原生实践。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

公司简介

某物联网数智化园区行业基于 KubeSphere 的云原生实践,k8s,容器平台,kubesphere,云计算

作为物联网 + 数智化园区一体化解决方案提供商,我们致力于为大中型园区、停车场提供软硬件平台,帮助园区运营者实现数字化、智能化运营。

在使用 K8s 之前我们使用传统的方式部署上线,使用 spug(一款轻量级无 Agent 的自动化运维平台) 自动化在单节点完成代码部署上线,也没有进行容器化,随着产品上线提上日程,对稳定性要求提高,以及私有化部署环境管理问题,我们开始使用 Docker 以及 K8s。

背景介绍

降本增效是每个企业的目标,而 DevOps、容器化、云原生就是研发团队降本增效的方法论。在这个趋势下,使用 Docker、K8s 几乎是每个开发团队的必经之路。

物联网平台对稳定性要求非常高,一旦停机,所有设备都将掉线重连,因此保证服务的稳定性,减少停机时间就非常重要。

在使用 K8s 之前,我们很多时间都要人工处理各种繁琐重复的服务维护问题,这种枯燥且毫无技术含量琐碎极大的消磨开发团队的激情。为了将人力从大量重复的环境配置、服务维护中解放出来从而提高开发迭代效率,我们就决定全面容器化,拥抱云原生。

总结来说就是:

  • 服务稳定性,自动化运维,减少停机时间;
  • 分布式部署,弹性伸缩;
  • DevOps 规范的部署上线流程。

这些问题迫使我们开始调研容器化、Docker、K8s 的应用。

选型说明

由于没有相关经验,因此一开始我们就希望找到一款能够帮助快速上手 K8s 的工具,在调研 KubeSphere、Zadig、Rancher、KubeVela、Kubeadm 等多款工具后,我们最终选择了 KubeSphere。

选择 KubeSphere 最主要的原因首先是它的社区活跃,有问题能够找到解决方案。同时它集成了很多开箱即用的插件如 DevOps,这正是我们所需要的。当然第一眼就选中 KubeSphere 还是因为它的颜值,能看得出来 KubeSphere 的 UI 是经过精心设计过的,这在开发工具领域中是极为难得的,从这点上就能够看出背后的开发团队对于打造一款基于 K8s 的云原生操作系统的理念与决心。

使用 KubeSphere 让我们立马就拥有了成熟 DevOps 工作流了,而无需额外的搭建成本,这对于我们毫无 K8s 经验的团队来说太重要了,极大的降低了上手门槛。

目前我们将所有无状态应用全部容器化,使用 K8s 负载,提交代码 Webhook 触发 KubeSphere 流水线自动发布,对于不习惯命令行操作的用户,KubeSphere 后台能满足所有需求。

实践过程

容器化及迁移到 K8s、KubeSphere

某物联网数智化园区行业基于 KubeSphere 的云原生实践,k8s,容器平台,kubesphere,云计算

第一步就是将应用全部 Docker 容器化,然后使用 K8s 的 deployment 进行部署。实现分布式高可用的服务部署。

K8s 让我们轻易的就拥有了一个分布式高可靠的架构了,分布式部署从未如此简单。

创建 DevOps 项目流水线

KubeSphere 的 DevOps 项目不同于常规项目,这是 KubeSphere 中独有的概念,和 K8s 的命名空间没关系,流水线可以直接用 Jenkinsfile,也可以用可视化的方式创建,非常方便。

配置好发布流水线后,对于开发来说只用提交代码就行了,KubeSphere 会自动帮我们按照预期把应用部署到集群中,上线前的最后一公里问题被彻底解决了。

某物联网数智化园区行业基于 KubeSphere 的云原生实践,k8s,容器平台,kubesphere,云计算

某物联网数智化园区行业基于 KubeSphere 的云原生实践,k8s,容器平台,kubesphere,云计算

某物联网数智化园区行业基于 KubeSphere 的云原生实践,k8s,容器平台,kubesphere,云计算

管理 Pod

某物联网数智化园区行业基于 KubeSphere 的云原生实践,k8s,容器平台,kubesphere,云计算

在 KubeSphere 后台可以直接管理 Pod ,容器信息一目了然,还可以直接进入容器,查看容器实时日志。负载也能一键伸缩,轻点鼠标就能够快速部署和回滚。

某物联网数智化园区行业基于 KubeSphere 的云原生实践,k8s,容器平台,kubesphere,云计算

日志和监控方案

某物联网数智化园区行业基于 KubeSphere 的云原生实践,k8s,容器平台,kubesphere,云计算

由于我们之前就有了 ELK 和 Prometheus、Grafana 了,因此日志我们只需要将容器内的应用日志采集到集中的 ELK 上去就可以了。监控也是如此,只需要采集 node_exporter 和业务指标就行了。

如果之前没有相关方案,也可以直接使用 KubeSphere 开箱即用的日志监控方案,同样也是基于 Elasticsearch 和 Prometheus 的。

多租户资源可视化

企业空间完美契合了多租户管理,这样对于私有化部署、资源利用统计都非常方便,同时企业空间下的项目 刚好就对应 K8s 中的命名空间,这让人非常惊喜,KubeSphere 是紧贴 K8s 标准的,不会增加任何学习使用成本。

集群状态和资源用量排行可以直观看到各节点资源使用情况,方便为未来资源预算做好规划。还可以对企业空间进行配额限制,满足了不同租户资源控制需求。

某物联网数智化园区行业基于 KubeSphere 的云原生实践,k8s,容器平台,kubesphere,云计算

某物联网数智化园区行业基于 KubeSphere 的云原生实践,k8s,容器平台,kubesphere,云计算

存储

某物联网数智化园区行业基于 KubeSphere 的云原生实践,k8s,容器平台,kubesphere,云计算

由于我们目前主要是无状态应用,对储存要求不高,所以用的是最简单的方案集中式 NFS,由于是单节点存储,所以存在单点问题,这个后面可以使用云厂商的 NAS 存储或者其它分布式存储。

使用过程中遇到的困难及其解决方案

  1. CI 构建节点配置问题

节点配置至少在 4C·16G ,否则 DevOps Jenkins 可能无法正常运行,这个还是有些占资源的,建议 使用特定节点充当 CI 节点:为依赖项缓存设置 CI 节点

  1. 流水线不响应问题

有时会出现流水线一直等待运行,或者卡住的问题,这通常是构建节点资源问题,我们遇到过前端 node 打包 cpu 占满问题,出现这种情况时应该首先检查打包节点的资源情况,kill 掉占用高的打包进程就行了。或尝试重新创建 DevOps-jenkins 负载通常能够解决问题。有时还需要进入 Jenkins 后台查看问题(密码与 KubeSphere 后台密码相同)。

  1. 构建缓存问题

由于 git 缓存问题,所以我们将 jenkins-casc-config.yaml 中定义的 Agent 配置 idleMinutes 改为一个较大的值,以实现打包 Pod 在构建后不会被删除。

之所以只能这样,是因为 base-n8qkj 的卷 workspace-volume,卷类型是 EmptyDir 临时的,如果是 HostPath 类型的就好了,这点不知道官方是怎么考虑的。

  1. configmap 更新问题

在 K8s 中 configmap 的更新会自动生效,并同步到各个挂载了 volumes configMap 的 Pod 上去,这样就可以实现配置更新后自动生效而不用重新发布应用。

但是在使用中我们发现存在一个问题,这种生效机制是通过软连接实现的(改变软连接指向,删除旧的文件),而某些应用可能会出现在更新配置时,短暂的找不到文件报错的问题(phpfpm),所以针对这个情况我们额外做了处理,原理是应用不直接挂载 configMap 了,而是通过另一个容器去挂载 configMap 并处理好稳定的文件后再供目标应用使用。

某物联网数智化园区行业基于 KubeSphere 的云原生实践,k8s,容器平台,kubesphere,云计算

使用效果

使用 KubeSphere 后我们几乎就没再关注过服务是否在线等运维的琐碎事情了,因为 K8s 会保证一切按照预期进行,这使得我们的迭代发布速度大大提高,开发要做的只是提交代码,其它的一切都不用操心,极大的提高了开发编码的幸福度和对保障服务稳定的信心。

  • 无状态应用分布式部署,弹性伸缩;
  • 自动发布,自动化运维,故障自愈;
  • 一次构建到处运行,无惧环境搭建。

未来规划

由于还在逐步学习应用中,目前对 K8s 的应用场景还比较简单,未来还有很多探索的点,如:

  • 存储上,目前为了解决 web 无状态应用 可能也会有临时文件上传等需求,使用了 NFS 存储,这样多节点 Pod 可以共享存储,后面可以尝试使用其它更为可靠的分布式存储。
  • 应用上,目前主要是将无状态应用部署了上来,随着学习的深入,后面可以将更多的有状态应用也部署上来。

最后希望 KubeSphere 能够越来越普及,紧跟 K8s 官方标准,在降低上手门槛、社区、文档建设等方面不断取得突破,让更多的人能够更快速的享受到 K8s 的好处。

本文由博客一文多发平台 OpenWrite 发布!文章来源地址https://www.toymoban.com/news/detail-701045.html

到了这里,关于某物联网数智化园区行业基于 KubeSphere 的云原生实践的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【行业报告】:低碳&智能ALL “IN” | 印刷包装数智化转型之路

    当下,印刷包装行业的环保化、智能化发展已经成为低碳经济时代智造的新诉求。在以数字化和智能化为主要特征的工业4.0时代,印刷包装行业如何紧跟国家双碳政策,以市场需求为导向,解决企业降本增效难题? 印刷包装行业的智能制造转型迫在眉睫,一场以智能制造、个

    2024年02月12日
    浏览(39)
  • 智慧园区物联网平台架构

    智慧园区,是指融合新一代信息与通信技术,具备迅捷信息采集、高速信息传输、高度集中计算、智能事务处理和无所不在的服务提供能力,实现园区内及时、互动、整合的信息感知、传递和处理,以提高园区产业集聚能力、企业经济竞争力、园区可持续发展为目标的先进园

    2024年02月12日
    浏览(43)
  • 物联网在智慧园区的运用

    智慧园区是指综合运营管理平台利用新一代信息技术,在信息全面感知和互联的基础上,实现人、物、区域功能系统之间无缝连接与协同联动,实现化工园区管理运维的智能自感知、自适应、自优化,达到安全、便捷、高效、绿色的效果。在打造园区的信息化应用平台基础上

    2024年02月06日
    浏览(37)
  • 智慧工业园区建设方案-智慧化工园区物联网管理系统平台---豌豆云

    将化工园区海量信息互联、互通、互融,结合化工园区建设管理经验,通过“动态感知、主动监测、政企联动、综合管理”。 将事件管理从事后处置变为事前防控,保障生产安全,提升环保水平,结合可视化大屏,帮助管理者实时了解园区整体状态,为决策提供依据。助力化

    2024年01月23日
    浏览(58)
  • 人脸物联网智能门锁打造数字化智慧园区解决方案

    作为城市的基本组成单元,园区汇集了海量的数据和丰富的应用场景。天诚按照统一管控、绿色低碳的理念打造 智慧园区管理系统 ,深化智能化创新应用,推动园区生产、生活、治理与服务模式创新,对于城市打造新型智慧园区具有重要成效。 传统园区注重基础设施的建设

    2024年01月21日
    浏览(56)
  • 弹性计算中的云计算中的物联网和边缘计算

    作者:禅与计算机程序设计艺术 “弹性计算”作为云计算领域的一个分支,其主要目的是解决云计算资源的弹性扩展、高可用、可伸缩性等方面的问题。其核心技术包括虚拟机(VM)、容器(Container)、自动化、弹性调度等。在最近几年,随着物联网和边缘计算的兴起,弹性

    2024年02月14日
    浏览(42)
  • 基于ThreeJS的智慧园区

    最近一直研究threeJS,发现其中的ShaderMaterial及其有趣,可以自定义着色器,于是乎将学到的shader融合进去。 色彩斑斓的路灯 荧光道路 项目地址:Eggtart    账号密码:god 1  

    2024年02月15日
    浏览(36)
  • 基于Kubesphere实现DevOps

    dev 怎么开发 ops 怎么运维 参考项目链接:https://github.com/kubesphere/devops-maven-sample 持续集成是指软件个人的部分向软件整体部分交付,频繁进行集成以便更快地发现其中错误。 CI需要具备这些: 全面的自动化测试 这是实践持续集成持续部署的基础,同时,选择合适的自动化测

    2024年02月08日
    浏览(31)
  • 互联网行业真的不行了吗?

    英雄算法联盟 - 七月集训 已经开始 16 天,八月算法集训 将于 08月01日 正式开始,目前已经提前开始报名,报名方式参见(八月算法集训报名),想要参加的同学,建议提早报名,因为对于算法零基础的同学,会有一些提前的准备工作,比如需要 1 - 5 天的时间完成预训练 和

    2024年02月16日
    浏览(57)
  • 互联网行业数据安全建设实践方案

    互联网已经融入经济社会生产和生活各个领域,用户规模及普及率不断提 高,基础网络和数据资源日趋丰富,新模式新业态层出不穷带来新风险。 互联网总体情况 互联网已经融入经济社会生产和生活各个领域,带来新的生活方式和商业模式,教育、医疗、养老、抚幼、就业、

    2024年02月12日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包