We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
两天的会议中,先后听了十几篇分享,议题涉及到如下层面:应用如何微服务,大数据结合,平台搭建和运维(devops,CI/CD持续集成和部署,容器编排(mesos,kubernetes,swarmkit等,应用场景:电商金融等。 整体感觉主会场的三篇,还有第二题早上的海外创业分会场中分享都是特别的棒!剩下的更多集中在DI/DC,运维视角下的还颇要慧眼识金去探寻~ 其中『docker化 - 容器应用基石』,『从SOA到微服务的技改之路』,『爱奇艺 - 日志容器』都是相对比较浅显易懂的,甚至其中讲到的一些做法和遇到问题也是我们当下有的并且解决的。
以下是我对重点分享的笔记和总结。
PS:后续的分享应该会随后带来。 PPS:梁总和烈波大神的ppt请自行取阅,吓尿指数飙升~
网飞家的微服务实践从来都是业界最前沿最开放的典范了,这次通过这次一瞥网飞家的微服务实践的现状还有开源技术方案大练兵还是收获不少的。之前还有一份分享非常有参考性( http://www.slideshare.net/aspyker/netflix-and-containers-titus 是AWS的Meetup 上分享的)
现状:online video streaming (最早是邮寄video),500+微服务,8kw的订阅用户,日播放1亿2500小时,双活的region,1/3北美互联网下载流量峰值
打造微服务和团队文化是离不开的:
这样背后的云生态体系是:
实现这些涉及的开发技术包括:
各个微服务间的链接
这次分享还是比较合胃口的,尤其是包含了目前我们也正在实践的SpringBoot,SpringCloud的一些,也包含了一些我们没有做到的高阶实践。 作者主要从12军规开始,加上Spring母公司Pivotal新提出的3条,组成了:
这样依次查看,要实现应用微服务化。必须要做到这些,这是容器甚至集群的前置工作基本功。
这一场是有docker官方的开源负责人东洛先生讲解的,除了ppt让我们看到官方的思路想法,也通过了简单的swarmkit demo给我们演示了具体的例子。
微服务带来部署的挑战 - 复杂化: 资源管理,任务调度,系统安全和网络通讯,运维开销等等,从而提出了集群管理的思路和社区实现(k8s,mesos等
为什么docker要做编排? 对于社区现有的mesos, k8s等(相互不兼容的,带着厂商vendor的业务特征) 官方要对『build, ship, run application』做的 battery included, but replacement and removable 可插拔
Docker在容器化的项目: 从engine,compose(container deploy多个机器), swarm(很多节点 group 到cluster) 【compose 把任务推送到swarm】, machine(准备运行环境,机器中有tls,有docker内置了), distribution, libnetwork, docker for mac/windows, swarmkit
容器编排需要考虑的问题: • 编排:如何将任务匹配到对应的计算,网络,存储资源上来提供服务 • 集群管理:如何管理各种系统资源,包括计算,存储,网络;如何自劢的处理系统变化,如节点离线 • 任务调度:如何调度任务到对应节点并路由请求,如何管理任务的整个生命周期 • 用户接口:如何定义服务架构来进行编排 • 安全性:如何实现端到端安全保障 - 实现端到端的加密,密钥的安全,分发) • 适用性:如何解决公有云,私有云和混合云的部署;如何协劣企业进行测试及生产环境部署
从compose+swarm到swarmkit 前者:(1.12前) container api 去管理(用swarm知道把任务如何分发 服务管理,负载均衡,状态和网络都是由外部去 后者: service api(定义service包含task【由容器去实现】) 服务生命周期内置,系统状态保存在内置的raft store上,直接对服务做负载均衡,集群内置ca进行,所有通讯加密,网络状态内置,通过gossip来传播
前后架构对比图:
Swarm Mode的架构 • Docker发布以来的一次重大架构变化,引入了集群管理和服务;同时向后兼容 • 多个管理者节点(manager)使用raft实现(coreos/etcd)组成高可用,强一致性Quorum以管理集群 • 内置分布式K/V仓库保存系统状态,支持批处理状态更新 • 多个管理者分担工人(worker)连接 • 管理者进行资源管理,调度任务,监测服务,通过gRPC进行任务分发和状态收集 • 工人节点执行任务,反馈任务状态 • 工人节点通过gossip协议实现分布式消息同步,消除overlay延时线性增长问题 • 内置CA进行秘钥分发和更新,所有节点通讯加密
然后又看了 Docker 1.12 下的网络(1.9 overlay. 1.11 内置dns, 1.12 内置集群(不需要外部的kv store和LB,dns服务发现),服务请求路由,安全性(manager节点有leader,内置CA,分发和定时更新
在最后,faq环节,因为有T恤送,所以我也提问了。☺
大数据和容器化集群管理现在是非常明显的一大趋势,解决计算资源分配问题 微服务(要多micro,足够小,让k8s能够见缝插针去), 程序要写的硬件配置无关的(譬如你的process不要假设要启动64G内存,不要写中断要kernel) 并行计算框架变得很容器(很多算法几千行go写的mapreduce,写一些新的framework并行开发技巧,而不是使用一种的hadoop等,节省大量的计算浪费) - researcher了解怎么写分布式系统,工程师了解AI潮流(不需要博士是本科)
会什么在一起?解决计算问题给AI,计算节点 计算级别: alpha go(4000 GPU), deep speech (32 GPU), siri (8GPU)
AI,互联网兴起: (搜索引擎(图书管理员),推荐(服务推销员和报刊亭)和广告(而不是广告代理公司)三大业务。互联网金融(合作信用社)) 用户行为数据log(有机会收集数十亿用户的行为数据)
互联网数据是长尾数据: 用户(绝大数用户少于5部),电影(绝大部分电影很少人评论) 产品运行一段时间后,数据就很稀疏了,稀疏矩阵的计算等
长尾才是真金: 去噪声(出现频率很低,不重要的),稀疏性,指数族分布,冷启动问题、 通过( 红酒木瓜汤【小众case】(出什么广告,应该是丰胸的 - 语义分析系统 - topic id,weight,keywords ), 苹果(大众case)- (苹果,手机,范冰冰)【巨量文本训练后的关联词】 苹果大尺度 (范冰冰)来具体case展示了长尾的价值
长尾数据引入了计算更大(不能去噪
之前的问题: 手工管理集【每个团队申请机器不愿归还,数据计算后放哪里,后续有task怎么办】,HPC集群,Mesos和Yarn
云之声的设计架构:
使用k8s遇到的一些问题: 单机操作系统:CoreOS -为什么因为包管理器各个语言版本等,通过自动安装和部署的sextant, Ceph最早的时候(大的存储卷被join后切分逻辑卷,因为之前的虚拟化需要。但是现在在k8s中,不需要大的操作系统。所以ceph现在做的) 网络性能(k8s虚拟网络,不是网卡路由器。是软件开发,类似于Google GAE的网络方案)
这一篇,Timothy让我们见识到了Mesosphere家产品的无穷魅力(尤其是DC/OS使用起来尤其方便,第三方社区的插件非常多,web ui精美,在最后的demo环境(展示了部署twitter clone,然后如何扩缩容,如何数据分析-利用部署大数据计算节点和分发task等) https://github.com/mesosphere/time-series-demo
首先讲了 为什么是DC/OS:
为什么要DC/OS: 即使你有了mesos但是你还是需要做很多事情(去装framework,去装load balance等)- 最大不同和其他的集群方案(islolation隔离非常灵活)
DC/OS具体包含了哪些:
The text was updated successfully, but these errors were encountered:
No branches or pull requests
两天的会议中,先后听了十几篇分享,议题涉及到如下层面:应用如何微服务,大数据结合,平台搭建和运维(devops,CI/CD持续集成和部署,容器编排(mesos,kubernetes,swarmkit等,应用场景:电商金融等。
整体感觉主会场的三篇,还有第二题早上的海外创业分会场中分享都是特别的棒!剩下的更多集中在DI/DC,运维视角下的还颇要慧眼识金去探寻~ 其中『docker化 - 容器应用基石』,『从SOA到微服务的技改之路』,『爱奇艺 - 日志容器』都是相对比较浅显易懂的,甚至其中讲到的一些做法和遇到问题也是我们当下有的并且解决的。
以下是我对重点分享的笔记和总结。
PS:后续的分享应该会随后带来。
PPS:梁总和烈波大神的ppt请自行取阅,吓尿指数飙升~
Netflix cloud native 微服务生态系统
网飞家的微服务实践从来都是业界最前沿最开放的典范了,这次通过这次一瞥网飞家的微服务实践的现状还有开源技术方案大练兵还是收获不少的。之前还有一份分享非常有参考性( http://www.slideshare.net/aspyker/netflix-and-containers-titus 是AWS的Meetup 上分享的)
现状:online video streaming (最早是邮寄video),500+微服务,8kw的订阅用户,日播放1亿2500小时,双活的region,1/3北美互联网下载流量峰值
打造微服务和团队文化是离不开的:
这样背后的云生态体系是:
(美国传统的部署方式,到数据中心特定机器部署,有问题就修复,宠物和畜牲。但是云后,有问题就替换掉.前提是你的应用是可以,通过中心的配置中心)
实现这些涉及的开发技术包括:
services for the purpose of load balancing and failover of
middle-tier servers.
vm,把regin中的traffic转向)
测试上线和failover不failover
private ips[microservices - 和不同微服务间也是靠服务发现去做]))
engineering(instance termination,zone partitioning,
region evacuation), limit blast radius()
any point of time(cassrone快速写,但是读慢 - 通过分布式的cache)
protocol, event
sourcing,同一个请求进来后会同时给其他的instance发送message去离线去处理,而不仅仅xx)
各个微服务间的链接
CloudNative 微服务App使用Spring Boot
这次分享还是比较合胃口的,尤其是包含了目前我们也正在实践的SpringBoot,SpringCloud的一些,也包含了一些我们没有做到的高阶实践。
作者主要从12军规开始,加上Spring母公司Pivotal新提出的3条,组成了:
api,一些连接db,连接cache,应用逻辑的代码都会被拿去,而不是用我们提供的api,更灵活)
Tair, Diamont 等
这样依次查看,要实现应用微服务化。必须要做到这些,这是容器甚至集群的前置工作基本功。
Docker 服务编排 - swarmkit
这一场是有docker官方的开源负责人东洛先生讲解的,除了ppt让我们看到官方的思路想法,也通过了简单的swarmkit demo给我们演示了具体的例子。
微服务带来部署的挑战 - 复杂化:
资源管理,任务调度,系统安全和网络通讯,运维开销等等,从而提出了集群管理的思路和社区实现(k8s,mesos等
为什么docker要做编排?
对于社区现有的mesos, k8s等(相互不兼容的,带着厂商vendor的业务特征)
官方要对『build, ship, run application』做的 battery included, but replacement and removable 可插拔
Docker在容器化的项目:
从engine,compose(container deploy多个机器), swarm(很多节点 group 到cluster) 【compose 把任务推送到swarm】, machine(准备运行环境,机器中有tls,有docker内置了), distribution, libnetwork, docker for mac/windows, swarmkit
容器编排需要考虑的问题:
• 编排:如何将任务匹配到对应的计算,网络,存储资源上来提供服务
• 集群管理:如何管理各种系统资源,包括计算,存储,网络;如何自劢的处理系统变化,如节点离线
• 任务调度:如何调度任务到对应节点并路由请求,如何管理任务的整个生命周期
• 用户接口:如何定义服务架构来进行编排
• 安全性:如何实现端到端安全保障 - 实现端到端的加密,密钥的安全,分发)
• 适用性:如何解决公有云,私有云和混合云的部署;如何协劣企业进行测试及生产环境部署
从compose+swarm到swarmkit
前者:(1.12前)
container api 去管理(用swarm知道把任务如何分发
服务管理,负载均衡,状态和网络都是由外部去
后者:
service api(定义service包含task【由容器去实现】)
服务生命周期内置,系统状态保存在内置的raft store上,直接对服务做负载均衡,集群内置ca进行,所有通讯加密,网络状态内置,通过gossip来传播
前后架构对比图:
Swarm Mode的架构
• Docker发布以来的一次重大架构变化,引入了集群管理和服务;同时向后兼容
• 多个管理者节点(manager)使用raft实现(coreos/etcd)组成高可用,强一致性Quorum以管理集群
• 内置分布式K/V仓库保存系统状态,支持批处理状态更新
• 多个管理者分担工人(worker)连接
• 管理者进行资源管理,调度任务,监测服务,通过gRPC进行任务分发和状态收集
• 工人节点执行任务,反馈任务状态
• 工人节点通过gossip协议实现分布式消息同步,消除overlay延时线性增长问题
• 内置CA进行秘钥分发和更新,所有节点通讯加密
然后又看了 Docker 1.12 下的网络(1.9 overlay. 1.11 内置dns, 1.12 内置集群(不需要外部的kv store和LB,dns服务发现),服务请求路由,安全性(manager节点有leader,内置CA,分发和定时更新
在最后,faq环节,因为有T恤送,所以我也提问了。☺
Kubernetes 和 AI
大数据和容器化集群管理现在是非常明显的一大趋势,解决计算资源分配问题
微服务(要多micro,足够小,让k8s能够见缝插针去), 程序要写的硬件配置无关的(譬如你的process不要假设要启动64G内存,不要写中断要kernel)
并行计算框架变得很容器(很多算法几千行go写的mapreduce,写一些新的framework并行开发技巧,而不是使用一种的hadoop等,节省大量的计算浪费) - researcher了解怎么写分布式系统,工程师了解AI潮流(不需要博士是本科)
会什么在一起?解决计算问题给AI,计算节点
计算级别: alpha go(4000 GPU), deep speech (32 GPU), siri (8GPU)
AI,互联网兴起:
(搜索引擎(图书管理员),推荐(服务推销员和报刊亭)和广告(而不是广告代理公司)三大业务。互联网金融(合作信用社))
用户行为数据log(有机会收集数十亿用户的行为数据)
互联网数据是长尾数据:
用户(绝大数用户少于5部),电影(绝大部分电影很少人评论)
产品运行一段时间后,数据就很稀疏了,稀疏矩阵的计算等
长尾才是真金:
去噪声(出现频率很低,不重要的),稀疏性,指数族分布,冷启动问题、
通过( 红酒木瓜汤【小众case】(出什么广告,应该是丰胸的 - 语义分析系统 - topic id,weight,keywords ), 苹果(大众case)- (苹果,手机,范冰冰)【巨量文本训练后的关联词】 苹果大尺度 (范冰冰)来具体case展示了长尾的价值
长尾数据引入了计算更大(不能去噪
之前的问题:
手工管理集【每个团队申请机器不愿归还,数据计算后放哪里,后续有task怎么办】,HPC集群,Mesos和Yarn
云之声的设计架构:
使用k8s遇到的一些问题:
单机操作系统:CoreOS -为什么因为包管理器各个语言版本等,通过自动安装和部署的sextant,
Ceph最早的时候(大的存储卷被join后切分逻辑卷,因为之前的虚拟化需要。但是现在在k8s中,不需要大的操作系统。所以ceph现在做的)
网络性能(k8s虚拟网络,不是网卡路由器。是软件开发,类似于Google GAE的网络方案)
Datacenter operating system (DC/OS) overview
这一篇,Timothy让我们见识到了Mesosphere家产品的无穷魅力(尤其是DC/OS使用起来尤其方便,第三方社区的插件非常多,web ui精美,在最后的demo环境(展示了部署twitter clone,然后如何扩缩容,如何数据分析-利用部署大数据计算节点和分发task等) https://github.com/mesosphere/time-series-demo
首先讲了 为什么是DC/OS:
为什么要DC/OS:
即使你有了mesos但是你还是需要做很多事情(去装framework,去装load balance等)- 最大不同和其他的集群方案(islolation隔离非常灵活)
DC/OS具体包含了哪些:
The text was updated successfully, but these errors were encountered: