BORG

01-Kubernetes背景介绍

痴心易碎 提交于 2021-02-10 11:36:13
什么是Kubernetes? Kubernetes产生的背景 Kubernetes的发展历程和应用现状 什么是Kubernetes? 生产级别的 容器 编排 系统 自动化的容器部署、扩展和管理 Kubernetes是用于自动部署,扩展和管理容器化应用程序的开源系统 借鉴Google内部的群集管理系统“Borg”(2014 EuroSys)和“Omega”(15年的生产环境应用经验) Google于2014年开源,捐献给云原生计算基金会(CNCF,Cloud Native Computing Foundation) Kubernetes意思 希腊语 驾驶员(Pivlot)或舵手(Helmsman) 一般简称k8s(K ubernete s) Kubernetes产生背景 我认为是两方面的流行 微服务 容器 容器 什么是容器? 一系列隔离运行的进程,提供了一种轻量操作系统层面的虚拟化技术 每个容器拥有自己的PID,Uscr,UTS,Network栈命名空间等 与传统VM比具有启动块、性能损耗小,更轻量等优点 Docker是目前使用最广,最成熟的容器技术 K8s默认使用Docker引擎 也可使用Rkt(CoreOS),或其他遵循CRI(continer runtime interface)的容器引擎,例如Containerd等 容器化系统面临的挑战 容器解决了应用打包、部署、运行的问题

Docker 公司宣布把 Docker Distribution 捐献给了 CNCF

倖福魔咒の 提交于 2021-02-07 08:11:34
文章目录 1 什么是 Docker Distribution 2 为什么要把 Docker Distribution 捐献给 CNCF 3 关于 CNCF 2021年2月4日,负责维护 Docker 引擎的 Justin Cormack 在 Docker 官方博客宣布把 Docker 发行版(Docker Distribution)捐献给了 CNCF,全文如下:​ 我们很高兴地宣布,Docker 已经把 Docker 发行版(Docker Distribution)捐献给了 CNCF。Docker 致力于开源社区和我们许多项目的开放标准,这一举动将确保 Docker 发行版有一个广泛的团队来维护许多注册中心的基础。 如果想及时了解Spark、Hadoop或者HBase相关的文章,欢迎关注微信公众号: iteblog_hadoop 什么是 Docker Distribution 发行版是开放源代码,它是容器仓库(container registry,Docker Hub 的一部分)和许多其他容器仓库的基础。它是容器仓库的参考实现,应用非常广泛,因此是容器生态系统的基础部分。这使得它在 CNCF 新家非常合适。 Docker Distribution 主要重写了用 Python 编写的原始 Registry 代码,这是一个比较早的设计,其中没有使用内容寻址存储。Docker

被传“疯”了!GitHub上都在找的分布式核心笔记终于来了

微笑、不失礼 提交于 2020-10-24 07:58:26
什么是Java分布式? 简单的来说就是一个大型的系统往往被分为几个子系统来做,一个子系统可以部署在一台机器的多个 JVM 上,也可以部署在多台机器上。但是每一个系统不是独立的,不是完全独立的。需要相互通信,共同实现业务功能。 一句话来说:分布式就是通过计算机网络将后端工作分布到多台主机上,多个主机一起协同完成工作。 分布式作为现在作为Java开发必知必会的技术,同时分布式技术也属于面试中的必问题,那么我们就需要十分明白分布式,今天就为大家整理了一份Java分布式核心原理笔记,GitHub上人人都在找的分布式核心技术笔记终于终于免费开源了! 这份笔记涵盖了:分布式协调与同步、分布式资源管理与负裁调度、分布式计算技术、分布式通信技术、分布式数据存储、分布式高可靠(这份分布式笔记已经整理完毕,免费的领取方式在文末!) 分布式协调与同步 分布式互斥 什么是分布式互斥? I霸道总裁:集中式算法 民主协商:分布式算法 轮值CEO:令牌环算法 分布式选举 为什么要有分布式选举? 分布式选举的算法 长者为大: Bully算法 民主投票: Raft 算法 具有优先级的民主投票: ZAB算法 三种选举算法的对比分析 分布式共识 什么是分布式共识? 分布式共识方法 PoW PoS DPoS 三种分布式共识算法对比分析 分布式事务 什么是分布式事务? 如何实现分布式事务? 基于XA协议的二阶段提交方法

阿里架构师细说分布式之集中式结构,愿下次面试不再有分布式

好久不见. 提交于 2020-08-16 19:03:39
本文已收录 GitHub ,更有互联网大厂面试真题,面试攻略,高效学习资料等 云这个话题对我们来说已经非常熟悉了。可以说,云在我们的生活中无处不在,比如我们平时看的视频通常就是放在云上的。当我们要播放一段视频时,请求会先转发到云上,从云上下载数据到本地,然后播放。在这里,你肯定会疑惑,云上资源那么丰富吗,可以存放这么多东西吗? 云上的资源确实丰富,因为它可以尽可能地把更多的服务器组织起来,作为一个统一的资源,为多个用户提供服务。这里的重点是,把多个服务器管理起来,作为一个统一的资源提供服务。而如何组织,就是分布式体系结构的范畴了。 你会发现,很多场景下,我们的请求都会汇总到一台服务器上,由这台服务器统一协调我们的请求和其他服务器之间的关系。这种由一台服务器统一管理其他服务器的方式,就是分布式体系结构中的集中式结构(也称为 Master/Slave 架构),其中统一管理其他服务器的服务器是主,其他服务器是从,可以形象地比喻为“一人在上,万人在下”。 接下来,我就带你一起打卡分布式体系结构中的集中式结构吧。 一、什么是集中式结构? 集中式结构就是,由一台或多台服务器组成中央服务器,系统内的所有数据都存储在中央服务器中,系统内所有的业务也均先由中央服务器处理。多个节点服务器与中央服务器连接,并将自己的信息汇报给中央服务器,由中央服务器统一进行资源和任务调度:中央服务器根据这些信息

让阿里P8都为之着迷的分布式核心原理解析到底讲了啥?看完我惊了

不打扰是莪最后的温柔 提交于 2020-08-15 01:45:46
领取本文资料直接扫码免费领取 这个人人都喊着“高并发”“高可用”的时代里,分布式系统的重要性不言而喻。从整个行业的招聘趋势就能看出来,大型互联网公司在招聘后端工程师的时候,都会要求候选人有分布式相关的工作经验。与其直接用些抽象、晦涩的技术名词去给分布式下一个定义,还不如从理解分布式的发展驱动因素开始,我们一起去探寻它的本质,自然而然地也就清楚它的定义了。 在今天这篇文章中,我将带你了解分布式的起源,是如何从单台计算机发展到分布式的,进而帮助你深入理解什么是分布式。为了方便你更好地理解这个演进过程,我将不考虑多核、多处理器的情况,假定每台计算机都是单核、单处理器的。 说明:完整的《分布式核心原理解析》学习文档篇幅较长,共有330页,这里限于篇幅,故只展示一部分的文档,有需要这份学习文档的朋友麻烦帮忙转发+转发+转发一下,然后再私信我【学习】即可免费获取这份《分布式核心原理解析》学习文档。 前言 一,分布式何而起 分布式起源 单兵模式:单机模式 游击队模式:数据并行或数据分布式 集团军模式:任务并行或任务分布式 分布式是什么? 总结 二,分布式系统的指标 分布式系统的指标 性能(Per formance) 资源占用(Resource Usage) 可用性( Availability) 可扩展性(Sealabi1ity) 不同场景下分布式系统的指标 总结与思考 三,分布式协调与同步

Golang 昨天、今天和明天

独自空忆成欢 提交于 2020-08-11 04:52:19
昨天 市面上有这么多语言为啥还需要开发Go这么个语言? 07年的一天,几位谷歌的大牛在讨论用C++开发一些有关庞大的分布式集群的工作,非常繁琐但很核心,很是闹心,后来听说C++又要添加35项新特性。大牛听了很是不爽啊,于是讨论能否可开发一款新的语言,运行快、编译快、开发还快。于是几位列举了新语言的主要特性,并且借鉴现有语言众家之所长。说干就干,09年go语言就诞生了。以下是当年列举的主要特性 规范的语法(不需要符号表来解析) 垃圾回收(独有) 无头文件 明确的依赖 无循环依赖 常量只能是数字 int和int32是两种类型 字母大小写设置可见性(letter case sets visibility) 任何类型(type)都有方法(不是类型) 没有子类型继承(不是子类) 包级别初始化以及明确的初始化顺序 文件被编译到一个包里 包package-level globals presented in any order 没有数值类型转换(常量起辅助作用) 接口隐式实现(没有“implement”声明) 嵌入(不会提升到超类) 方法按照函数声明(没有特别的位置要求) 方法即函数 接口只有方法(没有数据) 方法通过名字匹配(而非类型) 没有构造函数和析构函数 postincrement(如++i)是状态,不是表达式 没有preincrement(i++)和predecrement

让阿里P8都为之着迷的分布式核心原理解析到底讲了啥?看完我惊了

拟墨画扇 提交于 2020-08-08 23:50:10
领取本文资料直接扫码免费领取 这个人人都喊着“高并发”“高可用”的时代里,分布式系统的重要性不言而喻。从整个行业的招聘趋势就能看出来,大型互联网公司在招聘后端工程师的时候,都会要求候选人有分布式相关的工作经验。与其直接用些抽象、晦涩的技术名词去给分布式下一个定义,还不如从理解分布式的发展驱动因素开始,我们一起去探寻它的本质,自然而然地也就清楚它的定义了。 在今天这篇文章中,我将带你了解分布式的起源,是如何从单台计算机发展到分布式的,进而帮助你深入理解什么是分布式。为了方便你更好地理解这个演进过程,我将不考虑多核、多处理器的情况,假定每台计算机都是单核、单处理器的。 说明:完整的《分布式核心原理解析》学习文档篇幅较长,共有330页,这里限于篇幅,故只展示一部分的文档,有需要这份学习文档的朋友麻烦帮忙转发+转发+转发一下,然后再私信我【学习】即可免费获取这份《分布式核心原理解析》学习文档。 前言 一,分布式何而起 分布式起源 单兵模式:单机模式 游击队模式:数据并行或数据分布式 集团军模式:任务并行或任务分布式 分布式是什么? 总结 二,分布式系统的指标 分布式系统的指标 性能(Per formance) 资源占用(Resource Usage) 可用性( Availability) 可扩展性(Sealabi1ity) 不同场景下分布式系统的指标 总结与思考 三,分布式协调与同步

