ucc

云原生存储系列文章(一):云原生应用的基石

落花浮王杯 提交于 2020-08-14 13:05:57
作者| 郡宝 阿里云技术专家 参与文末留言互动,即有机会获得赠书福利! 导读:存储服务支撑了应用的状态、数据的持久化,是计算机系统中的重要组成部分,也是所有应用得以运行的基础,其重要性不言而喻。在存储服务演进过程中,每一种业务类型、新技术方向都会对存储的架构、性能、可用性、稳定性等提出新的要求,而在当今技术浪潮走到云原生技术普及的时代,存储服务需要哪些特性来支持应用呢? 从本文开始,我们将用一个系列文章对云原生存储进行方方面面的探析,该系列文章将从云原生存储服务的概念、特点、需求、原理、使用、案例等方面,和大家一起探讨云原生存储技术新的机遇与挑战,欢迎大家讨论: "There is no such thing as a 'stateless' architecture" - Jonas Boner 云原生存储系列文章(一):云原生应用的基石 云原生存储系列文章(二):容器存储与K8S存储卷 云原生存储系列文章(三):Kubernetes存储架构 云原生存储系列文章(四):K8S存储实践-Flexvolume 云原生存储系列文章(五):K8S存储实践-CSI 云原生存储系列文章(六):存储卷高可用方案 云原生存储系列文章(七):存储调度与容量感知 云原生存储系列文章(八):数据卷扩缩容能力 云原生存储系列文章(九):云原生存储安全 云原生存储系列文章(十):高性能计算场景的存储优化

OAM 创始团队:揭秘 OAM Kubernetes 实现核心原理

与世无争的帅哥 提交于 2020-08-14 08:58:28
作者 | Andy Shi(阿里云高级技术专家)、天元(阿里云技术专家) 今年 5 月,阿里云和微软云共同宣布, Open Application Model (OAM) 社区携手知名混合云管理项目 Crossplane 社区,联合发布了 OAM 在 Kubernetes 平台上的标准实现与核心依赖库。 本次合作达成后,OAM 社区成功的将标准应用定义和标准化的云服务管理能力统一起来,迈出了实现真正意义上的无差别云端应用交付的关键一步 。 去年 10 月 , 阿里云和微软共同推出了 OAM 项目 ,旨在构建围绕 Kubernetes 的云原生应用规范。OAM 描述了一个模型 —— 开发人员可以在其中定义应用程序组件;应用程序操作员负责创建这些组件的实例并为它们分配应用程序配置;基础架构运营商负责定义、安装和维护平台上可用的基础服务。 本次合作是阿里云、微软与 Crossplane 社区的三方技术合作,主要围绕 OAM 在 Kubernetes 上的标准实现以及 Crossplane 项目的 OAM 化展开。因为 Kubernetes 社区在落地 OAM 模型的过程中,提出了关于 OAM 标准实现的诉求。所以这次合作的一个重点,就是三方工程师使用 Go 语言开发了一个 OAM Kubernetes 核心依赖库。这个项目的名字叫做 oam-kubernetes-runtime 。OAM

KubeCon 2020 阿里云推出四大企业级容器新品 ,详解云原生操作系统进化

