1 / 21

Landing the Docker

Landing the Docker. Kunpeng Yang & Mark Shao. Agenda. Introduction of Docker What is Docker What Docker is all about Our problems Solution Solution with vSphere Solution with Docker Benefit/Limitation Pagrant Tips to Share & Lesson learnt.

mayes
Télécharger la présentation

Landing the Docker

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Landing the Docker Kunpeng Yang & Mark Shao

  2. Agenda • Introduction of Docker • What is Docker • What Docker is all about • Our problems • Solution • Solution with vSphere • Solution with Docker • Benefit/Limitation • Pagrant • Tips to Share & Lesson learnt

  3. Docker is an open-source engine that automates the deployment of any application as a lightweight, portable, self-sufficient container that will run virtually anywhere.

  4. What is Docker • Open Source engine to commoditize LXC • Using AUFS for quick provision • Standard format for containers: Layers • Allowing to create and share images

  5. What Docker is all about • Deployment and Delivery • DevOps • Test • ...

  6. Our problems • 3000 automated test cases • 4-5 hours duration regression • Dirty data cause unreliable test result

  7. Solution with vSphere • Save VMs (Client, Server, DB) as template • Use Soap-based ws to do provision • Provision a couple of templates at same time • Build code and transfer it to the multiple client machine

  8. Issues • Provision cost 1/3 time of regression • Big efforts to maintain template • Difficult to add dependency between VMs in same template

  9. One day we meet Docker

  10. Solution with Docker • Use containers instead of VMs • Invoke provision by REST in JSON • Share the folder between container and host server • Handle libsdependency once and share it in all containers • Share the xml report from slave with host server

  11. Benefits/Limitation • Benefits • Free & Open-source • Provision in seconds • Easy to maintain images (AUFS layers) • Add dependency by adding link between containers • Limitation • Windows • Integration with IAAS

  12. Pagrant • A small tool we build to easily scale out the slaver nodes • Easy to control both the master and slaver nodes through Pagrant • Some other features for distributed test.

  13. Benchmark node/time cost

  14. Tips to Share & Lesson learnt

  15. Private registry • The download speed too slow from `index` • Enterprise security • Easy to share the images internally • https://github.com/dotcloud/docker-registry

  16. Don’t be reluctant to report issue

  17. Community is always ready to help • Problem faced with linking containers • Link the containers via name • export the environment variables for service host and port in the target container

  18. Community is always ready to help (cont)

  19. TestNG support distributed execution?

  20. Patch on TestNG • Deprecate the huge serializable object during communication • Dispatch according to Test by default • Accumulate the xml reports from slavers and generate the final merged report at end

  21. Docker has landed

More Related