DLI是支持多模引擎的Serverless大数据计算服务,其很好的实现了Serverless的特性:
 
1. 弱化了存储和计算之间的联系;
2. 代码的执行不再需要手动分配资源;
3. 按使用量计费。
 
那么如何才能更好的实现Serverless化的服务,同时又避免成为传统单体分布式的应用?微服务架构无疑是最优的选择。DLI基于微服务架构模式下的整体部署架构如下:
即对外以纯API形式提供服务,通过以APIGateway作为应用的入口,基于领域模型按子域进行微服务划分,从而实现Serverless化的大数据计算服务。
那么对于这样的一个基于微服务架构实现的Serverless服务,我们是如何在生产环境来部署与运维,从而在保证服务SLA的前提下实现快速迭代上线的呢?
随着技术的发展,部署的流程和架构都发生了根本性的变化,如今已经走入了轻量级、短生命周期的技术时代。
从最初部署在物理机上的大数据计算平台,到基于公有云的弹性计算云服务器部署大数据平台,再到DLI这样的Serverless服务,其很好展现了大数据计算服务的演变。那么如何才能更好的实现Serverless化的大数据计算服务的部署呢,DLI的答案就是基于Kubernetes+Docker来部署各微服务。
 
Kubernetes部署是在不停机的情况下部署服务的好方法,但是如何应对在接收生产流量后出现的错误,使新版本的服务更可靠呢?这可以通过将问题一分为二来看:
 
1. 部署,即将服务上线到生产环境中运行;
2. 发布,即使服务可用于处理生产流量。
传统上,分离部署流程与发布流程一直是一个挑战。但现在我们有了很好的选择,那就是基于服务网格。在DLI的部署中我们结合了Kubernetes+Istio,利用Istio的流量管理实现了服务发现、流量路由,从而轻松的将部署与发布分开,使新版本的服务更加可靠。
 
 

从部署和运维说说DLI(1)的更多相关文章

  1. CEPH集群操作入门--部署和运维

    部署 预检和安装Ceph 参考 虚拟机使用ceph-deploy安装ceph 创建群集 添加/删除监视器 密钥管理 添加/删除OSD 添加/删除MDS 清除主机 管理任务   运维 操作群集 健康检查 ...

  2. Log2Net的部署和运维

    前面几节中,笔者介绍了Log2Net组件的方方面面.但是,有人说,我用不起来,各种头疼的小问题.下面,我们就具体的看一看要怎么把这个组件应用到实际的项目中吧. 一.Log2Net组件的发布 前文中,我 ...

  3. Elasticsearch集群部署和运维命令

    Elasticsearch集群部署 下载tar包 在"https://www.elastic.co/cn/downloads/elasticsearch"页面,有 past rel ...

  4. FastDFS 分布式文件系统(部署和运维)

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/KamRoseLee/article/det ...

  5. 基于 Nebula Operator 的 K8s 自动化部署运维

    摘要:Nebula Operator 是 Nebula Graph 在 Kubernetes 系统上的自动化部署运维插件.在本文,你将了解到 Nebula Operator 的特性及它的工作原理. 从 ...

  6. DevOps的故事(如何整合开发和运维?)

    在一个与我们平行的世界中,有一个软件开发公司.这个公司所做的产品用户量近期增长的十分迅猛,但是令CTO头疼的是公司的两大部门:开发部和运维部近期也是“掐”得厉害.为解决这个问题,CTO决定倒入现在十分 ...

  7. 网易OpenStack部署运维实战

    OpenStack自2010年项目成立以来,已经有超过200个公司加入了 OpenStack 项目,目前参与 OpenStack 项目的开发人员有 17,000+,而且这些数字还在增加,作为一个开源的 ...

  8. centos7系统管理和运维实战

    centos7系统管理和运维实战 centos7安装配置 yum install -y net-tools >/etc/hostname echo "sqlserver01" ...

  9. dba和运维专家们说有丰富的大型分布式系统架构设计经验纯属扯淡

    如果,一开始就从事dba和运维的专家们说他们有丰富的大型分布式系统架构设计经验,那纯属扯淡.除非,他们从是从开发专家或者架构师转型而来,那么他们才有资格说自己有丰富的大型分布式系统架构设计经验. 运维 ...

  10. Harbor实现容器镜像仓库的管理和运维

    本次分享主要讲述了在开发运维中的管理容器镜像方法.为了便于说明原理,较多地使用Harbor作为例子. 内容主要包括: 开发和生产环境中镜像仓库的权限控制: 镜像远程同步(复制)的原理: 大规模应用镜像 ...

随机推荐

  1. 【Dotnet 工具箱】基于 .NET 6 和 Angular 构建项目任务管理平台

    1.Reha 时间管理大师 Rhea 是一个基于 C# 和 .NET 6 开发的在线任务管理平台,类似于 禅道.Jira.Redmine, 滴答清单等. 支持多视图多维度统一管理任务.多级结构,工作区 ...

  2. Cloud Bursting解决方案,Serverless容器降本增效极致体验

    本文分享自华为云社区<DTSE Tech Talk | 第42期:Cloud Bursting解决方案,Serverless容器降本增效极致体验>,作者:华为云社区精选. 线下IDC自建K ...

  3. Go命令大全:全面解析与实践

    本文详尽地探讨了Go语言的内建命令集,包括但不限于go build.go run.go get等.文章首先列举了所有常用的Go命令,并用表格形式简洁地解释了它们的功能.随后,我们逐一深入讲解了每个命令 ...

  4. Java面向对象(高级)

    1.类变量 类变量是被类的所有实例共享的. 类变量具体放的位置在哪?在内存中的那个区域,这和jdk的版本是有关的 静态变量在类加载的时候就生成了,即使没有创建类实例也能访问,当然通过实例来实现 类变量 ...

  5. 解决使用mitmprox抓包可以访问网页,但是使用python request 调用该网站接口报错问题

    可能有几种原因导致这种情况.以下是一些常见的问题和可能的解决方法: 证书验证问题: 当你使用mitmproxy抓包时,它通常会生成自签名的SSL证书,以便进行中间人攻击检查.但在Python中使用re ...

  6. Python 包管理器入门指南

    什么是 PIP? PIP 是 Python 包管理器,用于管理 Python 包或模块.注意:如果您的 Python 版本是 3.4 或更高,PIP 已经默认安装了. 什么是包? 一个包包含了一个模块 ...

  7. 用iptables做负载均衡实现高并发

    根据以往经验,在高配置服务器上部署Java服务,建议部署多个JVM实例,以提升JVM示例内存回收效率: 此时面临负载分发问题,常规想法是通过Nginx或者Apache做负载分流.然而在高并发情况下无论 ...

  8. 【封装】Splay

    注意确保操作合法性,否则可能陷入死循环 以点权作为排序依据 struct Splay{ #define ls p[u].son[0] #define rs p[u].son[1] #define ma ...

  9. java中的try-with-resource语法

    java的世界千奇百怪...当我甩出如下代码段,不知阁下如何应对? try(A a=new A()){ 和a变量无关的业务代码块 } 没错,这就是"臭名昭著"的try-with-r ...

  10. TCP/IP协议---三次握手和四次挥手

    TCP首部的数据格式 其中, 源端口号和目的端口号各占16位,端口范围1~65535.1024以下为知名端口,1024~65535是供用户使用.源端口,目的端口,源ip,目的ip这四个值唯一确定一个T ...