O slideshow foi denunciado.
Seu SlideShare está sendo baixado. ×

OaaS:Open as a Strategy

Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Carregando em…3
×

Confira estes a seguir

1 de 23 Anúncio

OaaS:Open as a Strategy

Baixar para ler offline

The lessons I learned is that Open source quickly becomes the natural choice wherever commoditization is happening in the software stack. Thus we expect business-to-business open source, which is already a significant trend in recent history, to become an increasingly common form of open source collaboration. Companies who understand the ground rules of business-to-business open source will be better positioned to identify and take advantage of open source opportunities in the competitive spaces that they share with other companies.
So I will share why open strategy is import for the enterprise. And how to do contributions for the open source projects n today’s topic.

The lessons I learned is that Open source quickly becomes the natural choice wherever commoditization is happening in the software stack. Thus we expect business-to-business open source, which is already a significant trend in recent history, to become an increasingly common form of open source collaboration. Companies who understand the ground rules of business-to-business open source will be better positioned to identify and take advantage of open source opportunities in the competitive spaces that they share with other companies.
So I will share why open strategy is import for the enterprise. And how to do contributions for the open source projects n today’s topic.

Anúncio
Anúncio

Mais Conteúdo rRelacionado

Diapositivos para si (20)

Quem viu também gostou (17)

Anúncio

Semelhante a OaaS:Open as a Strategy (20)

Mais de OpenCity Community (20)

Anúncio

Mais recentes (20)

