L3C (LinuxCon + ContainerCon + CloudOpen) 参会总结

非常有幸参加了2017.6.19~2017.6.20在北京举行的L3C会议,L3C包括LinuxCon,ContainerCon以及CloudOpen。整个会议涉及了各大厂商的最新开源动态,Linux内核,容器及容器编排,网络,SDN以及微服务等。

本文从Sponsor ShowCase和分会场的Topic分享两方面回顾整次大会。

image.pngimage.png

大会的赞助商有很多,有知名大厂华为,阿里云,Intel,微软,IBM等,也有没怎么听过的Rancher Labs,CaiCloud等。这些赞助商不遗余力地展示了(广告)他们最新的产品,最牛逼的技术。

华为

华为在作为Strategic Sponsor,不仅第一天在大会上就做了KeyNote,而且拥有最大,地理位置最优的展台,赢得了大量关注。

华为在KeyNote上开源了多款产品,DevOps编排引擎ContainerOps,OpenSDS以及微服务框架ServiceComb。
image.pngimage.png

展台上主要推广物联网操作系统Huawei LiteOS和FusionCloud。

image.pngimage.png

LiteOS是轻量级的开源物联网操作系统,其主打了三大关键特性:

  • 小,ROM被裁减至<6KB的水准,做到了轻量级,低功耗,利用配套的芯片可做到整体功耗降至uw级。
  • 快,ms级快速启动,us级响应。
  • 智,智能传感,多传感协同数据采集。
  • 全,多协议支持,Wi-Fi/Zigbee等,多设备支持。

FusionCloud很早就接触到了,研究生期间华为一直在跟实验室寻求OpenStack和CloudFoundry方面的合作,FusionCloud应该是一整套PaaS加Iaas的解决方案,从展台演示来看,确实是这样,通过一个IDE进行开发,开发完毕的应用直接Push到FusionCloud,FusionCloud准备应用的运行环境(比如JRE,Tomcat等),随后准备Iaas层资源,应用就直接在云上部署完毕。

微软

微软也做了KeyNote,并且自嘲大家可能会觉得微软出现在这种会议上会有点奇怪。实际上从KeyNote当中发现微软为开源确实做了很大的贡献。

image.pngimage.png

image.pngimage.png

除了微软很多核心产品进行开源以及Linux支持,Azure上也对很多开源服务进行了整合,比如在基础设施方面,Azure支持多种Linux发行版以及docker等,且Azure上的虚拟机60%以上运行中Linux Server。在数据方面,Azure整合了Hadoop,Cassandra,Redis等开源软件。这也是微软一贯的开源风格,支持,整合,发布,再开源。

image.pngimage.png

CNCF

CNCF是目前炙手可热的基金会,相关的产品也越来越多,包括Kubernets(K8S),gRPC,OpenTracing等等,K8S是整个大会的大赢家,估计有60%以上的Topic都与K8S相关,相反Docker Swarm基本没露脸,只在Rancher Labs 的Demo中看到了,因为Rancher要支持多种编排引擎,⊙▽⊙。

CNCF展台给了一张非常全的Cloud Native Landscape,特意从网上找来,大家对照着丰富自己的技术栈。

image.pngimage.png

SUSE

SUSE在展台上展示了CasS Platform的Demo,不禁感叹XaaS中的X估计很快26个英文字母不够用了,CaaS的目标为通过软件定义基础设施,CaaS提供一个统一的平台,面向容器应用程序,集部署、管理、运维于一体。

image.pngimage.png

SUSE Caas Platform的技术堆栈如下图所示:

image.pngimage.png

SUSE除了ShowCase,还带了了多场干货分享,在这场浓浓商业味的L3C中算是一股清流了,后面会简单介绍下SUSE的几场分享。

其它

IBM分享的Topic较少,展台主要推广自己的区块链技术。Rancher Labs 展示了一个支持多种编排引擎的容器服务平台。CaiCloud造了一种新的XaaS,TaaS(TensorFlow as a Service),为企业提供人工智能,大数据服务,感觉做的业务类似于Splunk。