阿里云容器服务发布 Knative 托管服务 | 云原生生态周报 Vol. 49

空扰寡人 提交于 2020-08-07 21:08:38
作者 | 何淋波、丁海洋、陈有坤 业界要闻 阿里云容器服务发布 Knative 托管服务 Knative 是 Kubernetes 生态最流行的 Serverless 编排框架。可 Knative 的 Controller 和依赖的网关这些常驻实例需要支付额外的 IaaS 成本和运维成本,这给应用的 Serverless 化带来了一定的门槛。所以我们在 Serverless Kubernetes 中提供了托管的 Knative Serving 。托管的 Knative 开箱即用,您不需要为这些常驻实例支付任何成本。除了提供 Controller 的托管以外,我们还通过云产品 SLB 和突发性能型实例保留规格进一步降低了应用 Serverless 的复杂度,让您的服务在流量波谷时期大大的减少 IaaS 开支,并且流量波谷时期积攒的 CPU 积分可以在流量高峰时期消费,您支付的每一分钱都不会浪费。 上游重要进展 Graduate Scheduler Component Config API to Beta 为了更大范围推广使用,kube-scheduler configuration API `kubescheduler.config.k8s.io 从版本 v1alpha2 升级到v1beta1。 add "pod-level-single-numa-node policy " to

10分钟了解Docker,运维和开发视角有什么不同?

为君一笑 提交于 2020-08-06 10:20:48
本文从下面两部分内容讲解Docker。 运维(Ops)视角。 开发(Dev)视角。 在运维视角中,主要包括下载镜像、运行新的容器、登录新容器、在容器内运行命令,以及销毁容器。 在开发视角中,更多关注与应用相关的内容。《深入浅出Docker内》会从GitHub拉取一些应用代码,解释其中的Dockerfile,将应用容器化,并在容器中运行它们。 通过上面两部分内容,你可以从整体上理解Docker究竟是什么,以及主要组件之间是如何相互配合的。 推荐读者对开发和运维两部分内容都要阅读 。 1.1 运维视角 当读者安装Docker的时候,会涉及两个主要组件:Docker客户端和Docker daemon(有时也被称为“服务端”或者“引擎”)。 daemon实现了Docker引擎的API。 使用Linux默认安装时,客户端与daemon之间的通信是通过本地IPC/UNIX Socket完成的(/var/run/docker.sock);在Windows上是通过名为npipe:////./pipe/docker_engine的管道(pipe)完成的。读者可以使用docker version命令来检测客户端和服务端是否都已经成功运行,并且可以互相通信。 1> docker version 2Client: 3 Version: 18.01.0-ce 4 API version: 1.35 5 Go

如何轻松学习 Kubernetes?

时光怂恿深爱的人放手 提交于 2020-08-06 06:13:07
作者 | 声东 阿里巴巴技术专家 <关注阿里巴巴云原生公众号,回复 排查 即可下载电子书> 导读:《深入浅出 Kubernetes》一书共汇集 12 篇技术文章,帮助你一次搞懂 6 个核心原理,吃透基础理论,一次学会 6 个典型问题的华丽操作! 什么是 Kubernetes? 我们来看一下什么是 Kubernetes。这部分内容我会从四个角度来跟大家分享一下我的看法。 1. 未来什么样 这是一张未来大部分公司后端 IT 基础设施的架构图。简单来说,以后所有公司的 IT 基础设施都会部署在云上。用户会基于 Kubernetes 把底层云资源分割成具体的集群单元,给不同的业务使用。而随着业务微服务化的深入,服务网格这样的服务治理逻辑会变得跟下边两层一样,成为基础设施的范畴。 目前,阿里基本上所有的业务都跑在云上。而其中大约有一半的业务已经迁移到了自己定制 Kubernetes 集群上。另外据我了解,阿里计划今年完成 100% 的基于 Kubernetes 集群的业务部署。 而服务网格这块,在阿里的一些部门,像蚂蚁金服,其实已经有线上业务在用了。大家可以通过蚂蚁一些同学的分享来了解他们的实践过程。 虽然这张图里的观点可能有点绝对,但是目前这个趋势是非常明显的。所以未来几年, Kubernetes 肯定会变成像 Linux 一样的,作为集群的操作系统无处不在。 2. Kubernetes