首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >最佳案例 | QQ 相册云原生容器化之路

最佳案例 | QQ 相册云原生容器化之路

作者头像
腾讯云原生
发布于 2022-05-06 03:10:22
发布于 2022-05-06 03:10:22
5.8K1
举报

吕朋钊,腾讯业务运维高级工程师,曾负责 QQ 相册、小世界业务的存储接入层运维,现负责 AI 业务的运维。

背景

QQ 相册是 QQ 产品中为用户提供图片存储,分享等功能的成熟产品,自上线以来,一直为用户提供稳定快速的图片上传和下载服务。作为社交业务组内第一个上 TKE 的平台,相册在过去一年多时间里总结出了一套适合自身的 TKE 上云实践方案。

服务场景

自相册全面改造上云之后,新的架构如下:

问题

随着相册各模块已基本实现容器化,也暴露出了不少使用上的问题。

资源利用率提升与 CICD 优化

1. 资源利用率提升

复用集群、独立集群迁移到共享集群

复用集群因为是使用老旧机器搭建的 K8s 集群,在使用上会有比较多的损耗,而且经常会有资源抢占严重的情况。而独立集群因为母机规格不够高,会造成一定程度的资源浪费。基于这两点,把复用集群和独立集群的系统迁移到复用集群是较好的选择。会发现,迁移后的资源利用率和错误码次数都得到了明显的改善。

同时使用 HPA 弹性扩缩容,根据 CPU 利用率,让资源在业务低峰期得到释放,高峰期自动扩容,可以更好地节约成本。

2. 部署策略优化

因为当前基于一个可用区的命名空间建立一个 workload 的方案没有考虑到单可用区的容灾,所以我们在一个集群的多个可用区都建立了 workload,同时在其他地域也建立了容灾的 workload,当有机房或者地域级别的故障发生时,可以自动切换到其他机房或者地域。

3. 七彩石配置

每个应用都使用七彩石作为配置管理,在 TKE 场景中,配置变更会更改 workload yaml 中的 annotations 字段,而 downward api 会把 annotations 的值作为 volumn 注入到容器的七彩石目录,智研之后还会调用容器内部的 configuration-reload.sh 从而实现配置变更。此过程因为只涉及修改 annotations,并不会令pod和容器重建,一个 pod 的整个配置变更过程只需要几秒。

4. ClickHouse 日志查询

随着相册业务日志量的增加,日志存储成本也在升高,因此我们把日志迁移到了 ClickHouse。在可接受的影响范围内,ClickHouse 所需资源只需要 ES 的30%-50%。

5. Tget 拨测

业务监控方面结合 Tget 拨测,对 oc 域名和源站域名都做了拨测告警,提高针对 vip 被封禁或者网络导致问题的响应速度。

6. 智研一站式接入

相册正在接入智研一站式开发,使用智研提供的从需求-开发-测试-发布上线-线上运营的研发全生命周期管理服务,让相册 CICD 可以更好地提高效率。

运营开发能力

1. 告警分析手机端自助剔除

结合智研的告警分析回调接口,可以手动在企业微信界面上剔除某台机器在北极星的绑定。

2. 质量分分析

针对平常监控不到的新错误码引起的异常失败率升高,质量分分析工具可以让运维人员快速知道当前是由哪个错误码引起的质量降低。

云原生成熟度提分

1. 业务稳定是第一位

云原生提分实践过程中,发现很多模块的瓶颈并不是 CPU,而是流量或者内存,但是目前云原生的计算方式只计算 CPU,所以制定 HPA 扩缩容策略时需要综合各维度去考虑。

2. 降低 request 值

对于某些流量型的模块如 http、preupload和 prxoy,可以把 workoad 的 request 的值适当降低,这样可以让 CPU 利用率的提升有立竿见影的效果,需要结合压力测试来确认 request 降低后 CPU 不会成为瓶颈。

小结

随着相册的 TKE 业务从其他平台转到共享集群,结合部署优化策略和运营开发能力,总结如下:

  1. 云原生成熟度有了显著的提升。
  2. 相册平台累计使用 TKE 规模达5万+核。