分会场分享

分会场分享的Topic非常多,并行度太高,所以只参加了几场自己感兴趣的Topic分享。主要参加了一下几场分享:

  1. Much Ado About Blocking: Wait/Wake in the Linux Kernel
  2. MD RAID1 and NVMe: High Performance Data Duplication
  3. Challenge and Practice of SDN in Large Scale Data Centers
  4. Timekeeping in Linux VMs
  5. Migrating Legacy Monoliths to Cloud Native Microservices Architectures on Kubernetes
  6. High Performance Container Networking Solution in NFV Environment

Much Ado About Blocking: Wait/Wake in the Linux Kernel

这个分享主要介绍在Linux内核中实现阻塞的几种方式,包括等待队列,RCU机制等。以及如何进行高效的Wait和Wake。这个分享讲的点比较小。

MD RAID1 and NVMe: High Performance Data Duplication

SUSE基于NVMe做了RAID1的磁盘阵列,通过在成对的磁盘上做数据冗余,提供了很高的数据安全性和可用性。大家都知道2副本的RAID1磁盘成本是比较高的,但SUSE的观点是,对于NVMe这种高速设备,如果使用擦除码,虽然能节约存储成本,但带来了更多的计算上的成本,增加的成本比RAID1带来的存储成本还高,所以SUSE做了一个NVMe加RAID1的实验。

RAID1的数据复制过程成为Resync,依赖I/O barrier来进行安全的并发,SUSE分析了两种barrier(全局和滑窗)的优缺点,全局barrier实现简单但冲突率高,复制性能极低。滑窗实现非常复杂,但冲突率很低,性能极高,不过该实现几乎每个版本都存在Bug。所以SUSE采用了一种折衷的方案,提出了Hash bucket barrier,通过Hash进行分段,相同的Hash值使用同一个全局barrier,有点类似于Java ConcurrentHashMap的分段锁思想,该方案虽然性能不及滑窗的实现,但实现简单,方便维护。

Challenge and Practice of SDN in Large Scale Data Centers

这是来自阿里云但分享,介绍了在大规模数据中心中灵活构建网络的复杂度,在一个Region快速拉起百万计的虚拟机,对其网络的配置有很大的调整,传统方式肯定是行不通的,SDN通过软件的方式来虚拟路由器,虚拟交换机,灵活自由的进行网络隔离和流量控制,甚至进行流量染色在超复杂网络环境下进行问题快速的定位。

Timekeeping in Linux VMs

这个分享的点比较小,主要讲了Linux下常见的时钟源设备,如 TSC,HPET,ACPI PM-Timer,PIT等,以及精度分析,获取时间的指令成本,比如有些时钟源支持从用户态获取当前时间。

P70620-111156.jpgP70620-111156.jpg

Migrating Legacy Monoliths to Cloud Native Microservices Architectures on Kubernetes

这个Topic演讲嘉宾来自CNCF,首先介绍了开源发展史,从虚拟化,到IaaS/PaaS/Saas,再到目前大行其道的容器技术,以及CNCF在其中的角色。

P70620-114621.jpgP70620-114621.jpg

随后分享了将具有一定历史包袱的应用从传统架构迁移到当前流行的云/容器平台上的经验,比如先从无状态的组件开始,逐步地迁移,最后再迁移具有数据存储的组件。

P70620-115336.jpgP70620-115336.jpg

High Performance Container Networking Solution in NFV Environment

来自Intel的两位工程师,提出了一种构建容器网络的高性能解决方案,主要思想是利用DPDK和HugePage来提高性能。

P70620-150612.jpgP70620-150612.jpg

总结

本次大会大部门内容为容器和容器编排相关,不来都不知道K8S有这么火,贴一张Linus的近照收尾。

image.pngimage.png

企业级互联网架构Aliware,让您的业务能力云化:https://www.aliyun.com/aliware