戏子无情 提交于 2020-08-14 07:06:29
导读 :云原生操作系统进化,详解阿里云 ACK Pro、ASM、ACR EE、ACK @Edge 等四款企业级容器新品。 KubeCon 2020 中国站,阿里云容器服务负责人易立会在《云原生,数字经济技术创新基石》的演讲中,分享阿里云原生如何助力数字技术抗‘疫’,阐述阿里云对云原生操作系统的思考,同时详解阿里云 ACK Pro、ASM、ACR EE、ACK @Edge 四款企业级容器新品。 容器服务 ACK Pro,为企业级大规模生产环境提供增强的可靠性安全性,以及与可赔付标准 SLA,现已开启公测。同时还有三款产品商业化:服务网格 ASM,统一精准管控容器化微服务应用流量;容器镜像服务企业版 ACR EE,公共云首个独享实例形态的容器镜像仓库产品,是支撑阿里巴巴经济体的双十一同款利器,具备如下能力:多维度安全保障、全球镜像分发加速、DevSecOps 交付提效特点,保障企业客户云原生制品的安全托管及高效分发;边缘容器 ACK @Edge 采用非侵入方式增强,提供边缘自治、边缘单元、边缘流量管理、原生运维 API 支持等能力,以原生方式支持边缘计算场景下的应用统一生命周期管理和统一资源调度。 疫情期间,争分夺秒的云原生 云计算是数字时代新基建,而 2020 疫情也为数字化生活按下了快进键。“上班用钉钉,上学云课堂,出门健康码,订菜送到家”成为了日常生活一部分,这背后是一系列云计算

更新应用时,如何实现 K8s 零中断滚动更新?

笑着哭i 提交于 2020-08-14 02:41:21
作者 | 子白(阿里云开发工程师)、溪恒(阿里云技术专家) <关注阿里巴巴云原生公众号,回复 排查 即可下载电子书> 《深入浅出 Kubernetes》一书共汇集 12 篇技术文章,帮助你一次搞懂 6 个核心原理,吃透基础理论,一次学会 6 个典型问题的华丽操作! Kubernetes 集群中,业务通常采用 Deployment + LoadBalancer 类型 Service 的方式对外提供服务,其典型部署架构如图 1 所示。这种架构部署和运维都十分简单方便,但是在应用更新或者升级时可能会存在服务中断,引发线上问题。今天我们来详细分析下这种架构为何在更新应用时会发生服务中断以及如何避免服务中断。 图1 业务部署图 为何会发生服务中断 Deployment 滚动更新时会先创建新 pod,等待新 pod running 后再删除旧 pod。 新建 Pod 图 2 服务中断示意图 中断原因 :Pod running 后被加入到 Endpoint 后端,容器服务监控到 Endpoint 变更后将 Node 加入到 SLB 后端。此时请求从 SLB 转发到 Pod 中,但是 Pod 业务代码还未初始化完毕,无法处理请求,导致服务中断,如图 2 所示。 解决方法 :为 pod 配置就绪检测,等待业务代码初始化完毕后后再将 node 加入到 SLB 后端。 删除 Pod 在删除旧 pod

谊品生鲜:放弃传统数据库架构,全站上阿里云