3. 打通智研 CICD 流程,显著提升日常开发和运维效率。

宠粉福利

本文一键三连(点赞+在看+评论),评论区抽10名幸运鹅送腾讯定制T恤!活动截止至5月10日12点!

  往期精选推荐  

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-05-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 腾讯云原生 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
1 条评论
热度
最新
腾讯相册分享无法生成二维码,紧急,微信反馈无人跟进处理。
腾讯相册分享无法生成二维码,紧急,微信反馈无人跟进处理。
回复回复点赞举报
推荐阅读
编辑精选文章
换一批
【云原生|实践指北】5:真实业务场景下云原生项目落地实践学习
C站这么多大佬都讲了如何去实践Docker或者K8s简单实战,笔者也没有真实做过一些云原生实战项目,都是跟着B站大学学过一些简单概念与基本入门的命令。也就不多写这些知识了!
程序员洲洲
2024/06/07
1740
【云原生|实践指北】5:真实业务场景下云原生项目落地实践学习
案例 | 信安运维基于 TKE 平台的容器技术实践
汤英康,腾讯高级工程师、Kubernetes 开源协同 PMC,负责TEG信息安全部的容器化上云相关工作。 引言 截止到2021年5月,TEG 信安运维团队历时一年,完成了 TKE 容器从0到1的平台能力建设,集群总规模超过60万核,在资源成本、服务质量和运营效率上都取得了明显的收益。本文将介绍信安 TKE 容器的建设思路和历程,分享各阶段遇到的问题和方案,希望能给其他上云团队提供一些参考。 背景 信安致力于提供专业的内容安全解决方案,承接了公司内外大量的业务安全需求,随着业务量的迅速增长,信安内部的资源
腾讯云原生
2021/06/30
7760
用户案例 | 腾讯小视频&转码平台云原生容器化之路
李汇波,腾讯业务运维高级工程师,目前就职于TEG 云架构平台部 技术运营与质量中心,现负责微信、QQ社交类业务的视频转码运维。 摘要 随着短视频兴起和快速发展,对于视频转码处理的需求也越来越多。低码率高清晰,4K、超清、高清、标清适配不同终端和不同网络环境来提升用户体验,以及水印、logo、裁剪、截图等多样化的用户需求。 对于资源的多样化需求和弹性扩缩容也需要快速响应,而随着公司自研上云项目的推进,设备的稳定性和多样性可提供更多选择,来满足像朋友圈、视频号、广告、公众号等转码业务快速、稳定、抗突发的资源需
腾讯云原生
2021/11/17
1.4K0
QQ浏览器信息流云原生应用之路
宋廷豪,高级工程师,就职于PCG-腾讯看点。主要负责QQ浏览器信息流推荐架构的相关工作。 背景 QQ 浏览器信息流(QB)推荐架构支撑了 QQ 浏览器、快报主 feeds 场景、浮层等信息流卡片实时推荐的能力,架构上不仅仅要支持多业务、多产品,如 QB 、快报、外部合作等,而且需要能够快速支持各种类型场景的能力,如主 TL 、浮层,且能够快速扩展支持垂直频道和 APP 。那么信息流推荐架构需要做到灵活模块化,水平易扩展。 为了做到海量级实时精准推荐,信息流推荐架构划分为了四层:展控层、排序层(精排/粗排
腾讯云原生
2021/08/17
7920
成本降低40%、资源利用率提高20%的 AI 应用产品云原生容器化之路
郭云龙,腾讯云高级工程师,目前就职于 CSIG 云产品三部-AI 应用产品中心,现负责中心后台业务框架开发。 导语 为了满足 AI 能力在公有云 SaaS 场景下,服务和模型需要快速迭代交付的需求,保障服务在不稳定高并发时的高成功率,以及进一步提升资源利用率,AI 应用产品中心进行了一系列的调研与实践,本篇将重点介绍团队在容器化方面的实践经验。 背景和问题 公有云 AI SaaS 产品(如人脸融合[1])的一般服务流程为:C 端或 B 端客户通过采集设备采集图像、音视频等,经由云 API 等接入方式传入
腾讯云原生
2021/09/23
7640
三年全面上云,腾讯自研业务超千万核资源的容器管理实践
作者 | 王涛 仅用三年时间,基于腾讯云 TKE 底座,腾讯自研业务容器化规模已达到千万核级别的 CPU 资源规模。面对如此海量的异构资源和复杂多样的业务场景,腾讯是如何做到资源利用率 65% 的?在调度编排、弹性伸缩、应用管理、稳定性保障等方面,腾讯又有哪些秘籍?在 ArchSummit 2022 全球架构师峰会(深圳站)上,腾讯云自研上云容器平台负责人王涛发表了题为《如何管理超千万核资源的容器规模》的演讲,为大家逐一揭秘。 腾讯自研业务容器化上云历程 腾讯自研业务容器化上云的技术路线经历了多个阶段
深度学习与Python
2023/03/29
1.7K0
三年全面上云,腾讯自研业务超千万核资源的容器管理实践
TAD-云原生时代的应用定义
在 Kubernetes 成为容器编排事实标准的云原生时代,无数开源或者闭源项目,如众星捧月般围绕着它,建立各种生态,涵盖着集群管理,资源管理、平台管理、可观测性领域的运维管理等诸多领域,其中很多优秀项目都如雨后春笋似地出现。然而,作为这个编排系统的终端使用者的应用领域,却似乎是受到了冷落。本文将以应用的第一视角,对腾讯自研的云原生应用定义Tencent Application Definition(简称TAD)进行介绍,简要说明腾讯研发团队基于 K8s 之上的应用层面做的一些探索。
腾讯专有云
2022/06/24
3.1K0
TAD-云原生时代的应用定义
腾讯云 Serverless 函数跑在 K8s 上,突破企业服务新格局
背景 自 2013 年提出以来,Serverless(无服务器)作为屏蔽服务器、按调用计费、事件驱动、弹性自动伸缩的计算服务,深受开发者喜爱,被称为云原生未来发展的方向。 最新的调查报告显示:在核心业务中使用 Serverless 的用户达到 18.11%;已经开始和计划使用 Serverless 技术的用户超过了 70%。根据 Datadog 数据,有超过 50% 的使用云服务的企业或组织使用了 Serverless 技术。 但是,当开发者从创业阶段过渡到大型企业阶段,原来的 Serverless 模式
腾讯云原生
2023/05/04
9060
腾讯云 Serverless 函数跑在 K8s 上,突破企业服务新格局
宙斯盾 DDoS 防护系统“降本增效”的云原生实践
tomdu,腾讯云高级工程师,主要负责宙斯盾安全防护系统管控中心架构设计和后台开发工作。 导语 宙斯盾 DDoS 防护系统作为公司级网络安全产品,为各类业务提供专业可靠的 DDoS/CC 攻击防护。在黑客攻防对抗日益激烈的环境下, DDoS 对抗不仅需要“降本”还需要“增效”。 随着云原生的普及,宙斯盾团队持续投入云原生架构改造和优化,以提升系统的处理能力及效率。本文主要介绍宙斯盾防护调度平台上云过程实践与思考。 为什么上云? 云原生作为近年来相当热门的概念,无论在公司内各部门,还是公司外各大同行友商,都
腾讯云原生
2021/10/19
2.2K0
Serverless 如何应对 K8s 在离线场景下的资源供给诉求
韩沛,腾讯云高级工程师、专家产品经理,从事云计算行业 8 年,拥有丰富的研发和云产品策划经验。目前主要负责建设腾讯云云原生产品体系,主导 TKE、EKS 等产品及容器化监控、大数据、AI等解决方案的设计工作,并协助推动腾讯各BG 业务架构的云原生化。 本文整理自腾讯云云原生产品团队的专家产品经理韩沛在 Techo 开发者大会云原生专题的分享内容——Kubernetes 混部与弹性容器。本次分享主要分为三部分:基于 K8s 的应用混部、提升应用混部效果的关键、弹性容器对混部集群的价值。 讨论 K8s 的
腾讯云原生
2021/01/11
1K0
最佳实践 | 作业帮云原生成本优化实践
董晓聪,作业帮基础架构负责人,主要负责架构研发、运维、DBA、安全等工作。基于开源的力量,和云厂商一起完成作业帮技术体系的云原生重塑。 项目背景 作业帮教育科技(北京)有限公司成立于2015年,一直致力于用科技手段助力教育普惠,运用人工智能、大数据等前沿技术,为学生提供更高效的学习解决方案。随着业务需求的发展,作业帮的 IT 系统面临巨大挑战,现有基础平台架构已经无法满足快速增长的业务需求。业务对快速迭代、急速弹性、调用链追踪、统一的监控日志平台、提升计算资源利用率等需求迫在眉睫。 2019年下半年,作业
腾讯云原生
2021/11/24
9950
云原生背景下的运维价值思考与实践
作者:刘天斯,腾讯游戏高级工程师 前言 随着公司自研上云战略如火如荼地进行,IEG-增值服务部作为较早一批响应的团队,截止目前自研上云已完成1/3的流量切换,日PV超百亿。切云的服务大量采用了云原生的应用与技术架构,作为公司第一批面临云原生环境的业务运维,深切感受到云原生给运维工作带来的机遇与挑战,运维模式的转型已经迫在眉睫,此篇文章最大的价值在于将我们的转型思路、方法与实践,提供给后面更多面临同样挑战的团队借鉴与参考。下面我将从业务场景、运维转型之道、云端收益等几个方面来跟大家一起来探讨。 一、业务服
腾讯技术工程官方号
2020/11/27
2K0
用户案例 | 腾讯医疗资讯平台云原生容器化之路
yuhuliu,腾讯研发工程师,关注存储、大数据、云原生领域。 摘要 医疗资讯业务在高速发展过程中,形成了覆盖不同场景、不同用户、不同渠道的几十个业务,以及上千个服务。为了高效满足用户多样化的需求,腾讯医疗技术团队通过 TKE 上云,使用 Coding DevOps 平台,以及云上可观测技术,来提升研发效率、降低运营运维成本。本文介绍我们在上云过程中一些实践和经验,以及一些思考和选择。 业务背景 stage1: 腾讯医疗资讯平台主要包括了医典、医生、医药等核心业务,其中医典主要提供医疗相关内容获取、医疗知
腾讯云原生
2021/11/03
1K0
节点运维新范式,原生节点助力企业全链路降本
在云原生领域,Serverless 已然是大势所趋。相比 Serverful 模式(基于云服务器集群的K8s运维模式),Serverless 模式屏蔽了资源概念,大幅提升运维效率。用户无需介入底层运维:像操作系统的安全补丁升级这样的动作,判断升级时机 - 升级前置检查 - 无损分批升级全部都由平台自动闭环。但 Serverless 真的适合所有场景么?其实不然。
腾讯云原生
2022/11/25
8700
一文了解云原生大数据
大数据文摘出品 作者:迟慧 随着行业的快速发展和业务的高速迭代,数据量也呈爆炸式增长,大数据云原生化逐渐成为企业数字化转型的重要演进方向。数字化驱动企业提升运营效率,洞察商业机会;云原生化提升 IT 系统效率,促进业务敏捷,大数据云原生化是为企业创新提供无限可能。 大势所趋:云原生大数据 传统的大数据架构在资源利用、高效运维、可观测性等方面存在诸多不足,已经越来越无法适应当下的发展需求。具体来讲,传统大数据架构主要存在以下几方面的问题: 传统大数据组件繁多,安装运维复杂,在生产使用中需要大量的人力支持; 在
大数据文摘
2023/02/23
1.2K0
一文了解云原生大数据
超时错误码减少99.85%,QQ聊天图片自研上云的技术详解
自研业务存储平台-是 QQ 的富媒体(图片、视频、语音、文件等)数据传输、存储、处理等全链路解决方案的平台。致力于为用户提供稳定快速的群聊 、单聊图片上传和下载服务。为了面对突发热点也能快速响应,作者团队决定对其进行上云处理。本文着重以 QQ 聊天图片(简称:QQ 图片)为例讲述整个上云的过程及调优。
腾讯云开发者
2023/08/18
5040
超时错误码减少99.85%,QQ聊天图片自研上云的技术详解
vivo 云原生容器探索和落地实践 | Q推荐
作者 | vivo 互联网容器团队 - Pan Liangbiao 本文根据潘良彪老师在“2022 vivo 开发者大会"现场演讲内容整理而成。vivo 互联网技术公众号后台回复【2022 VDC】获取互联网技术分会场议题相关资料。 2018 年起,vivo 以容器作为基础底座,打造了一站式云原生机器学习平台。向上支撑了算法中台,为算法工程师提供数据管理、模型训练、模型管理、模型部署等能力,为广告、推荐和搜索等业务赋能,成功为算法实现了降本、提效,让云原生和容器价值初露锋芒。基于机器学习平台的试点成果
深度学习与Python
2023/03/29
6490
vivo 云原生容器探索和落地实践 | Q推荐
最佳案例 | 日 PV 超百亿级的游戏营销服务云原生容器化之路
曹鑫,腾讯业务运维工程师,擅长大规模K8s集群运营和容器化,目前就职于 IEG 增值服务部 营销基础平台中心,现负责腾讯游戏数据营销服务上云和营销基础平台建设。 背景 游戏营销服务通过分析玩家在游戏内的行为数据,精准发起运营活动,实现拉新、拉活跃、拉付费、拉回流等效果,使游戏获得更大的收益。服务有如下特点: 节奏快,比如五五开黑节,九九战斗之夜,周年庆,活动仅持续数日 数量多,平均每天都会有几十个活动上线,而且活动种类繁多 访问量无法精准预估,很难精准的预测一次活动的访问量,玩家参与度经常超预期 访问量
腾讯云原生
2021/12/02
1.4K0
TKE 注册节点,IDC 轻量云原生上云的最佳路径
林顺利,腾讯云原生产品经理,负责分布式云产品迭代和注册节点客户扩展,专注于云原生混合云新形态的推广实践。 背景 企业在业务的持续运维过程中,感受到腾讯云 TKE 带来的便捷性和极致的使用体验,将新业务的发布以及老业务的维护都迁移到云上 TKE 来实现。但很多企业数据中心建设较为早期,选型上采取了自建 IDC 机房的方案,长久以来的 IDC 运营维护和企业上云的诉求产生了冲突和矛盾: 1、资源难利旧/利用率低 业务大部分在云上运行,存量的 IDC 主机难以利旧; 云下资源业务利用率低(主要是 CPU 资源),
腾讯云原生
2022/12/27
1.7K0
TKE 注册节点,IDC 轻量云原生上云的最佳路径
案例 | 腾讯广告 AMS 的容器化之路
张煜,15年加入腾讯并从事腾讯广告维护工作。20年开始引导腾讯广告技术团队接入公司的TKEx-teg,从业务的日常痛点并结合腾讯云原生特性来完善腾讯广告自有的容器化解决方案。 项目背景 腾讯广告承载了整个腾讯的广告流量,并且接入了外部联盟的请求,在所有流量日益增大的场景下,流量突增后如何快速调配资源甚至自动调度,都成为了广告团队所需要考虑的问题。尤其是今年整体广告架构(投放、播放)的条带化容灾优化,对于按需分配资源、按区域分配资源等功能都有着更强的依赖。在广告内部,播放流系统承载了整个广告播出的功能,这
腾讯云原生
2021/06/25
1.8K0
推荐阅读
相关推荐
【云原生|实践指北】5:真实业务场景下云原生项目落地实践学习
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档