部署时间可减少
服务器利用率提升
完美日记成立于 2016 年,是广州逸仙电子商务有限公司旗下品牌。该品牌致力于探索欧美时尚趋势,同时结合亚洲女性面部和肌肤特点,研发一系列“高品质、精设计”的欧美时尚彩妆产品。
自行维护服务器成本过高:早期互联网公司通常直接购买服务器,并在 IDC 机房租用机架进行部署,将应用程序直接运行在物理机上。如需扩展,就必须购买新的服务器。IDC 机房可能频繁出现各种故障,导致业务稳定性大大降低。如果 IDC 需要迁移,迁移的时间往往在夜晚业务低峰时段且需要耗费大量人力。在资源成本、服务稳定性和工作效率等方面都会带来巨大的消耗。
人工发版繁琐易错:2019 年双 11 大促前夕,完美日记小程序刚刚上线,采用传统的部署方式。某些应用需要在 SLB 上配置 OpenResty Web 平台,运维人员需要在 SLB 上手动依次勾选服务器,发布版本的时间长达半个小时以上。如果发版中出现问题,通常还需要延长一个小时以上的时间来完成故障排查。
大规模应用的研发与运维挑战:对于大规模应用的研发和运维人员来说,都需要考虑是否拥有足够的技术和能力来应对挑战,产品架构设计是否可以满足未来的企业需求,组织架构和文化是否已经适应企业的新战略发展。
全栈容器化简化服务器运维:自 2019 年起,完美日记便开始筹备容器化改造,包括改造方案的设计和对阿里云 Kubernetes 服务的选择。经过仔细的测试以及结合公司情况和人员配备情况,最终选择了阿里云容器服务 ACK 托管版集群来完成大规模应用部署,一次性将所有应用迁移至 ACK,并以标准的 Kubernetes 方式进行运维部署。
全链路可观测和流量防护提升业务稳定性:基于容器服务 ACK,完美日记将 IT 系统接入阿里云应用实时监控服务 ARMS,跟踪复杂的服务调用,支持对异常服务进行快速定位和修复。可观测监控 Prometheus 版对 ACK 容器资源进行统一监控。同时,完美日记使用性能测试服务 PTS 进行压力测试,利用秒级流量和真实地理位置流量等特性进行测试。通过收集压测数据并分析系统的强依赖和关键瓶颈点,对关键业务接口、关键第三方调用、数据库慢调用等进行限流保护,提升业务稳定性。
简单稳定且低成本的容器镜像仓库服务:完美日记选用阿里云容器镜像服务企业版(ACR EE),相较于自建 Harbor 更为稳定、成本更低。自建 Harbor 需要考虑计算、数据库和磁盘成本,在项目很多或镜像较多场景下,磁盘成本会升高。而使用 ACR EE 无需考虑维护成本。此外,自建 Harbor 容易出现镜像拉取失败问题,而 ACR EE 可以实现高并发。
容器弹性灵活应对流量洪峰:利用 ACK 的快速弹性能力,完美日记可以从容应对大促资源快速扩容。同时,在大促前,完美日记使用阿里云云数据库 RDS、阿里云安全等产品进行扩容、链路梳理、缓存、连接池预热、后端资源保障等,以确保大促活动的平稳进行。
极大提升运维效率,降低人力成本:容器化改造之后,完美日记的整个系统变得更加“轻松”。在切换到 Kubernetes 正式环境后,扩容时间只需约 90 秒,可以灵活配合产品运营节奏进行扩容,服务器扩容成本降低 70%~90%。同时,应用部署效率大幅提升,只需要按照文件模板即可创建一个服务,部署时间可减少 90%。
提升资源利用率,降低资源和管理成本:服务器资源可以自动计算并部署到服务器上,利用隔离技术可以部署多个项目服务器,提升约 50% 的服务器利用率。服务模块的自动负载均衡无需人工干预,人力工作量降低约 90%。服务模块的伸缩容无需编写脚本,只需点击伸缩按钮即可实现弹性伸缩,大大减少人工错误率,工作量降低约 70%。服务模块不可用时,ACK 将自动剔除并自动重启服务模块。服务器宕机时,运行在服务器上的服务模块将自动转移至可用服务器上,无需人工干预,工作量显著降低。