← 全部案例
智能家居巨头 Aqara 借助 KubeSphere 打造物联网微服务平台
KubeSphere对于跨多云平台的兼容、以及支持多插件的选择,在使用过程中加深了绿米联创对 Kubernetes 各个模块的理解,推进了他们在生产环境落地 Kubernetes 容器编排的步伐。并且,KubeSphere 解放了运维日常面临的重复工作,降低了应用的整体维护成本。
深圳绿米联创科技有限公司
智能家居

关于

深圳绿米联创科技有限公司(以下简称:绿米联创)成立于 2009 年。2016年,绿米联创推出了“全屋智能”理念的自有品牌——Aqara,致力于通过一系列智能家居产品技术以及服务商模式,为用户构建更加智慧的生活。旗下产品包括温度、湿度、门窗、人体、水浸、烟雾、燃气、光照和睡眠等各类传感器,以及智能开关、插座、窗帘电机、空调控制器、调光器、门锁等各类智能控制器,目前同时支持行业应用的自动化控制与大数据分析平台。

Aqara 秉持着“引领物联技术,服务千家万户”的愿景,坚持“持之以恒追求用户体验,坚持不懈创造用户体验”的使命,在智能家居行业不断创新,最终成为行业领军品牌。

挑战

绿米联创原本采用传统的应用部署方式,微服务架构 80% 以上都是偏内存型服务,资源利用率非常低,尤其是CPU、磁盘存储,且迭代速度也不尽人意。

为了改变这种情况,绿米联创试图从持续集成开始,Jenkins、Harbor 搭建,到测试环境 Docker Swarm 编排。但随着业务量增长速度过快,Docker Swarm 编排跨平台支持效果差,在业务量访问高峰期时,内部 Service 通信就会出现超时的问题。于是,绿米联创又将业务架构从 Docker Swarm 全面转向 Kubernetes。在原生安装与运维 Kubernetes 方面,他们想要借助第三方开源方案。

此外,绿米联创还需要一套拥有完善的审计、监控告警、权限分发,并且能自定义优化资源扩缩容策略、插拔式插件个性化定制,平台拥有常规问题自查策略,以及清晰明了的日志平台的容器服务。

 

解决方案

经过对比和调研,绿米联创从一众候选中,选择了 KubeSphere 容器平台。KubeSphere 凭借清爽的操作界面,向导式的资源创建方式,完全以应用为中心,更倾向于 Kubernetes 集群资源的管理,提供优雅的 API 接口,并且在 Kubernetes 之上集成与包装了运维开发常用的功能组件,例如 Jenkins、Harbor、Promethues、Apache SkyWalking,还支持在任何基础设施环境部署等优势,获得了绿米联创的认可。

绿米联创目前所有的无状态的服务都运行在 KubeSphere 上,有状态的数据存储类服务,使用云上的 Redis、HBase、Flink、Elasticsearch、MySQL 等集群服务。

目前,绿米联创海外地区的服务,基本上也都运行在 KubeSphere 之上,包括 Gateway 微服务路由调度、Push、Send 推送、iftt 定时等等。

由于绿米联创的业务以 Java 为主,因此其物联网微服务平台是基于 SpringCloud 框架进行微服务化,使用Apollo 分布式配置中心管理配置,Eureka 注册中心服务注册与发现。结合 Ribbon、Feign 实现微服务负载均衡以及服务调用。同时,我们使用 Hystrix 线程池实现隔离、熔断以及降级、sentinel 限流,而 SpringCloud-gateway 网关路由则用来实现路由调度,日志使用的是经典的 ELK 组合,APM 使用 SkyWalking 作为 Java 微服务分布式系统的应用程序性能监视工具。

截止目前为止,这一套物联网微服务平台已经在绿米联创的生产环境中平稳运行半年多。绿米联创计划在近期把公司开发、测试、生产环境中所有的有状态和无状态服务全部迁移到 KubeSphere 上去。


收益

KubeSphere 对于跨多云平台的兼容、以及支持多插件的选择,在使用过程中加深了绿米联创对 Kubernetes 各个模块的理解,推进了他们在生产环境落地 Kubernetes 容器编排的步伐。并且,KubeSphere 解放了运维日常面临的重复工作,降低了应用的整体维护成本。

KubeSphere 还让绿米联创对 Kubernetes 的入门变得更简单、加快推进生产环境 Kubernetes 的上线,对业务迭代有明显的效率提升,并且能够让研发随意切换、部署、验证各个应用的功能模块。