OaaS:Open as a Strategy

  1. 1. OaaS: Open as a Strategy @ben_duyujie Huawei Technology July 2015 Version 1.0 http://www.slideshare.net/ben_duyujie/oaasopen-as-a-strategy
  2. 2. Yujie Du(Ben) #OSCON 2012 OpenStacker Open Container Project
  3. 3. Outline Understanding Open Source Thinking in Containers: Tips & Technique
  4. 4. Outline Understanding Open Source Thinking in containers: Tips & Technique
  5. 5. Open Source is changing the game Infrastructure Virtualization Compute, Storage, Network resource pool Microservices + Containerization App centric, universal app container Blurry of IaaS and PaaS Transparent Infrastructure, multicloud Server Virtualization • Big Company Driven, Top Down • Led by foundation projects • Few big projects • Just follow the herd • Developer Centric, Bottom Up • Led by open source startups • Hundreds of small projects • Need more proactive approach, domain specific integration PaaS NFV Apps 、 Web Apps Orchestration and Management App Container ( compute, network, storage ) HOST OS CloudOS OpenStack Open Container OpenAPI
  6. 6. Source from :http://www.alexa.com/siteinfo/github.com Open Source around the World
  7. 7. Upstream Linux is NOT carrier grade Reliability Security Stability stay very close to upstream,1000+ patches upstreamed , 1% of total , top 20 OS Distribution OS Distribution Competitiveness 1. Latency<1us, bare- metal performance over Linux 2.System bootup < 3 seconds; 3.HA, DR; Consolidation 1.Integrate more than 140 test suits 2.Security-shield , fix CVE per month 3.LTS for CGL Enhancement 1.Enhance debugging and monitoring , such as kbox, snapshot; 2.Enhance tools for performance-tuning 3.Live kernel patching; 4.Improve system reliability GNU/Linux Pedigree 1.Choose the best kernel and package; 2.Layout quality strategy; 3.Make test baseline; Feedback Get Enhance Feedback Get Enhance
  8. 8. Open Source in Huawei  Sourcing: Docker git log from 1/1/2015~31/5/2015 • 1. 574 gmail.com • 2. 360 docker.com • 3. 175 huawei.com • 4. 126 us.ibm.com • 5. 98 redhat.com Contributions (Juno) •Blueprints: 23 •Resolved Bugs: 63 •Code Lines: 12831 •Commits : 126 •Reviews : 1000 http://stackalytics.com/ •1000+ Contributors •40+Gatekeeper (PMC/TSC/Maintainer) •2Boards •4founding members •8core memebers
  9. 9. Open Strategy to Execution “Strategy without tactics is the slowest route to victory. Tactics without strategy is the noise before defeat.”
  10. 10. Outline Understanding Open Source Thinking in containers: Tips & Technique
  11. 11. Different deploy models for the apps Any Hardware HypervisorHostOS Hypervisor Container Orchestration Container HostOS HostOS HostOSAPP APP APPGuestOS APP GuestOS
  12. 12. Contribute to the Projects Make Container Standard Create the Local Ecosystem Incubation projects •Security the containers, etc. •It’s difficulty to merger security features into the upstream. •Few people resolved in that features. •Too mamy namespaces. Contributions Open source projects depend on a lot more than code to be successful. Accurate documentation, support, meetups, and blogs are also critical to a healthy project. Namespacing • 1979 chroot • 1980s Plan 9 from Bell Labs • 2000 FreeBSD jail • 2004 Solaris Zones • 2001 Virtuozzo Containers, OpenVZ • 2008 lxc • 2011 Cloudfoundry Warden • 2013 lmctfy, Docker Access control • 1975-1983 KeyKos • 1983 Trusted Computer System /Evaluation Criteria • 1990s JVM • 1999 Linux capabilities • 2001 SELinux • 2005 Seccomp • 2008 Google Native Client NaCl • 2013 Capsicum  Container’s isolation can not reach the virtual machine level for now
  13. 13. Contribute to the Projects Make Container Standard Create the Local Ecosystem Incubation projects Contributions Open source projects depend on a lot more than code to be successful. Accurate documentation, support, meetups, and blogs are also critical to a healthy project. Supporting Companies for Cloud Native Computing Foundation https://cncf.io/about/supporting-companies Open Container Project https://www.opencontainers.org/ Open Governace & Collaboration in the Ecosystem is Trending.
  14. 14. Contribute to the Projects Make Container Standard Create the Local Ecosystem Incubation projects Contributions Open source projects depend on a lot more than code to be successful. Accurate documentation, support, meetups, and blogs are also critical to a healthy project. Open Cotainer Testlab Https://github.com/huawei-openlab/ocp-testing
  15. 15. Contribute to the Projects Make Container Standard Create the Local Ecosystem Incubation projects •20+ Meetups and hackathon in about 10 cities •2 Conference in half a year, 3000+ attendees, such as Container Conference in April 17th ,2015 Contributions Open source projects depend on a lot more than code to be successful. Accurate documentation, support, meetups, and blogs are also critical to a healthy project. Launches Container Technology Club,CNUT http://www.infoq.com/news/2015/06/china-container-tech-club
  16. 16. Contribute to the Projects Make Container Standard Create the Local Ecosystem Incubation projects Contributions Open source projects depend on a lot more than code to be successful. Accurate documentation, support, meetups, and blogs are also critical to a healthy project. Top 10 container users, such as Tencent Games Use case
  17. 17. Contribute to the Projects Make Container Standard Create the Local Ecosystem Incubation projects Contributions Open source projects depend on a lot more than code to be successful. Accurate documentation, support, meetups, and blogs are also critical to a healthy project. Speedy-a distributed docker image storage https://github.com/jcloudpub/speedy.git
  18. 18. Contribute to the Projects Make Container Standard Create the Local Ecosystem Incubation projects Contributions Open source projects depend on a lot more than code to be successful. Accurate documentation, support, meetups, and blogs are also critical to a healthy project. Hyper-Make VMs run like Containers https://github.com/hyperhq/hyper.git
  19. 19. Some Tips about How we Develop an Open Source Strategy Phase based objective management. •Lower Costs •Speed time to market •Attack a competitors business model •Accelerate Developer Adoption •Establish de facto standards / create a market •Support •Dual Licensing Adoption Time Required the Gartner Hype Cycle Inflated Expectations Technology Trigger Disillusionment Enlightenment Productivity Figure out how your desired open source strategy relates to your business strategy
  20. 20. “Containers are revolutionizing the way we manage cloud infrastructure and warrant a common format and collaborative development approach to that work,”, said Dr. ChengLu Wang, the president of Central Software Institute in Huawei, “We see the forming of the Open Container Project a very good move for unifying forces in this area. The standardization and open governance nature of this initiative will help to attract more talents and organizations to participate, which will in turn stimulate innovations in various layers, while still keeping the core to stay consolidated.“ https://www.opencontainers.org/pressrelease/ Phase based objective management. Get in as earlier as possible. •Often starts at the engineer level with bug fixes and minor features. •Then progresses to larger contributions of non-competitive technology. Some Tips about How we Develop an Open Source Strategy
  21. 21.  Using and contributing to open source isn’t free  If you’re the big player in a market segment, being the major open source contributor for technology in that segment is beneficial to your brand.  If you’re using and modifying a technology stack, you will likely need changes upstream that help your product.  Embrace the open source way - Meritocracy, transparency, collaboration, diversity, process.  Evangelize and communicate Phase based objective management. Get as earlier as possible. Building a cultrure of openness, sharing, driving for excellence. Some Tips about How we Develop an Open Source Strategy
  22. 22. Phase based objective management. Get as earlier as possible. Building a cultrure of openness, sharing, driving for excellence. Last, but not the least. If you want to go fast, go alone. If you want to go far, go together. 1.test water 2. build inner circle 3.agglomerate followers Business demands recognition in hyper cycle stages -> Open Source Positioning + Target Key players investment Strategies + Cost Analysis -> Open Source Strategy and Investment Models Community-based business analytics rhythm -> Layout card site Some Tips about How we Develop an Open Source Strategy
  23. 23. Thanks! About https://about.me/yujie.du Works At Open Source Software Competence Center Company Huawei Technologies Co., Ltd. Email: duyujie@huawei.com Twitter: @ben_duyujie Linkedin: https://www.linkedin.com/in/duyujie

Notas do Editor

  • Welcome! Good afternoon everyone ! Thanks for coming here. Today I am talking about OaaS, open as a strategy in the enterprise, especially in China.
  • Now I will introduce myself briefly. My name is Yujie Du, and you can call me Ben, that&amp;apos;s my english name.
    It&amp;apos;s my second time to be here. Three years ago, When I came for the OpenStack Birthday, I have met lots of friends here. But only two of them are from China. One is my boss of my last company, the other is from Huawei. Since then I know that Huawei is not only a successful Communications Technology(CT) company but also has contributed to the open source community for many years. That’s one of the reasons why I am here.
    Several months later after that OSCON, the OpenStack Foundation was announced, and I was elected to be an individual board member of the OpenStack. Then I work with lots of companies from China who want to build business model based on OpenStack. When I introduce the foundation to them, they usually ask me one questions: what can we do in the foundation and community.The same questions as how to make money. So I found that the problems is not about how to contribute to the open source project. It’s about what’s the Open Source strategy for them. Fourtunaly, Huawei to be the first company in China who joined the OpenStack foundation. That’s another reasons why I joined Huawei half a year ago. For now, my team is focus on the containers tech. And also need to make the strategy about the containers. I will share something about OaaS ,Open as a Strategy in Huawei.
  • From an OpenStacker to the open container project, I always help the enterprise to make open strategies.
    The lessons I learned is that Open source quickly becomes the natural choice wherever commoditization is happening in the software stack. Thus we expect business-to-business open source, which is already a significant trend in recent history, to become an increasingly common form of open source collaboration. Companies who understand the ground rules of business-to-business open source will be better positioned to identify and take advantage of open source opportunities in the competitive spaces that they share with other companies.
    So I will share why open strategy is import for the enterprise. And how to do contributions for the open source projects in today’s topic.
  • First, let&amp;apos;s look at the history, open source is changing the game from Linux’s age, when the redhat get NASDAQ’s bell rang. That’s what we say software is eating the world, and open source speeds it up! Signal server, cloud computing.
    Software become bigger than bigger, stable api became more import for the developers.
    OpenAPI, libvirt, Openstack, OCP,
  • When look at the open source in the world. We can see that there are lots of community guys in china. About six hundred thousand users are Chinese on the github. But we didn’t have so many projects and organizations. Why? I think one reasons about that is lots of the conmpany didn’t have strategy on the open source.
    GitHub注册用户数
    美国第一,中国第二(60万)
    活跃时间
    美国上午9点和下午1点,中国凌晨0~2点
    代码量
    中国1000字节以下,美国1~10万字节
    组织 (1:10)
  • Remember that what I am talking about is not only just for fun, but also for the enterprise who want to build their business model on top of open source :) Let’s take Huawei for example. We are CT company , carrier grade solutions provider. We get the open source, enhance it, and then give the feedback to the community.
  • How to participate in the community for the enterprise? First, we need a strategy for the company who want to embrace the Open Source.
    While decisions about the company’s strategy are made at a high level too - by department heads or C-level executives, rather than by individual engineers or middle managers. But, business-to-business open source involvement requires middle managers who are able to translate the company’s high-level strategic decisions into the many smaller-scale actions by engineers that will implement that strategy.
    So the strategy to execution is very import for the company who want to build commercial products on top of open source.
  • Now Let’s look at our strategy about containers and how to make it. Containers make it easier than ever for developers to build applications quickly right on their laptop and to reach Internet scale on any combination of public and private cloud technologies. Millions of individual developers have found containers are the best way to create and share development environments. And, even more powerful is that those environments can seamlessly be used in production as well, enabling the development Holy Grail of dev/prod parity.
  • Early stage
    Tools and ecosystem
    New models for DevOps/services/software distribution
  • The strategy about containers is contribute to the projects, make container standard, create the local ecosystem, and incubate projects.
    Let’s introuductue it one by one.
    It’s different to merger security features into the upstream. Few people resolved in that features.Too mamy namespaces.
    内核社区
    未见有更多人参与社区的容器技术开发
    Namespace和Cgroup不会有大的、质的变化
    内核有太多global resource,并且在技术上并不都能抽象成namespace(至少有的很难)
    社区不赞成引入过多的namespace:minimum set of resources that need to be wrapped for the practical implementation of containers
    一个内核特性想进入主线往往非常艰难,费时可能需要数年
    一个内核特性进入主线到可商用,经常也需要一段时间
    总结
    内核容器技术的安全性隔离性目前达不到虚拟机的程度
    chroot:改变根目录
    1982年出现该技术
    只提供有限的文件系统隔离,没有任何其他隔离手段
    不安全,有手段可以逃离设定的根目录访问host
    pivot_root:改变根文件系统
    2000年,内核版本2.3.41
    没有chroot的安全问题
    Virtuozzo
    2000年
    由SWsoft(现在的Paralles)开发
    Linux-VServer
    2001年
    应用场景
    Virtual Private Server
    OpenVZ( Open Virtuozzo)
    2005年发布
    开始推动OpenVZ进Linux 内核主线
    2002年:Mount namespace
  • Containers are one of the most important innovations in software development and today. With the introduction of the Open Container Project ,it will prevent fragmentation and enable application portability among platforms, which are the ingredients developers require in order to build and deploy everything from retail and banking applications to streaming media services. Using and contributing to open source isn’t free
  • Tencent Games Cloud Platform based on docker
    在Tencent海量游戏业务的运营中,要彻底实现基于docker的img交付模式,需要逐渐去改变开发,运维的“习惯”,因此需要时间去逐步推行。基于现状,我们采取“run ,build”的策略,让腾讯游戏首先能可靠运行在docker容器中,同时让更多的开发和运维去理解接受这种新的模式。
    网络架构方案镜像跨区域传输, Docker容器内资源显示其他:
    Diskquota
    ◆ 基于img和ip漂移的故障快速切换
    ◆ docker容器资源的在线伸缩
  • speedy 模块:
    Docker Registry Driver:
    ChunkMaster
    ChunkServer
    ImageServer
    模块说明:
    Docker Registry Driver是一个遵照Docker Registry 1.0协议实现的驱动,完成Docker Registry与后端存储系统的对接工作。
    ChunkServer与ChunkMaster组成了一个通用的对象存储服务,ChunkMaster是中心节点,缓存了所有ChunkServer的信息,ChunkServer本身是最终镜像数据落地的存储节点,多个ChunkServer会构成一个组,拥有唯一的组ID,上传这个组内的所有ChunkServer都成功才算成功,下载可以随机选择其中一个节点下载。
    ImageServer本身是一个无状态的Proxy服务,它相当于是后面通用对象存储服务的一个接入层,Driver发起的镜像上传/下载操作会直接发给ImageServer, ImageServer里面缓存了ChunkMaster中的存储节点信息,通过这些信息,ImageServer会进行ChunkServer节点的选择操作,找到一组合适的ChunkServer机器完成镜像的上传或下载操作。
    speedy本身主要涉及模块:
    Docker Registry Driver:
    ChunkMaster
    ChunkServer
    ImageServer
    下面我们分别进行解说:
    Docker Registry Driver是一个遵照Docker Registry 1.0协议实现的驱动,完成Docker Registry与后端存储系统的对接工作。
    ChunkServer与ChunkMaster组成了一个通用的对象存储服务,ChunkMaster是中心节点,缓存了所有ChunkServer的信息,ChunkServer本身是最终镜像数据落地的存储节点,多个ChunkServer会构成一个组,拥有唯一的组ID,上传这个组内的所有ChunkServer都成功才算成功,下载可以随机选择其中一个节点下载。
    ImageServer本身是一个无状态的Proxy服务,它相当于是后面通用对象存储服务的一个接入层,Driver发起的镜像上传/下载操作会直接发给ImageServer, ImageServer里面缓存了ChunkMaster中的存储节点信息,通过这些信息,ImageServer会进行ChunkServer节点的选择操作,找到一组合适的ChunkServer机器完成镜像的上传或下载操作。
    上传流程:
    首先我们通过docker push命令发起上传镜像的操作,docker本身会进行多次与后端存储系统的交互,最后一次交互是上传image的layer数据到Docker Registry。
    这里我要简单吐个槽,合理的情况是这个结构化数据和非结构化数据分开存储,docker本身用json表示结构化的描述信息,也是上传到后端存储系统的,个人觉得docker的元数据管理方面很混乱。
    如果使用默认的本地存储,Docker Registry就直接把数据写到了磁盘上,我们这里通过自己实现的Driver完成与后端对象存储系统的上传工作。
    我们的Driver首先会对源源不断上传过来的字节流进行切割,按照配置的固定大小并发上传到ImageServer中,并在上传的http请求中携带了该分片的索引及位置信息。
    ImageServer在收到该分片上传请求后,根据自己从ChunkMaster中同步过来的chunk信息来动态选择一组ChunkServer,并将分片上传到该组ChunkServer中的所有实例上,都成功才返回成功。并将分片索引位置信息及上传成功返回的文件ID提交给MetaServer保存.
    Driver在收到所有分片的上传成功返回后,再返回给前端Docker,整个上传流程结束。
    下载流程:
    首先docker通过docker pull请求下载镜像,同样在真正下载数据开始前,docker同Docker Registry以及后端的存储系统间也会产生多次的数据交互,这里省略,最后一步是下载对应的Image Layer数据。
    Docker Registry在收到下载请求后首先通过ImageServer从MetaServer里获取到该文件path对应的分片信息,主要是分片的个数,及每一片的索引,然后将这些分片下载请求并发的发送给ImageServer服务器。
    ImageServer收到分片下载请求后,查询MetaServer获得对应的文件ID,该文件ID中包含有ChunkServer的位置信息,随后请求相应ChunkServer下载数据并返回给Driver。
    Driver收到分片下载的数据后,会根据分片的位置索引进行排序,按文件分片顺序返回给Docker。
  • Hyper_sh
    Hyper is a set containing a linux kernel, an init process and management tools, which virtualizes containers to improve their isolation and mangement for multi-tenant applications.
    combinig VM and containers,
    Hyper uses both shared and dedicated kernels environment to deploy multi-tenant platforms.
    It has for components: guest kernel(Hyperkernel),Daemon(HyperD)with ResfAPIs, Guest init Service(HyperStart) and CLI(Hyper).
    Containers are not virtual machines. The main difference is that containers rely on the host&amp;apos;s kernel, while VMs rely on hypervisors, which run their own kernels. So the containers are isolated environments within a host OS, sharing the same kernel and resources. But the kernel itself preforms the isolation of containers. Virtual machines are also isolated enviroments, but they run their own OS on virtualized hardware.
  • Open Strategy is a long term invest. How to ansowner the questions your boss asked ,what we will get for the moments? The suggestiong is that you can put your goals in serveal stages. And set diferent objectin

×