两盒软妹~` 提交于 2020-08-13 12:22:01
疫情之下,生鲜电商的订单突然暴涨。 社区生鲜龙头企业 谊品生鲜 就是一个典型代表。它的在线交易量激增,日订单量超过10万单。 对电商企业而言,这对业务是个巨大的好消息;但对于IT、对于谊品生鲜的核心业务系统则是一个巨大的挑战! 所有做互联网、做电商核心业务系统的技术人员都知道,访问量容量巨增,这对于后台系统会带来各种不可预知的问题:性能卡顿,网站、APP、小程序等入口不能访问,订单出错,支付不了…… 要命的是,出现其中的任何一个问题,都会对业务、对用户体验、对品牌造成巨大伤害。 更进一步,万一出现了某个问题(说实话,这世界谁也不能保证100%不会出现),而IT却不能快速解决,将会是灾难性的后果。 作为谊品生鲜IT基础架构的负责人,杨航深知其中滋味。 但幸运的是,他告诉中国软件网,这次他闯过来了。 而记者也发现,他的闯关经历,或许是电商企业、甚至是互联网公司应对业务量暴增的、实现可控、健康运营的“ 最佳实践 ”。 01 传统ERP被厂商卡脖子 为应对业务的快速扩张,2018年年底,谊品生鲜成立了研发团队。同时,开始大量采购第三方系统,例如ERP、仓储、供应链等。 这些系统都基本上是本地部署,自己买服务器,数据库基本都采用Oracle。 这些第三方业务系统往往有一个共同的特点,即核心业务逻辑往往都写在Oracle数据库里。 这就带来了一个巨大的风险:一旦系统出了问题

揭秘:如何为 Kubernetes 实现原地升级

坚强是说给别人听的谎言 提交于 2020-08-13 10:38:14
作者 | 王思宇(酒祝) 阿里云技术专家 参与阿里巴巴云原生文末留言互动,即有机会获得赠书福利及作者答疑! 概念介绍 原地升级 一词中,“升级”不难理解,是将应用实例的版本由旧版替换为新版。那么如何结合 Kubernetes 环境来理解“原地”呢? 我们先来看看 K8s 原生 workload 的发布方式。这里假设我们需要部署一个应用,包括 foo、bar 两个容器在 Pod 中。其中,foo 容器第一次部署时用的镜像版本是 v1,我们需要将其升级为 v2 版本镜像,该怎么做呢? 如果这个应用使用 Deployment 部署,那么升级过程中 Deployment 会触发新版本 ReplicaSet 创建 Pod,并删除旧版本 Pod。如下图所示: 在本次升级过程中,原 Pod 对象被删除,一个新 Pod 对象被创建。新 Pod 被调度到另一个 Node 上,分配到一个新的 IP,并把 foo、bar 两个容器在这个 Node 上重新拉取镜像、启动容器。 如果这个应该使用 StatefulSet 部署,那么升级过程中 StatefulSet 会先删除旧 Pod 对象,等删除完成后用同样的名字在创建一个新的 Pod 对象。如下图所示: 值得注意的是,尽管新旧两个 Pod 名字都叫 pod-0,但其实是两个完全不同的 Pod 对象(uid也变了)。StatefulSet 等到原先的

ClickHouse内核分析-MergeTree的Merge和Mutation机制

懵懂的女人 提交于 2020-08-13 04:09:36
引言 ClickHouse内核分析系列文章,继上一篇文章 MergeTree查询链路 之后,这次我将为大家介绍MergeTree存储引擎的异步Merge和Mutation机制。建议读者先补充上一篇文章的基础知识,这样会比较容易理解。 MergeTree Mutation功能介绍 在上一篇系列文章中,我已经介绍过ClickHouse内核中的MergeTree存储一旦生成一个Data Part,这个Data Part就不可再更改了。所以从MergeTree存储内核层面,ClickHouse就不擅长做数据更新删除操作。但是绝大部分用户场景中,难免会出现需要手动订正、修复数据的场景。所以ClickHouse为用户设计了一套离线异步机制来支持低频的Mutation(改、删)操作。 Mutation命令执行 ALTER TABLE [db.]table DELETE WHERE filter_expr; ALTER TABLE [db.]table UPDATE column1 = expr1 [, ...] WHERE filter_expr; ClickHouse的方言把Delete和Update操作也加入到了Alter Table的范畴中,它并不支持裸的Delete或者Update操作。当用户执行一个如上的Mutation操作获得返回时,ClickHouse内核其实只做了两件事情:

20年行业变革与技术演进,当下CDN如何为政企数字化转型加速?

ⅰ亾dé卋堺 提交于 2020-08-12 15:29:43
CDN是内容分发网络,它可以将本来位于源站的内容分发到全国各地的节点,方便用户去就近访问所需的内容,以此达到缓解互联网网络拥塞、提升应用响应速率、改善用户体验的作用。随着互联网行业的变迁,CDN经历了几个关键的技术发展阶段。 紧随互联网浪潮,CDN走上历史舞台 谈到CDN诞生,不得不得到万维网之父Tim Berners-Lee。麻省理工学院教授Tim Berners-Lee作为互联网发明者之一,在制订了3w标准后,敏感地预见到在不久的将来网络拥塞将成为互联网发展的障碍,于是他提出一个技术挑战,要发明一种全新的、从根本上实现互联网内容的无拥塞分发的方法。当时在隔壁的Tom Leighton意识到通过数学算法可以解决内容传输的问题,并且开始实施自己的商业计划,在1998年成立了第一家CDN商业公司。 此后的1999年至2001年,全球互联网迎来发展浪潮,网站和互联网服务如同雨后春笋般蓬勃生长,网页内容加速需求爆发,CDN也因此走上历史舞台。最早CDN都是以将静态内容缓存到终端用户附近的形式来存在的,比如将文本、HTML、JSS、图片、文件等缓存到网络边缘,如果源站有新的静态资源产生,CDN也会及时去缓存这些资源,这可以避免集中访问带来的拥塞,并优化跨地域、跨运营商访问性能问题,让用户更快地浏览到想要的内容,也能为源站服务器的减负。 行业变迁,从内容缓存到动态加速 随着互联网的兴起

SpringCloud 应用在 Kubernetes 上的最佳实践 — 部署篇(开发部署)

心已入冬 提交于 2020-08-12 11:36:27
作者 | 孤弋 阿里云高级技术专家,负责 EDAS 的开发和用户体验优化工作。 导读 :在上一篇文章 《SpringCloud 应用在 Kubernetes 上的云上实践 - 开发篇》 中讲到可以通过两个工具,轻松地将一个 SpringCloud 应用从初始化到本地运行。本篇文章,我们将介绍如何将上一篇文章中提到的应用在云上跑起来。 初始化集群 为了将应用运行在云端,首先我们需要一个 Kubernetes 集群,在 EDAS 中使用 Kubernetes 集群目前最快的方式,是将一个阿里云容器集群中的 Kubernetes 集群( ACK 集群 ),导入到 EDAS 中来。 如果还没有ACK集群的话,您可以通过以下两种方式来创建一个: 直接进入容器服务的控制台进行创建; 如果您已经有一个在云上建好的集群,或者有一个在其他 IDC 或友商中有的集群,也可以在容器服务这边通过“注册已有集群”的方式,导入到容器服务中来。 等到 Kubernetes 集群就绪之后,在 EDAS 上需要进行一次集群“导入”,导入方式如下图所示: 在导入集群时,EDAS 会做以下操作: 初始化 EDAS 的集群控制器和相关资源,主要包含:基于开放云原生应用标准的 OAM Controller、日志采集的 Agent、监控链路中的 Arms 环境信息等;其中大部分控制器运行时不会占用用户集群的资源,而会运行在

掌门教育微服务体系Solar第3弹:Nacos企业级落地下篇

泪湿孤枕 提交于 2020-08-12 08:59:40
联席作者:谢璐 谢庆芳 伊安娜 任浩军<br />郑重鸣谢:Nacos - 彦林,Spring Cloud Alibaba - 小马哥、洛夜,Nacos 社区 - 张龙(pader)、春少(chuntaojun) 相关文章推荐: 掌门教育微服务体系 Solar | 阿里巴巴 Nacos 企业级落地上篇 掌门教育微服务体系 Solar | 阿里巴巴 Nacos 企业级落地中篇 前言 在高速发展的时候,公司规模越来越大,老师人数越来越多,这时候公司不能铺太多人去做运营与服务,必须提高每个人效,这就需要技术驱动。因此掌门教育转变成一家技术驱动型的公司,如果被迫成为一家靠资金驱动的公司就活不下去了。 -- 张翼(掌门教育创始人兼CEO) 掌门教育自2014年正式转型在线教育以来,秉承“让教育共享智能,让学习高效快乐”的宗旨和愿景,经历云计算、大数据、人工智能、 AR / VR / MR 以及现今最火的 5G ,一直坚持用科技赋能教育。掌门教育的业务近几年得到了快速发展,特别是今年的疫情,使在线教育成为了新的风口,也给掌门教育新的机遇。 随着业务规模进一步扩大,流量进一步暴增,微服务数目进一步增长,使老的微服务体系所采用的注册中心 Eureka 不堪重负,同时 Spring Cloud 体系已经演进到第二代,第一代的 Eureka 注册中心已经不大适合现在的业务逻辑和规模,同时它目前被