• [热门活动] 直播预告 | 华为云云原生FinOps解决方案,为您释放云原生最大价值
    还在对集群成本评估感到束手无策?还在担心不合理的K8s集群资源浪费?华为云云原生全新上线云原生FinOps成本治理中心,为用户提供多维度集群成本可视化,结合智能规格推荐、混部、超卖等成本优化手段,助力客户降本增效。 4月24日(周三)16:30-18:00,华为云云原生DTSE技术布道师 Roc老师将带来《华为云云原生FinOps解决方案,为您释放云原生最大价值》直播分享。华为云云原生FinOps解决方案通过可视化的成本洞察和成本优化,帮助用户精细用云以提升单位成本的资源利用率,实现降本增效目标,本期直播通过云原生上云现状分析及华为云FinOps方案及实践解析,系统化解析华为云云原生一系列云原生FinOps技术 ,为企业与用户提供企业上云成本管理的最优路径。▍直播精彩看点企业上云现状与云原生FinOps优势华为云云原生FinOps解决方案云原生FinOps成本展示与成本分析云原生FinOps成本优化华为云CCE云原生成本治理功能演示▍直播观看平台华为云官网 华为云开发者联盟视频号、CSDN、B站、虎牙、微博华为云视频号、快手、B站、虎牙、微博▍看直播 赢定制礼品 福利1 | 专家坐堂有奖: 即日起-4月25日,在指定论坛贴提问,评选优质问题送华为云定制POLO衫。 福利2 | 互动有礼: 官网直播间发口令“华为云 DTSE”抽华为云定制雨伞。福利3 | 有奖提问:直播过程中提问,评选优质问题送华为云定制长袖卫衣。扫码体验华为云CCE获取华为云云原生FinOps方案▼▼▼
  • [热门活动] 华为云亮相KubeCon EU 2024,以持续开源创新开启智能时代
    3月21日,在巴黎举办的云原生顶级峰会KubeCon+CloudNativeCon Europe 2024上 ,华为云首席架构师顾炯炯在 “Cloud Native x AI:以持续开源创新开启智能时代” 的主题演讲中指出,云原生和AI技术的融合,是推动产业深刻变革的关键所在。华为云将持续进行开源创新,与开发者共启智能时代。  ▲华为云首席架构师顾炯炯发表演讲AI对于云原生范式提出关键挑战在过去的几年里,云原生彻底改变了传统的IT系统,催化了互联网和政府服务等领域的数字飞跃。云原生范式带来的新的可能性,例如闪电般的快速销售和基于微服务治理的敏捷应用DevOps,已经深入人心。同时,人工智能的快速发展和广泛采用,包括大规模模型,已经成为行业智能的跳动心脏。根据Epoch 2023年的调研数据,基础模型所需的计算能力每18个月就会增长10倍,是摩尔定理揭示的通用计算能力增长率的5倍。AI带来的新摩尔定律和大规模AI模型的主导地位对云原生范式提出了挑战,顾炯炯总结了其中关键的4点:首先,低GPU/NPU平均利用率导致AI训练和推理的高成本;其次,大模型训练集群频繁的失败率限制了训练效率;第三,大规模模型的复杂配置导致AI开发门槛高;第四,大规模的AI推理部署面临着不可预测的最终用户访问延迟和数据隐私问题的风险。华为云AI创新为开发者迎接挑战提供思路随着AI模型变得越来越大,对计算能力的需求也呈指数级增长。这种需求不仅给云原生技术带来了挑战,也为业界提供了创新机遇。顾炯炯分享了一些华为云在AI创新方面的故事,为开发者解决这些挑战提供了参考。在云原生边缘计算平台KubeEdge的基础上,华为云实现了一个云原生多机器人调度管理平台。用户可以通过自然语言命令在云端输入任务指令,由系统协调边缘的多个机器人共同协作完成复杂任务。为了克服自然语言命令理解、大量机器人高效调度管理以及跨类型机器人访问管理的三个挑战,该系统采用了云端、边缘节点和机器人三个部分的架构,通过大模型执行自然语言命令,并进行流量预测、任务分配和路由规划。这一架构显著提高了机器人平台的灵活性,管理效率提升25%,系统部署周期缩短30%,新机器人的部署时间从月级缩短到天级。中国某顶级内容分享社区,每月活跃用户超过1亿。它的核心服务之一是主页上的推荐功能。推荐模型有近1000亿个参数。训练集群有数千个计算节点。一个训练作业需要数百个参数服务器和worker。因此,该社区对最优拓扑调度、高性能、高吞吐量有着强烈的需求。开源项目Volcano可以更好地支持在Kubernetes上运行的AI/ML工作负载,并提供了一系列作业管理和高级调度策略。Volcano项目引入了拓扑感知调度、装箱、SLA感知调度等算法,帮助社区将整体训练性能提升了20%,运维复杂度也大大降低。Serverless AI引领云原生发展趋势如何高效、稳定地运行AI应用,同时降低运营成本,成为摆在众多企业和开发者面前的一大挑战。为此,华为云总结了云原生AI平台的关键要求,提出了一种全新的云原生AI平台理念——Serverless AI。顾炯炯提到,从开发者的视角来看,Serverless AI致力于智能地推荐并行策略,让复杂的训练和推理任务变得轻而易举。它提供自适应的GPU/NPU自动扩展功能,能够根据工作负载的实时变化动态调整资源分配,确保任务的高效执行。同时,Serverless AI还维护着一个无故障的GPU/NPU集群,让开发者无需担心硬件故障带来的中断风险。更值得一提的是,该平台保持与主流AI框架的兼容性,让开发者能够无缝集成现有的AI工具和模型。对于云服务提供商而言,Serverless AI同样具有深远的意义。它不仅能够提高GPU/NPU的利用率,使训练、推理和开发混合工作负载得以高效运行,还能通过优化能效实现绿色计算,降低能耗成本。此外,Serverless AI平台还能实现跨多个租户的空间和时间GPU/NPU共享,提高资源的复用率。最重要的是,它为训练和推理任务提供了有保证的QoS和SLA,确保了服务质量和稳定性。Serverless AI平台采用了构建在操作系统和虚拟化之上的灵活的资源调度层,将应用程序框架的关键功能封装于应用资源中介层中。顾炯炯现场展示了Serverless AI平台的参考架构。他认为,这种架构设计,使得Serverless AI平台具有了大规模AI资源自动驱动引擎的特点,包括精确了解应用资源利用模式的资源分析,实现异构硬件资源池化的资源共享,基于GPU/NPU虚拟化和负载热迁移的AI训练任务容错能力,以及提高资源利用率的多维度调度和自适应弹性伸缩等优点。分论坛上,华为云技术专家提到,Kubernetes上运行AI/ML工作负载的使用量不断增加,许多公司在分布于数据中心和各种GPU类型的多个 Kubernetes 集群上构建云原生AI平台。使用Karmada和Volcano,可轻松实现多集群的GPU工作负载智能调度、集群故障转移支持,在保障集群内和跨集群的两级调度一致性和效率,并平衡系统整体资源的利用率和不同优先级工作负载的QoS,以应对大规模、异构的GPU环境管理中面临的挑战。Karmada为多云和混合云场景中的多集群应用管理提供即时可用的自动化管理,越来越多的用户在生产环境中使用Karmada构建灵活高效的解决方案。Karmada已于2023年正式升级为CNCF孵化项目,期待与更多伙伴与开发者们共建繁荣社区。Volcano与主流AI/大数据框架实现了无缝集成,有效解决了AI/大数据任务的作业管理,资源分配,资源调度等问题与挑战,为业界提供了分布式作业训练的最佳实践。在大模型日新月异的今天,Volcano将持续发力,解决多集群AI任务调度等难题,助推大模型训练与推理快速发展。“云原生技术的敏捷性和异构AI计算平台的创新性,将是提升AI生产力的关键。” 顾炯炯谈到,未来,华为云将持续致力于开源创新,与业界同仁、伙伴共同开启智能时代的新篇章。更多云原生技术动向关注容器魔方添加小助手k8s2222进入技术群
  • [热门活动] KubeCon 巴黎|与华为云一起,共创 CloudNative × AI 未来
    更多云原生技术动向关注容器魔方添加小助手k8s2222进入技术群
  • [热门活动] 直播预告 | CCE Autopilot:华为云容器全面进入“自动驾驶”时代
    还在为K8s集群繁琐的资源管理投入大量的运维时间和人力?还在担心K8s集群节点伸缩不够及时或者不合理导致成本浪费?华为云Serverless K8s服务 CCE Autopilot通过资源全托管的方式让基础设施免运维,为用户节省运维成本,通过高效精准的弹性灵活应对业务的平峰和洪峰,为用户节省资源成本。3月13日16:30 -18:00,华为云云原生DTSE技术布道师颜栎将带来《CCE Autopilot:华为云容器全面进入“自动驾驶”时代 》直播分享。本期直播将聚焦企业集群运维痛点提供Serverless最新方案,系统化介绍华为云CCE Autopilot带来的全新集群服务体验。使用华为云CCE Autopilot进行集群节点全托管,无需配置和运维基础设施,帮你自动部署、扩展和管理容器化应用程序,高效构建业务,运维效率提升90%。华为云CCE Autopilot,应运而生的Serverless K8s服务资源设施全托管,节点免运维,降低运维成本,让用户聚焦业务创新;资源精益管理,通过FinOps提供成本治理能力,提升资源利用率,降低资源成本;业界领先弹性速度,4,000Pod/30s,高效弹,精准弹,灵活应对业务洪峰和平峰,实现稳敏双修;面向不同场景提供通用负载、SMB(中长尾)负载、AI负载、Batch负载的场景化调优能力;直播观看平台华为云官网 华为云开发者联盟视频号、CSDN、B站、虎牙、微博华为云视频号、快手、B站、虎牙、微博▍本期直播精彩看点CCE Autopilot,提供业务运行最优的云原生基础设施:1. 集群节点全面托管,基础设施自动升级。2.故障实时监测与自愈,漏洞自动修复。集群管理“无极变速”:1. 集群规格自动调整,取消规格档位限制。2. 资源使用“无级变速”,算力资源灵活规格档位,去Flavor化。智能弹性,动态感知业务特征,自动预测触发弹性华为云CCE Autopilot提供Serverless服务体验的同时,保留了用户对资源的可见性满足了部分客户对资源灵活管理的需求。此外,CCE Autopilot完全兼容K8s接口,及时跟随K8s社区动态,用户可以从普通的K8s集群平滑迁移到CCE Autopilot,立即省去节点运维投入。扫描下方二维码体验华为云CCE Autopilot▼▼▼
  • [公告] 华为云云原生专家入选全球顶级开源组织CNCF技术监督委员会
    全球顶级开源组织云原生计算基金会(Cloud Native Computing Foundation,简称 CNCF)正式宣布其2024年技术监督委员会(Technical Oversight Committee,简称CNCF TOC)席位,华为云云原生开源负责人王泽锋,凭借其在CNCF领域长期卓越的贡献成功当选,成为本届 CNCF TOC 11位技术领军人物之一。CNCF致力于云原生技术的普及和可持续发展,汇集世界顶级厂商,发展至今会员单位已超过750+。CNCF技术监督委员会是CNCF的核心决策团队,为云原生社区提供技术领导,决定CNCF社区的技术走向,由董事会、Maintainer以及End User等多个选区投票产生。一直以来,CNCF TOC主要以欧美专家为主,本届选举中,华为云开源专家王泽锋获得CNCF Maintainer广泛支持,凭借Maintainer选区最高票当选新一届CNCF TOC委员(2024-2026任期)。这也标志着其个人及华为在云原生领域的持续贡献获得产业界的高度认可,代表了整个中国本土贡献者在国际舞台上开源影响力的新高度。云原生产业规模和前景巨大,不少技术领域仍然处于窗口期,可谓机遇与挑战并存。王泽锋表示:“中国在全球云原生产业发展中拥有非常明显的优势:巨大的数字经济规模、丰富的应用场景,不断推动技术层面的创新;不少本土科技公司凭借技术实力已在云原生的核心赛道中占据了重要位置。作为CNCF TOC的新任成员,我将致力于更好地联接国内以及国际开源社区,借助CNCF、华为等平台及资源,携手更多企业、开源组织、学术机构及广大开发者一起,共同推动云原生技术发展与产业标准化,赋能千行万业的数字化转型。”王泽锋:协作创新,共建更有生命力的开源社区作为最早来自中国的Kubernetes维护者之一,王泽锋早在2014年基于 Upstream first 的理念,参与 Kubernetes 上游社区贡献,并于2015年成为了国内最早的 Kubernetes maintainer 之一,其主导的 Kubernetes 社区的多个关键特性和子项目的设计研发工作在社区完成开发后被大量企业用户在生产环境中广泛使用;与此同时,他指导了超过30名开发人员成为Kubernetes和其他CNCF项目的业务骨干、核心开发者。2018 年,王泽锋与同事联合创立了业界首个云原生边缘计算项目KubeEdge 开源项目,并捐赠到 CNCF 基金会,通过开放社区的治理模式与业界开发者协作共享。KubeEdge 也因此成为 CNCF 第一个将云原生技术应用到边缘计算的开源项目。时至今日,KubeEdge 在交通、能源、通信、金融、工业制造、CDN、智慧园区等各行各业已经有了更加深广的应用和普惠价值。此外,他还发起了 Volcano云原生批量计算 、Karmada云原生多集群管理 等多个云原生开源项目,填补了云原生技术在相关领域的技术空白。作为CNCF中国大使,王泽锋在KubeCon + CloudNativeCon 程序委员会任职多年,并于 2023 年担任 KubeCon + CloudNativeCon China 联合主席。作为公认的演讲者,王泽锋多次在 KubeCon Europe 和 KubeCon China 上发表Keynote和分论坛议题演讲。此外,王泽锋一直是Kubernetes贡献者峰会的长期支持者,联合规划和组织多场KCS China、KCD,并从2018年开始,联合策划了 “Cloud Native Days China”系列 Meetup、“Cloud Native Lives”等一系列业内活动;与此同时,由他发起的系列云原生技术公共课程,帮助超过百万的中国开发者构筑云原生技术交流平台,学习和采用云原生技术。技术先驱,引领全球云原生生态圈作为CNCF亚洲唯一创始成员、白金成员,华为对 Kubernetes、Istio 等社区核心项目的贡献一直位居全球前列,社区影响力持续多年亚洲第一,加速了云原生技术从起步到成熟的过程;华为拥有10余位CNCF项目核心Maintainer,出版多部云原生领域技术书籍,是全球云原生开源技术的领导者之一。近年来,华为持续开源创新,先后向CNCF捐献业界首个云原生边缘计算项目KubeEdge、首个云原生算力调度引擎Volcano、首个多云容器编排引擎Karmada等重量级云原生项目,在网络、边缘、调度、多云等技术领域形成了相对成熟生态圈,并开源了Kurator、Kappital、Kuasar、Kmesh等创新项目,加速了云原生与边缘计算、AI、大数据等产业的融合。共享开源价值,为行业发展注入源生动力在数字经济快速演进的大背景下,开源作为数智化转型的创新驱动力,不断催生技术突破和业务创新,发挥出愈加凸显的价值。华为与业界分享生产实践经验及创新成果,与国际云原生社区共发展。未来,面向全球的云原生社区工作有何创新?王泽锋提出了他对CNCF TOC的愿景和其独特的价值:促进跨区域新贡献者和现有贡献者之间的经验分享和沟通。建立公共的维护者地图,帮助新加入的贡献者找到周围的维护者以获得支持和帮助,以新一代的维护者增进社区活力,促进项目的可持续性。建立项目导师和项目冠军机制,帮助加快新开源项目向CNCF的申请/引导过程,以及项目在CNCF沙盒和孵化器中的成长。更清晰的项目推进过程和相应的自动化工具,以减少项目维护者和TOC/TAG成员在观察和评估项目健康和项目成熟度方面所花费的时间。云原生+AI,开源加速构建AI基础设施面对AI时代迎面而来的挑战,华为云在云原生领域持续引领,打造多云场景下的AI云原生基础设施,加速构建AI时代最佳云底座。作为全球最早参与CNCF重点项目产品化的企业之一,华为云早在2015年基于Kubernetes、Istio等上游社区,推出了国内最早的商用容器产品,并于2016年发布国内首个公有云容器服务CCE(云容器引擎)。伴随华为云近年来的高速发展,目前华为云已经陆续发布Serverless容器CCI、应用服务网格ASM、智能边缘平台IEF、分布式云原生UCS等多个创新产品,连续七次登顶IDC发布的中国容器市场份额报告,这也是业界对华为云在容器领域一路领先给与的充分肯定。智能浪潮新形势下,华为云结合在云原生领域的领先优势,打造云原生多云融合基础设施,云原生AI基础设施,云原生Serverless基础设施等系列解决方案,陆续升级发布华为云CCE Turbo,华为云CCE Autopilot,Serverless云耀云容器等创新产品。由华为云开源并捐赠至CNCF的孵化级开源项目也在AI云边协同、AI混部调度、多集群算力分配等技术领域加速行业产品应用升级,为行业智能升级攻坚克难,注入源生动力。未来,华为云云原生将持续与全球开发者紧密合作,共同推进云原生技术的创新与发展,积极推动云原生技术在产业领域的深度融合应用,为促进全球数智化经济的繁荣发展贡献力量。更多云原生技术动向关注容器魔方添加小助手k8s2222进入技术群
  • [行业前沿] 亿级月活游戏《迷你世界》全栈容器化实践分享
    作者:本文由华为云客户迷你玩投稿背景迷你玩旗下《迷你世界》是一款国产沙盒创意平台,拥有全球数千万创作者进行去中心化内容创作,通过方块组合自由创造等方式,引导用户在平台上创作虚拟作品。2021《迷你世界》的每月活跃玩家人数已超过一亿。《迷你世界》此前面临的突出问题在于服务端的弹性:迷你世界服务器的规格较大,每个服务器上承载了很多游戏服进程,不同玩家的游戏时间上差异也比较大,为了保障深度玩家的游戏体验,即使只有一个玩家还在进行游戏,对应的游戏服务器也是不会缩容的,这必然会影响服务端整体的资源利用率和运营成本。我们期望通过容器灵活规格来解决《迷你世界》服务端的缩容问题,同时提升整个游戏系统的扩缩容、部署升级效率。挑战云原生技术以其灵活性、可扩展性和可维护性等优势,正在迅速改变企业的 IT 架构。第三方报告显示,2022年已经有超过75%的互联网公司在基于K8s部署生产业务,预期2025年这个数字将超过90%。然而在游戏场景中,k8s的还面临一些局限性。首先,游戏业务天然是有状态的,K8S原生的有状态资源StatefulSet并不擅长处理大量的、复杂的状态管理任务。其次,时延敏感性也是一个问题。在游戏中,时延直接影响到游戏的流畅度和玩家的体验,这就对K8s的容器网络实现提出了更高的要求。同时,安全性也是一个挑战。游戏服中可能包含大量的敏感信息,普通容器的隔离程度与虚拟化相比仍有一定差距。解决方案华为云CCE在网络、容器运行时上进行了增强,再配合社区workload,使能《迷你世界》后端全栈容器化,资源使用量较虚拟化部署环境减少了50+%。整体架构如下:网络方面,华为云CCE Turbo提供了一种更接近虚拟机的容器网络,这种模式下,容器成为和虚拟机等同的“一等公民”。容器网卡集成了虚拟网络的能力,比如通过CRD关联到安全组进行安全加固,更细粒度的IP地址管理等。更重要的是,这种容器网络支持Pod直接关联EIP,用户可以直接通过EIP访问应用。EIP的成本管理上,华为云提供了95计费的共享带宽,以多个EIP共享的带宽为计费单元。我们开发了专门的K8s webhook为不同的pod分配不同的共享带宽,来做到最优的成本控制。有状态应用管理方面:我们使用了OpenKruise社区的CloneSet来管理游戏服pod。CloneSet提供了pod的原地升级能力,可以在不重建pod的情况下对运行中的容器进行更新。我们还深度使用了它的定向缩容能力,通过自定义Hooks判断指定游戏服pod是否有活跃玩家,实现对游戏服缩容的精细化控制。OpenKurise的CRD配合控制器的模式在不同的K8s环境中具有良好的扩展性,只要厂商提供社区一致的API,均可正常部署运行。安全方面,当前我们的使用方式是服务端Pod与节点1:1部署,游戏服pod配置关联指定安全组,通过安全组和虚拟化对游戏服进行双重安全加固。效果《迷你世界》完成全量容器化后,在运维效率、资源成本都有了显著优化资源占用节省50%计算资源根据游戏的实施访问量自动管理,定时弹性伸缩配合指标触发的自动弹性伸缩,再加上定向缩容,资源总是能伸缩至合理水平,保障玩家的游戏体验。迭代效率提升容器化缩短了应用的迭代周期,通过灰度发布,流量治理等保证了业务平滑稳定升级,应用升级从小时级提升至分钟级。迷你玩和华为云在未来将Serverless领域加深合作:华为云容器实例服务CCI具有秒级弹性、按量计费的特性,非常贴合我们的应用场景。此外,华为云CCE提供弹性突发引擎,可以将CCI资源池以虚拟节点的方式接入CCE。基于这项能力,我们仅需将与节点强绑定的部分资源稍作调整即可将应用部署到Serverless容器服务中,进一步提升后端的弹性能力。同时CCI基于安全容器构建,独享内核,具有虚拟机级别的安全保障。下一阶段,我们考虑将部分负载逐步迁移到Serverless容器上。
  • [技术干货] KubeEdge v1.16.0 版本发布!集群升级部署易用性大幅提升!
    北京时间2024年1月23日,KubeEdge 发布 1.16.0 版本。新版本新增多个增强功能,在集群升级、集群易用性、边缘设备管理等方面均有大幅提升。KubeEdge v1.16.0 新增特性:集群升级:支持云边组件自动化升级支持边缘节点的镜像预下载支持使用 Keadm 安装 Windows 边缘节点增加多种容器运行时的兼容性测试EdgeApplication 中支持更多 Deployment 对象字段的 Override支持基于 Mapper-Framework 的 Mapper 升级DMI 数据面内置集成 Redis 与 TDEngine 数据库基于 Mapper-Framework 的 USB-Camera Mapper 实现易用性提升:基于 Keadm 的部署能力增强升级 K8s 依赖到 v1.27  新特性概览 ▍集群升级:支持云边组件自动化升级随着 KubeEdge 社区的持续发展,社区版本不断迭代;用户环境版本升级的诉求亟需解决。针对升级步骤难度大,边缘节点重复工作多的问题,v1.16.0 版本的 KubeEdge 支持了云边组件的自动化升级。用户可以通过 Keadm 工具一键化升级云端,并且可以通过创建相应的 Kubernetes API,批量升级边缘节点。云端升级云端升级指令使用了三级命令与边端升级进行了区分,指令提供了让用户使用更便捷的方式来对云端的 KubeEdge 组件进行升级。当前版本升级完成后会打印 ConfigMap 历史配置,如果用户手动修改过 ConfigMap,用户可以选择通过历史配置信息来还原配置文件。我们可以通过 help 参数查看指令的指导信息:keadm upgrade cloud --help Upgrade the cloud components to the desired version, it uses helm to upgrade the installed release of cloudcore chart, which includes all the cloud components Usage: keadm upgrade cloud [flags] Flags: --advertise-address string Please set the same value as when you installed it, this value is only used to generate the configuration and does not regenerate the certificate. eg: 10.10.102.78,10.10.102.79 -d, --dry-run Print the generated k8s resources on the stdout, not actual execute. Always use in debug mode --external-helm-root string Add external helm root path to keadm --force Forced upgrading the cloud components without waiting -h, --help help for cloud --kube-config string Use this key to update kube-config path, eg: $HOME/.kube/config (default "/root/.kube/config") --kubeedge-version string Use this key to set the upgrade image tag --print-final-values Print the final values configuration for debuging --profile string Sets profile on the command line. If '--values' is specified, this is ignored --reuse-values reuse the last release's values and merge in any overrides from the command line via --set and -f. --set stringArray Sets values on the command line (can specify multiple or separate values with commas: key1=val1,key2=val2) --values stringArray specify values in a YAML file (can specify multiple)升级指令样例:keadm upgrade cloud --advertise-address= --kubeedge-version=v1.16.0边端升级v1.16.0版本的KubeEdge支持通过 NodeUpgradeJob 的 Kubernetes API 进行边缘节点的一键化、批量升级。API 支持边缘节点的升级预检查、并发升级、失败阈值、超时处理等功能。对此,KubeEdge 支持了云边任务框架。社区开发者将无需关注任务控制、状态上报等逻辑实现,只需聚焦云边任务功能本身。升级 API 样例:apiVersion: operations.kubeedge.io/v1alpha1 kind: NodeUpgradeJob metadata: name: upgrade-example labels: description: upgrade-label spec: version: "v1.16.0" checkItems: - "cpu" - "mem" - "disk" failureTolerate: "0.3" concurrency: 2 timeoutSeconds: 180 labelSelector: matchLabels: "node-role.kubernetes.io/edge": "" node-role.kubernetes.io/agent: ""兼容测试KubeEdge 社区提供了完备的版本兼容性测试,用户在升级时仅需要保证云边版本差异不超过 2 个版本,就可以避免升级期间云边版本不一致带来的问题。更多信息可参考:https://github.com/kubeedge/kubeedge/pull/5330https://github.com/kubeedge/kubeedge/pull/5229https://github.com/kubeedge/kubeedge/pull/5289▍支持边缘节点的镜像预下载新版本引入了镜像预下载新特性,用户可以通过 ImagePrePullJob的 Kubernetes API 提前在边缘节点上加载镜像,该特性支持在批量边缘节点或节点组中预下载多个镜像,帮助减少加载镜像在应用部署或更新过程,尤其是大规模场景中,带来的失败率高、效率低下等问题。镜像预下载API示例:apiVersion: operations.kubeedge.io/v1alpha1 kind: ImagePrePullJob metadata: name: imageprepull-example labels: description:ImagePrePullLabel spec: imagePrePullTemplate: images: - image1 - image2 nodes: - edgenode1 - edgenode2 checkItems: - "disk" failureTolerate: "0.3" concurrency: 2 timeoutSeconds: 180 retryTimes: 1 更多信息可参考:https://github.com/kubeedge/kubeedge/pull/5310https://github.com/kubeedge/kubeedge/pull/5331▍支持使用 Keadm 安装 Windows 边缘节点KubeEdge 1.15.0 版本实现了在 Windows 上运行边缘节点,在新版本中,我们支持使用安装工具 Keadm 直接安装 Windows 边缘节点,操作命令与 Linux 边缘节点相同,简化了边缘节点的安装步骤。更多信息可参考:https://github.com/kubeedge/kubeedge/pull/4968▍增加多种容器运行时的兼容性测试新版本中新增了多种容器运行时的兼容性测试,目前已集成了containerd,docker,isulad 和 cri-o 4种主流容器运行时,保障 KubeEdge 版本发布质量,用户在安装容器运行时过程中也可以参考该PR中的适配安装脚本。更多信息可参考:https://github.com/kubeedge/kubeedge/pull/5321▍EdgeApplication 中支持更多 Deployment 对象字段的 Override在新版本中,我们扩展了 EdgeApplication 中的差异化配置项(overriders),主要的扩展有环境变量、命令参数和资源。当您不同区域的节点组环境需要链接不同的中间件时,就可以使用环境变量(env)或者命令参数(command, args)去重写中间件的链接信息。或者当您不同区域的节点资源不一致时,也可以使用资源配置(resources)去重写cpu和内存的配置。更多信息可参考:https://github.com/kubeedge/kubeedge/pull/5262https://github.com/kubeedge/kubeedge/pull/5370▍支持基于Mapper-Framework的 Mapper 升级1.16.0 版本中,基于 Mapper 开发框架 Mapper-Framework 构建了 Mapper 组件的升级能力。新框架生成的 Mapper 工程以依赖引用的方式导入原有 Mapper-Framework 的部分功能,在需要升级时,用户能够以升级依赖版本的方式完成,简化 Mapper 升级流程。Mapper-Framework 代码解耦:1.16.0 版本中将 Mapper-Framework 中的代码解耦为用户层和业务层。用户层功能包括设备驱动及与之强相关的部分管理面数据面能力,仍会随 Mapper-Framework 生成在用户 Mapper 工程中,用户可根据实际情况修改。业务层功能包括 Mapper向云端注册、云端下发Device列表等能力,会存放在kubeedge/mapper-framework 子库中。Mapper 升级框架:1.16.0 版本 Mapper-Framework 生成的用户 Mapper 工程通过依赖引用的方式使用 kubeedge/mapper-framework 子库中业务层功能,实现完整的设备管理功能。后续用户能够通过升级依赖版本的方式达到升级 Mapper 的目的,不再需要手动修改大范围代码。更多信息可参考:https://github.com/kubeedge/kubeedge/pull/5308https://github.com/kubeedge/kubeedge/pull/5326▍DMI 数据面内置集成 Redis 与TDEngine数据库1.16.0 版本中进一步增强 DMI 数据面中向用户数据库推送数据的能力,增加 Redis 与 TDengine 数据库作为内置数据库。用户能够直接在 device-instance 配置文件中定义相关字段,实现 Mapper 自动向 Redis 与 TDengine 数据库推送设备数据的功能,相关数据库字段定义为:type DBMethodRedis struct { // RedisClientConfig of redis database // +optional RedisClientConfig *RedisClientConfig `json:"redisClientConfig,omitempty"` } type RedisClientConfig struct { // Addr of Redis database // +optional Addr string `json:"addr,omitempty"` // Db of Redis database // +optional DB int `json:"db,omitempty"` // Poolsize of Redis database // +optional Poolsize int `json:"poo lsize,omitempty"` // MinIdleConns of Redis database // +optional MinIdleConns int `json:"minIdleConns,omitempty"` }type DBMethodTDEngine struct { // tdengineClientConfig of tdengine database // +optional TDEngineClientConfig *TDEngineClientConfig `json:"TDEngineClientConfig,omitempty"` } type TDEngineClientConfig struct { // addr of tdEngine database // +optional Addr string `json:"addr,omitempty"` // dbname of tdEngine database // +optional DBName string `json:"dbName,omitempty"` }更多信息可参考:https://github.com/kubeedge/kubeedge/pull/5064▍基于Mapper-Framework的USB-Camera Mapper实现基于KubeEdge 的 Mapper-Framework,新版本提供了 USB-Camera 的 Mapper 样例,该 Mapper 根据 USB 协议的 Camera 开发,用户可根据该样例和 Mapper-Framework 更轻松地开发具体业务相关的 Mapper。在样例中提供了 helm chart 包,用户可以通过修改 usbmapper-chart/values.yaml 部署 UBS-Camera Mapper,主要添加 USB-Camera 的设备文件, nodeName, USB-Camera 的副本数,其余配置修改可根据具体情况而定,通过样例目录中的 Dockerfile 制作 Mapper 镜像。global: replicaCounts: ...... cameraUsbMapper: replicaCount: 2 #USB-Camera的副本数 namespace: default ...... nodeSelectorAndDevPath: mapper: - edgeNode: "edgenode02" #USB-Camera连接的缘节点nodeName devPath: "/dev/video0" #USB-Camera的设备文件 - edgeNode: "edgenode1" devPath: "/dev/video17" ...... USB-Camera Mapper 的部署命令如下:helm install usbmapper-chart ./usbmapper-chart更多信息可参考:https://github.com/kubeedge/mappers-go/pull/122▍易用性提升:基于 Keadm 的部署能力增强添加云边通信协议配置参数在 KubeEdge v1.16.0 中,使用keadm join边缘节点时,支持使用--hub-protocol 配置云边通信协议。目前 KubeEdge 支持 websocket 和 quic 两种通信协议,默认为 websocket 协议。命令示例:keadm join --cloudcore-ipport <云节点ip>:10001 --hub-protocol=quic --kubeedge-version=v1.16.0 --token=xxxxxxxx说明:当--hub-protocol设置为 quic 时,需要将--cloudcore-ipport的端口设置为10001,并需在CloudCore的ConfigMap中打开quic开关,即设置modules.quic.enable为true。操作示例:使用 kubectl edit cm -n kubeedge cloudcore,将 quic 的 enable 属性设置成 true,保存修改后重启 CloudCore的pod。modules: ...... quic: address: 0.0.0.0 enable: true #quic协议开关 maxIncomingStreams: 10000 port: 10001 ......更多信息可参考:https://github.com/kubeedge/kubeedge/pull/5156keadm join 与 CNI 插件解耦在新版本中,keadm join边缘节点时,不需要再提前安装 CNI 插件,已将边缘节点的部署与 CNI 插件解耦。同时该功能已同步到 v1.12 及更高版本,欢迎用户使用新版本或升级老版本。说明:如果部署在边缘节点上的应用程序需要使用容器网络,则在部署完 EdgeCore 后仍然需要安装 CNI 插件。更多信息可参考:https://github.com/kubeedge/kubeedge/pull/5196▍升级 K8s 依赖到 v1.27新版本将依赖的 Kubernetes 版本升级到 v1.27.7,您可以在云和边缘使用新版本的特性。更多信息可参考:https://github.com/kubeedge/kubeedge/pull/5121  版本升级注意事项  新版本我们使用 DaemonSet 来管理边端的 MQTT 服务 Eclipse Mosquitto 了,我们能够通过云端 Helm Values 配置来设置是否要开启 MQTT 服务。使用 DaemonSet 管理 MQTT 后,我们可以方便的对边端 MQTT 进行统一管理,比如我们可以通过修改 DaemonSet 的配置将边端 MQTT 替换成 EMQX。但是如果您是从老版本升级到最新版本,则需要考虑版本兼容问题,同时使用原本由静态 Pod 管理的 MQTT 和使用新的 DaemonSet 管理的 MQTT 会产生端口冲突。兼容操作步骤参考:1、您可以在云端执行命令,将旧的边缘节点都打上自定义标签kubectl label nodes --selector=node-role.kubernetes.io/edge without-mqtt-daemonset=""2、您可以修改 MQTT DaemonSet 的节点亲和性nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - ... - key: without-mqtt-daemonset operator: Exists3、将节点 MQTT 改为由 DaemonSet 管理# ------ 边端 ------ # 修改/lib/systemd/system/edgecore.service,将环境变量DEPLOY_MQTT_CONTAINER设置成false # 这步可以放在更新EdgeCore前修改,这样就不用重启EdgeCore了 sed -i '/DEPLOY_MQTT_CONTAINER=/s/true/false/' /etc/systemd/system/edgecore.service # 停止EdgeCore systemctl daemon-reload && systemctl stop edgecore # 删除MQTT容器,Containerd可以使用nerdctl替换docker docker ps -a | grep mqtt-kubeedge | awk '{print $1}' | xargs docker rm -f # 启动EdgeCore systemctl start edgecore # ------ 云端 ------ # 删除节点标签 kubectl label nodes without-mqtt-daemonset新版本的 keadm join 命令会隐藏 with-mqtt 参数,并且将默认值设置成 false,如果您还想使用静态 Pod 管理 MQTT,您仍然可以设置参数--with-mqtt来使其生效。with-mqtt 参数在 v1.18 版本中将会被移除。  致谢  感谢 KubeEdge 社区技术指导委员会(TSC)、各 SIG 成员对 v1.16.0 版本开发的支持与贡献,未来 KubeEdge 将持续在新场景探索与支持、稳定性、安全性、可扩展性等方面持续发展与演进!▍相关链接Release Notes:cid:link_0更多云原生技术动向关注容器魔方添加小助手k8s2222进入技术群
  • [技术干货] Kurator V0.6.0:实现应用全流程生命周期管理
    Kurator 是华为云开源的面向分布式云原生环境的一站式解决方案。它利用 Karmada 作为多集群编排基础,内置集成了Istio、Prometheus、Thanos、Volcano、KubeEdge、Argo 等主流云原生技术。基于此,Kurator 构建了包括集群舰队管理、集群生命周期管理、统一应用分发、流量治理、监控和策略管理在内的分布式云平台管理能力。在最新 0.6.0 版本中,Kurator 为云原生应用增加了 CI/CD 流水线设置与管理功能,简化流水线创建。此外,强化了 0.4.0 版本发布的统一应用分发功能,可以在部署新应用时设置金丝雀(灰度)发布、A/B 测试、蓝绿发布三种渐进式发布策略。新增的流水线特性和渐进式发布功能与统一分发能力结合,实现基于代码仓库的 GitOps 工作流。这有助于快速构建分布式云原生平台,简化应用开发与发布流程。Kurator CI/CD 的结构图如下所示:用户更新代码仓库后,触发 Kurator 流水线,完成代码拉取、检查、编译并构建镜像。其后,用户更新应用部署模板,例如更改应用配置中的镜像信息。Kurator Application Controller 侦测到配置更新,将自动触发已应用的渐进式发布策略,实现应用的自动发布。如此一来,整个软件研发生命周期以代码为中心,实现开发至发布完整流程的自动化,简化运维、部署工作。  流水线  CI/CD 流水线实现源码到发布的自动化过程,包括源码管理、检查、测试等阶段。但由于每个阶段技术需求不同,导致流水线配置和管理难度大。Kurator 参考开源项目 Tekton,通过预定义常用任务模版的方式简化流水线创建操作。用户只需指定任务名称和代码仓库访问凭证即可创建流水线,使用门槛低。对熟悉流水线的高级用户,Kurator 也支持自定义任务。用户可以根据自己需求定制任务内容,满足个性化场景。通过预置任务模板和自定义任务的能力,Kurator 大幅简化了流水线配置和管理的难度。从图中可以看出,在使用流水线时,Kurator 完成了大部分工作。用户只需配置运行环境,选择任务模板即可完成流水线创建,大大减少学习成本。特别是与传统Tekton 相比,Kurator 提供了预定义任务模板,用户只关注任务内容而不再处理具体实现,实现了流水线使用的极致简化。除了简化流水线的创建操作外,Kurator 还考虑到了软件供应链安全,可以在流水线构建镜像时自动为其添加数字签名和源头证明,以防范假冒镜像,保证镜像源头可靠,保证在镜像制作方面的安全性。软件供应链安全指的是保护软件从开发到部署的整个生命周期过程中的安全性。软件供应链安全可以提高软件安全性能和用户信任度,预防恶意代码渗透。签名和证明添加后,镜像将自动上传至仓库。在镜像仓库中可以直接查看镜像签名和证明的详细情况,如图所示。用户可以用签名过程生成的公钥验证镜像签名和源头。这样在生产中,生产者仅需公布签名公钥,就能让用户验证数字签名和来源证明。接下来将展示一个在 Kurator 中创建一个流水线的示例:在流水线定义 spec.tasks 中指定任务名称,即可选择 Kurator 内置的常用任务模板。目前内置的常用任务模板包括:名称任务目标git-clone拉取源码go-test运行go代码单元测试go-lintgo源码静态检查build-and-push-image编译,构建镜像并上传此外,通过 customTask 定义可以发布自定义任务。通过指定 image、command 和 args,实现定制任务需求,如上述示例中自定义任务完成的工作就是打印README.md。更多的示例和细节,请参考: https://kurator.dev/docs/pipeline/  渐进式发布  金丝雀发布、A/B 测试和蓝绿发布都是主流的应用发布策略,可有效减少上线风险。Kurator 0.6.0 在原统一应用分发基础上,增加渐进式发布功能。现在应用可以指定三种渐进式发布策略中的一种策略。同时,可以将具备发布能力的统一分发,与 CI/CD 流水线结合起来,实现基于代码仓库的 GitOps 工作流。▍金丝雀发布金丝雀部署是一种渐进式发布策略。先向少数用户发布新的软件版本进行测试,根据测试结果,决定是否向更多用户推出新版本。旨在最大限度地减少新版本上线后对用户的影响,是一种更安全、更可靠的软件发布策略。参阅以下的操作示例,了解如何使用 Kurator 配置金丝雀发布。通过配置 rollout 中的 workload 字段,可以将金丝雀发布的目标设置为 webapp 命名空间下名为 backend 的应用。发布目标除了支持 deployment 应用之外,还支持 daemonSet应用。流量分析使用 Kurator 内置的请求成功率(request-sueccess-rate)和平均访问时延(request-duration)两个指标作为衡量新版本是否健康的标准。其中通过 thresholdRange 指定阈值。示例中要求请求成功率大99%,平均访问时延小于 500ms,新版本的服务才会被认定为健康。rolloutPolicy.canaryStrategy 配置了每次测试成功后,下次流量递增的比例和最终允许测试版本流量占比的最大值,从而实现渐进式发布新版本。示例中每次递增 10% 的流量流向新版本,最多为 50%。也可以设置 maxWeight 为 55,这样在最后一次测试的时候,只会新增 5% 的流量流向新版本。除了这些配置之外,Kurator 还可以设定完成验证之后,流量以什么样的比例逐步流向新版本。更多细节请参考: https://kurator.dev/docs/fleet-manager/rollout/canary/▍A/B测试A/B 测试为效果测试,是验证应用两版本表现的测试方法。它通过将用户分到不同组,每个组体验不同版本,然后分析每个组用户在使用过程中的各项指标,选择效果较好的版本。A/B 测试也可以先让部分用户试用新版本,收集真实环境下的用户反馈,再决定是否上线新版本。了解如何在 Kurator 配置应用的 A/B 测试,请参考下方操作示例。和金丝雀发布类似,由 workload 指定 A/B 测试的目标。通过 metric 指定测试的指标。A/B 测试和金丝雀发布不同的点在于需要配置 match 中的匹配规则,实现流量分组。上述 match 配置是只有 http 请求头满足使用 FireFox 浏览器或请求的 cookie 中包含 “type=insider” 的情况下,请求才会被转发到新版本。通过对不同请求头的处理达到对用户分组的效果,对不同的版本进行效果测试。除了匹配请求头之外,还能匹配 URI、端口号等。更多细节请参考: https://kurator.dev/docs/fleet-manager/rollout/abtest/▍蓝绿发布蓝绿发布是一种渐进零停机发布方法。它将生产环境分为两个独立运行的蓝绿环境,蓝环境承载当前实际流量,绿环境预部署新版本。新版本通过测试后,只需切换流量到绿环境,就能实现零停机升级。蓝环境备用支持回滚。通过实时扩容,可近乎零停机完成迭代交付,提高发布效率和用户体验。了解如何在 Kurator 配置蓝绿发布的操作示例,请参考下方。蓝绿发布需要配置目标应用、测试指标、迭代次数和容许测试失败的次数,其中测试的迭代次数由 analysisTimes 指定,容许测试失败的次数由 checkFailedTimes指定,除此之外无需配置别的规则。因为蓝绿发布在测试新版本的时候是将全局流量转发到绿环境中进行测试,没有金丝雀发布的渐进式流量递增和 A/B 测试的对用户分组的需求。更多细节请参: https://kurator.dev/docs/fleet-manager/rollout/blue-green/  未来展望  综上所述,通过 CI/CD 流水线和渐进式发布功能,Kurator 实现了从源码到发布的完整流水线自动化,真正提升了开发效率和运维能力,实现开发、配置和发布的应用全流程生命周期管理。此外还大幅简化了采用 CI/CD 流水线和渐进式发布的门槛。随着 Kurator 的不断迭代升级,我们还将继续为流水线添加更多的预定义任务模板,为渐进式发布提供更多的测试指标。欢迎大家试用 Kurator 并提出宝贵的意见与需求。Kurator的门户为:cid:link_0随着功能的逐渐完善,Kurator 将成为用户快速立体掌握云原生技术体系、高效运行分布式应用的强大工具。参考链接Kurator项目地址:cid:link_0CI/CD流水线:https://kurator.dev/docs/pipeline/软件供应链安全:https://kurator.dev/docs/pipeline/chain-security/渐进式发布:https://kurator.dev/docs/fleet-manager/rollout/金丝雀发布:https://kurator.dev/docs/fleet-manager/rollout/canary/A/B测试:https://kurator.dev/docs/fleet-manager/rollout/abtest/蓝绿发布:https://kurator.dev/docs/fleet-manager/rollout/blue-green/更多云原生技术动向关注容器魔方添加小助手k8s2222进入技术群
  • 【云享问答】第5期:十个问题,教你如何选择一个事半功倍的代码托管平台
    源代码是企业最宝贵的资产之一,随着软件规模的不断扩大,企业管理庞大的源代码成为一个重大挑战。为了保持企业员工持续稳定地开展软件开发活动,一个好用的代码管理平台变得尤为重要。代码管理工具是软件开发的基础,能够帮助团队协作更加高效,自动化交付更加流畅。因此,选择一款优秀的代码管理平台能够有效提升团队协作效率和自动化交付效率,从而更好地满足企业的软件开发需求。本期 【云享问答】 通过这10个问题,带你全方位了解华为云CodeArts Repo代码托管带来的开发体验。💬 1、什么是代码托管?代码托管服务有什么优势? 代码托管服务是基于Git的在线代码托管服务,具有安全高效、跨地域协同开发、代码浏览方便、集成工具、易于管理、易于合作、共享代码等优势。💬 2、开发者在选择代码托管服务时要注意哪些因素? 选择代码托管服务时,需考虑多方面因素。首先要确保服务有足够的安全性和隐私性,防止代码泄露或损失。其次,性能和稳定性也至关重要,以确保代码的快速访问和修改。同时,成本、可扩展性也是选择的关键因素。另外,用户界面是否友好易用,集成工具是否丰富,也是开发者关注的重点。除此之外,良好的支持、活跃的社区以及符合项目需求和法律规定的政策和规定,也都为选择代码托管服务提供了重要参考。💬 3、华为云CodeArts Repo 与DevOps有什么不同?CodeArts Repo有哪些特性?华为云CodeArts Repo与DevOps的不同之处在于它们的目标和作用范围。DevOps是一种开发模式,强调开发人员和运维人员之间的紧密协作,以快速、高效地交付高质量的软件。而华为云CodeArts Repo是一种具体的工具,主要用于代码管理和协同开发,以支持DevOps实践。CodeArts Repo是华为云基于自主研发内核的一款代码管理工具,提供全方位的代码托管服务,沉淀了华为多年内部代码管理经验,助力企业高效协同开发与项目管理。其拥有六大特性,确保代码安全稳定高效开发,支持多种开发场景,提升代码质量并传递开发经验。通过质量门禁确保入库代码质量,双向可追溯记录代码来龙去脉,内置多种模板确保开发规范有序。💬 4、华为云代码托管的工作模式是什么?代码托管(CodeArts Repo)采用Git Flow作为基础工作模式。Git-Flow提供了一组建议,通过严格执行这些建议的规则,帮助中小型研发团队,能够更好的规范自己的开发工作。并行开发:各个特性与修复bug,可以并行;团队协作:多人开发过程中,大家都能够理解其他人的当前工作;灵活调整:通过hotfix分支,支持各种紧急修复的情况;master分支:最为稳定,功能比较完整,随时可发布的代码;develop分支:用于平时开发的主分支,并一直存在,永远是功能最新最全的分支,包含所有要发布到下一个release的代码,主要用于合并其他分支;feature分支:用于开发新的功能的分支,一旦开发完成,通过测试,合并回develop分支进入下一个release;release分支:用于发布准备的专门分支;hotfix分支:用于修复线上代码的bug 。💬 5、在开发者应用的过程中,CodeArts Repo对开发环境和版本的要求如何?  CodeArts Repo对开发环境和版本的要求,主要有三个方面:1、浏览器兼容:建议使用Chrome和Microsoft Edge,同时也支持IE10+、Firefox和Safari。2、分辨率:推荐1920*1080或更高。3、单个仓库规格:页面单文件上传≤10MB本地单文件推送≤200MB在线修改代码保存行数≤5000行仓库总容量≤2GB。  💬 6、CodeArts Repo适合哪些类型的企业和人群使用?CodeArts Repo主要适合开发人员、运维人员、项目管理人员和高校师生等人群使用。对于开发人员,它提供了代码托管、版本控制和代码检视等功能;对于运维人员,它确保了代码的安全和稳定性;对于项目管理人员,它支持多组织协同和权限控制;对于高校师生,它提供了完整的教学环境和丰富的代码仓库模板。💬 7、开发者在应用代码托管服务时,如何防止软件代码被他人Copy?  处理方法1:主要依赖于软件和监控手段来防止代码泄露封闭USB接口和蓝牙接口,防止外部数据传输;安装特殊软件,监控并限制上传行为;监控特定文件的上传,需注意防止文件改名、压缩、混淆后上传;监控上传到特定网站,需防止上传到未知网络服务、邮件地址、自建服务器;监控电脑操作并记录,但这种方式只能在代码泄露后作为证据,不能事前防范。处理方法2:采取更严格的硬件和访问控制  禁止个人笔记本和不明来源的IP地址,确保只有授权设备能访问;企业全面采用华为云的云电脑(云桌面)进行开发,确保代码只存储在云端;限制只有云桌面可以访问软件开发生产线帐户,其他IP地址不允许访问;所有代码只存储在云端,无法拷贝到外部,确保代码不被泄露。    💬 8、CodeArts Repo有哪些安全特性?在代码托管(CodeArts Repo)产品层面具有以下安全特性:基于角色与权限的细粒度授权:在CodeArts Repo层面,提供针对代码访问的,更加细粒度的授权模型;不可抵赖性:我们提供代码仓库的完整访问日志,供用户审计;数据加密:用户的代码在CodeArts Repo中,是以加密方式存储的。  💬 9、CodeArts Repo如何确保代码安全?CodeArts Repo通过安全管理,合并请求和提交规则管理确保代码安全:合并请求和提交规则管理,保证代码上传质量;部署密钥和IP白名单,控制代码上传下载权限;在代码仓库中显示代码的界面增加水印,降低代码资产泄露风险,保证代码安全;审计日志,动态保证可追踪性;锁定仓库,保证版本确定性,防止未经授权的代码提交。💬 10、在应用的过程中,CodeArts Repo是如何解决较为严重的IO负载问题的?可以通过规避大量的上传和下载来解决,解决方式如下: 1、识别已经上传过的,不进行二次上传操作,减少上传次数。2、读写分离,规避频繁上传下载。3、Hash分片存储。更多关于CodeArts Repo的功能,可进入产品官网免费开通基础版使用
  • [获奖公告] 【云声·建议】10月限时建议反馈活动,最高可兑换华为手表
    23年【云声·建议】反馈活动第十场来啦~本月为今年最后一场累积兑换奖励月份,各位小伙伴抓紧机会,其中不限建议数量的高价值建议奖仍然保留,数量不限。8-10月累积金额最高的小伙伴有机会兑换华为GT系列手表哦~快来云声提优化建议吧!【活动时间】10月1日-10月31日【活动对象】所有华为云用户如果您是新用户您也可以先去体验我们的免费云产品服务~再来吐吐槽~如果您是老用户功能问题?体验不好?快来云声提建议告诉我们吧!!【奖项设置】有效建议总积分第1名:300元开发者盲盒礼包有效建议总积分第2-3名: 200元开发者盲盒礼包有效建议总积分第4-10名:100元开发者盲盒礼包其中反馈高价值优质建议奖的用户额外获得100-200元开发者盲盒礼包(建议数量不限,可与其他奖项叠加)PS:10月云声获奖用户的奖励金额可以选择累积与8-9月份激励一起发放一次集中兑换可选择兑换电子产品或者其他开发者定制礼品累积金额1000+有机会兑换华为GT系列手表、无线耳机等~【活动规则】1.有效建议积分云声关联产品/功能分为云产品建议、解决方案建议、平台建议,三种类型的建议对应的分值不相同,云产品建议(1分)、解决方案建议(0.5分)、平台建议(0.1分),按照当月有效建议类型对应不同分值以及邀请加分项来进行计算总排名,关联产品/功能可在云声提建议页面查看,示例如下;说明:云声关联产品/功能分别对应以上3种类型,取决于建议内容实际对应的产品/功能,与实际关联的标签无关。2.优质建议奖1)经内部产品研发团队评估为高价值优质建议奖的用户,额外奖励100元开发者盲盒礼包/人说明:高价值建议数量不限,且与有效建议积分奖可叠加,每位用户每月最多可获得一次;高价值优质建议要求建议能被采纳,以及内部评估建议对产品优化改进有重要作用;建议内容需要表述清晰,有明确的建议方案,最好有操作截图或链接等能进一步详细描述。3.注意事项1)若出现积分相同且排名一致的情况,在每月的已实现和已采纳建议中,会选出价值更高的建议用户给予奖励,基础评分计算规则,可参考如下表格。若同名次出现同分情况,由内部工作人员评选建议价值度更高的用户获奖2)同一用户在同一页面(文档)提出的同一类问题(包括但不限于错别字、语句不通顺、视觉体验等),在通过审核后仅算作一条有效建议数3)若发现代他人提交优化建议,此建议分值只取原分值30%4)兑换礼品以仓库现有礼品为准,不可以指定,如遇商品缺货,将随机换成其他等价值礼品发放
  • 【云享问答】第2期:十问Huawei Cloud Toolkit:开发插件如何提升云上开发效能
    众所周知,桌面集成开发环境(IDE)已经融入到开发的各个环节,对开发者的重要性和广泛度是不言而喻的,而开发插件更是建立在IDE基础上的功能Buff。Huawei Cloud ToolKit作为华为云围绕其产品能力向开发者桌面上的延伸,帮助开发者快速在本地连接华为云,打通华为云到开发者的最后一公里。接下来,将通过十问十答的方式,带领大家全面了解Huawei Cloud ToolKit。💬 1、为什么开发者日常开发需要IDE及开发插件?IDE的中文名字是集成开发环境,对于软件开发者而言是编码必不可少的工具,通常提供代码编辑、编译、调试等基本功能。对于一个非脚本式的工程开发,IDE对开发者而言是刚需。IDE插件是IDE基本能力上的一次升级,可以在IDE平台功能基础上定制化功能提供给开发者。华为云开发者插件在不同的IDE平台上向开发者提供了对接华为云的能力,方便开发者快速上云。💬 2、为了帮助开发者更好的使用华为云产品,华为云推出了哪些便捷工具或平台?华为云开发者插件平台(Huawei Cloud Toolkit)是围绕华为云开发者生态工具体系打造的一系列的 IDE 插件,支持IntelliJ平台、VSCode、华为自研CodeArts IDE,帮助用户快速连接华为云。支持华为云 API 能力对接、自然语言一键转换成 C++、Java 等标准代码、一键部署到云端等等。Huawei Cloud Toolkit主要是针对企业开发者、高校开发者。它可以帮助企业开发者在工作过程中快速上手、开箱即用、提质增效;帮助高校开发者灵活使用、简洁易用、方便特性,在工作、实验、练习、培训过程中提供很大便利。Toolkit可与主流IDE及华为云其他产品无缝集成,帮助开发者简化应用部署到服务器,尤其是华为云服务器中的操作。「开箱即用,全面免费」确保开发者快速上手,真正做到降本提效。💬 3、通过在IDE环境中集成Toolkit插件,开发者可以轻松完成哪些工作?Huawei Cloud Toolkit具备以下5个能力:1、API开放能力:Huawei Cloud Toolkit插件深度融合了华为云API的开放能力,快速、高效集成华为云API,支持用户检索API、查看API文档、调试API;2、代码补全能力:编程过程中支持SDK代码片段补全,加速用户集成华为云应用。3、一键部署能力:支持快速部署,一键部署到ECS、CCI;4、代码检查能力:提供业界规范(含华为云)检查,支持一键格式化和代码自动修复;5、其他能力:还支持包括微服务工程搭建等在内的诸多能力。并且随着Huwei Clud Toolkit下的插件市场不断扩大,其能力在不断的提升,若想查看插件具体能力请前往插件能力分布。💬 4、Toolkit系列插件支持哪些IDE平台,如何在这些IDE平台获取到Toolkit?当前,Huawei Cloud Toolkit提供了 10 个插件工具,具体能力分别如下:1、Huawei Cloud API:华为云API插件提供华为云服务全量API检索、调试、SDK代码自动补全、集成华为云CLI、示例代码等功能;2、Huawei Cloud DevSpore:华为云DevSpore插件支撑开发者在IDE上快速完成企业级微服务工程搭建;3、Huawei Cloud FunctionGraph:华为云FunctionGraph插件是Serverless产品的IDE插件,提供函数本地调试、运行、云端部署等功能;4、Huawei Cloud CodeArts Check:华为云代码检查插件提供业界规范(含华为云)检查,支持一键格式化和代码自动修复,当前支持Java、C++、C;5、Huawei Cloud CodeArts Snap:华为云 CodeArt Snap 智能编程助手致力于打造现代化开发新范式,通过将自然语言转化为规范可阅读、无开源漏洞的编程语言,提升开发者编码效率,助力企业快速响应市场不确定性;6、Huawei Cloud Toolkit Platform:华为云底座插件为华为云各类云服务插件提供公共能力,比如单点登录、UI集成、API访问等功能;7、Huawei Cloud ModelBox DevKit:华为云ModelBox插件帮助开发者更高效、便捷地注册ModelBox框架支持的设备及搭建ModelBox开发环境;8、Huawei Cloud Deploy:华为云部署插件旨在帮助开发者更高效、更方便地构建应用程序,支持将应用一键部署到ECS、CCI等;9、Huawei Cloud Developer Technical Support:华为云开发者技术支持插件支持开发者管理问题单、提供诸如搜索、提交问题单等功能;10、Open Capability Center/Huawei Cloud DeveloperKit:华为云开放能力中心插件关联华为云各云服务开发指南、视频课程、沙箱、API、SDK 和示例代码,帮助开发者更快地了解华为云、学习华为云、集成华为云。​除此以为,作为能够为华为云各类业务插件提供公共能力的底座插件,Huawei Cloud Toolkit Platform还提供如下功能:1、为所有 Huawei Cloud Toolkit 插件提供单点登录。2、为所有 Huawei Cloud Toolkit 插件提供能访问华为云服务的 API。3、为所有 Huawei Cloud Toolkit 插件提供 UI 集成能力。4、在IntelliJ系列平台和VS Code IDE,底座插件是 Huawei Cloud Toolkit系列插件的基础,若想使用其他插件的能力,请提前安装好底座插件并完成账号登录。💬 5、Toolkit支持在本地IDE连接到哪些华为云服务和产品?💬 6、相较市面上开发插件,Toolkit能够为开发者带来哪些便利?Huawei Cloud Toolkit 支持多个平台,包括IntelliJ系列、VSCode IDE、华为自研CodeArts IDE。Huawei Cloud Toolkit 的插件不仅支持公有云,同时还可以支撑本地化部署的私有云/混合云。💬 7、如何使用Toolkit来连接到华为云数 据库,并在本地进行测试和调试?RDS是华为云提供的数据库功能,开通RDS服务后,可以利用Huawei Cloud API插件在代码侧直接调用服务API,也可以在线调试。支持相关API代码一键补全等等。请参考帮助文档。💬 8、如何通过Toolkit快速调试华为云OpenAPI?开发者可以在入口函数处利用API自动生成API生成补全代码,然后需要手动补全AK、SK等用户信息后可以直接调试API。还可以利用API插件的在线调试功能,补全相关必选参数即可在线快速调试。💬 9、很多开发者使用Anaconda的Jupyter notebook和Spyder,Toolkit是否考虑开发这两者的插件?Jupyter notebook更多是作为一个交互式的命令行工具在做一些简单的调试,Spyder也是一个轻量级的IDE。对于Python开发者而言,Pycharm是更强大更主流的工具。Huawei Cloud Toolkit支持IntelliJ平台下的Pycharm。后续不排除考虑开发Jupyter notebook和Spyder的插件的可能,但尚未提上议程。💬 10、开发者如果想要从入门到深入了解使用Toolkit ,有哪些实用建议?Classroom是基于华为云的云上一站式教学实践平台,提供云上软件教学服务,支持帮助学习插件toolkit技术,包含MOOC课程,教学市场,云端实验室,伙伴赋能,竞赛赋能,高校联盟六大板块,支持高校师生实现备课、上课、作业、考试、实验、实训等全教学流程的线上教学,提供多类习题自动判题、企业级DevOps实训、免费在线习题库等众多高级特性辅助进行数字化教学转型。开发者登录Classroom平台后,选择MOOC课程模块,选择Toolkit课程进入课程了解华为云Toolkit产品的功能以及学习插件的使用,同时可以利用Classroom平台上的云端实验室模块进行沙箱实验。更多Huawei Cloud Toolkit 指南等你了解:cid:link_1Classroom平台:cid:link_2
  • 持续更新!图引擎服务GES优质文章精选汇总!
    华为GES图引擎服务优质博文精选图数据基础知识 & GES介绍人人都在谈的图数据库到底是个啥? 作者:你好_TT, 2021-05-08从零开始学Graph Database:什么是图 作者:弓乙, 2022-10-08画张图,就能秒级洞察千亿复杂关系 2021-01-12华为云新一代黑科技核心算法揭秘 作者:mr.FangYang, 2018-08-21云图说-解析华为云”黑科技“---图计算技术 作者:阅识风云, 2018-07-10聊聊图的相似性 作者:你好_TT, 2021-12-25图算法实践之k-hop 作者:你好_TT, 2021-05-12GES容灾介绍  2023-07-22【干货】华为云图数据库GES技术演进 作者:Chenyi, 2023-08-23华为云GES:十年磨一剑,打造业界一流的云原生分布式图数据库 2023-08-24GES使用指引 &图进阶学习华为云图引擎服务 GES 实战——创图 作者:你好_TT, 2021-08-22调用 GES 服务业务面 API 相关参数的获取 作者:你好_TT, 2021-08-23图数据库对 NULL 属性值支持情况 作者:你好_TT, 2021-06-18Gremlin语言学习系列链接汇总 作者:你好_TT, 2021-02-05如何使用GES进行社交关系考据?---GES查询能力介绍 作者:弓乙, 2021-10-19聊聊图上超级快的多跳过滤查询 作者:弓乙, 2023-4-12使用GES4Jupyter连接GES并进行图探索 作者:蜉蝣与海, 2022-06-25使用参数化查询提高Cypher查询的性能 作者:蜉蝣与海, 2022-04-10记一次图引擎GES cypher慢查询的分析与优化作者:蜉蝣与海, 2022-05-08GES对图细粒度权限控制的支持 作者:你好_TT, 2021-12-29使用Cypher子查询进行图探索 作者:蜉蝣与海, 2023-05-10华为云图引擎服务GES属性管理进阶 2024-01-15GES场景化应用全链路数据血缘在满帮的实践 作者:你好_TT, 2021-12-09GES与Flink的对接 作者:你好_TT, 2021-12-29要想推荐系统做的好,图技术少不了 作者:你好_TT, 2021-12-27图计算助力智慧金融 作者:你好_TT, 2020-04-18扒一扒GES如何赋能互联网电商风控 作者:Dr Thunder, 2021-04-23使用GES处理金融风控场景示例一 作者:图森破, 2020-05-19基于人货场的电商知识图谱的构建 作者:某某人, 2020-07-04采用GES构建锅炉仿真系统的关系图谱 作者:犀牛, 2020-06-28基于GES图数据库的网络架构模型构建 作者:左手看星星, 2020-07-29华为云ModelArts与图引擎联手打造,图深度学习强势落地! 作者:我们都是云专家, 2019-08-08基于GES图数据库的大规模数据追溯服务优化 2021-03-03618 技术特辑(一)不知不觉超预算3倍,你为何买买买停不下来? 作者:技术火炬手, 2021-06-11云图说-复杂网络的破解之道,图引擎带你径直迈向成功作者:阅识风云, 2019-10-16云图说-互联网应用的关系分析利器——企业EI的百晓生“图引擎”作者:阅识风云, 2019-04-19爱库存X华为云:乘“云”破浪,逐梦新电商: 外部链接 云社区链接构建站点数字孪生,支撑确定性运维:华为云九洲云图CloudMap 作者:HWCloudAI 2023-03-315分钟迁移关系型数据库到图数据库 作者:RiverSide 2023-07-17HyG超大规模图计算引擎专题GES图计算引擎HyG揭秘之图切分 作者:π, 2022-06-23CSR格式如何更新? GES图计算引擎HyG揭秘之数据更新 作者:π, 2023-06-15图神经网络 & 图深度学习专题图嵌入&知识表征の初体验 作者:图森破, 2020-05-15在OCR场景使用GCN图卷积 作者:图森破, 2020-06-11风控领域图深度学习算法思考 作者:图森破, 2020-07-14知识图谱trans系列算法介绍 作者:图森破, 2021-06-29图嵌入算法介绍 作者: 图森破, 2021-06-29图神经网络!打开企业盈利的下一个风口 作者:chenyi, 2019-12-28图卷积神经网络初探 作者:chenyi, 2019-11-29图技术漫谈Neo4j闭源转商,成为强大图计算平台还需要几步?作者:chenyi, 2019-12-28Freebase Data Dump结构初探, 作者:蜉蝣与海, 2021-07-27带你认识图数据库性能和场景测试利器LDBC SNB, 作者: 闹闹与球球, 2022-06-24从图引擎平台技术,看华为云EI的决心和野心作者:chenyi, 2018-01-29使用Jupyter可视化图查询语言Cypher语法树 作者:蜉蝣与海, 2022-08-22Euler浅析 作者:弓乙, 2019-01-23从两个开源图数据库PR看查询执行时的编码设计问题 作者:蜉蝣与海, 2022-05-03Notebook案例精选图数据库实践-新冠患者轨迹追溯电商风控案例教育知识图谱利用图数据库研究COVID-19论文数据集基于图引擎的医药查询系统Koolab新冠患者轨迹追溯端边云Serverless大数据湖解决方案附录:GES首页:cid:link_21GES最新动态:cid:link_17AI训练营图数据库系列 作者:Ray博士第一讲第二讲第三讲开发者中心-图引擎服务GES开发指南:cid:link_0GES帮助文档:cid:link_9GES算法API参数参考:cid:link_11
  • [技术干货] 工业数字主线云常见问题
    最新DME文档:工业数字主线云常见问题,请参考
  • [技术干货] 华为数据模型驱动引擎DME的应用案例1
    华为公司基于 DME 构建了 PBI 系统,PBI 承载了华为公司产品与解决方案、技术、研发团队等的基本信息,是公司产品基本信息的唯一、可信数据源
  • 数据模型驱动引擎DME论坛开通啦
    数据模型驱动引擎DME论坛开通啦!欢迎各位专家,看客,走过路过的,常来浇水,施肥!
总条数:16 到第
上滑加载中