华为开源技术专家马全一 - 基于容器技术实现 DevOps Orchestration

2020-02-27 273浏览

  • 1.
  • 2.
  • 3.ContainerOps – DevOps Orchestration
  • 4.ContainerOps – DevOps Orchestration
  • 5.Who Am I? Quanyi Ma DevOps & Open Source Expert Senior Architect & Full Stack DeveloperEmail:maquanyi@huawei.comTwiAer:@genednaGithub:hAps://github.com/genedna
  • 6.DevOps Story •2007 - While consulJng on a data center migraJon for the Belgium government, system administrator Patrick Debois becomes frustrated by conflicts between developers and system admins. He ponders soluJons. •Agile Conference 2008 in Toronto - Andrew Clay Shafer’s “birds of a feather” ad hoc session called Agile Infrastructure. The only person who showed up was Patrick Debois. Shafer and Debois started a Google group called “Agile System Administra4on” •O’Reilly Velocity 2009 Conference - PresentaJon at Velocity of 10+ Deploys perDay:Dev and Ops Coopera4on at Flickr by John Allspaw and Paul Hammond – Debois watched by streaming video, tweeted. •October 2009 - Organized through TwiAer. ConversaJon conJnued on TwiAer and the #DevOps hashtag was born, dropping “Days” for brevity. •2010 Mountain View, CA - DevOpsDays •Mar. 2011 - Gartner’s first notes about DevOps •April 2012 - In an InfoQ video interview, Debois admiAed that naming the movement was not as intenJonal as it mightseem:“I picked ‘DevOpsDays’ as Dev and Ops working together because ‘Agile System AdministraGon’ was too long,” he said. “There never was a grand plan for DevOps as a word.”
  • 7.What’s the DevOps? DevOps is "a portmanteau of 'development' and 'opera5ons'" and is "a so6ware development method that stresses communica5ons, collabora5on, integra5on, automa5on and measurement of coopera5on between so6ware developers and other IT professionals". -From Wikipedia DevOps is an operational philosophy that promotes better communication between development and operations as more elements of operations become programmable.
  • 8.What’s the DevOps ultimate AIM? Goal -> The ulJmate is break down barriers between developer, QAs and operators. How -> •  Define the operaJon environment at development stage. •  Define the process from development to the producJon. •  Automate everything.
  • 9.Why improve so hard? •  Don’t break the original DevOps workflow. •  Add DevOps orchestraJon tool adapJve the workflow. •  Improve the process with customize DevOps task. •  Add DevOps service like Travis CI. •  Everyone is happy!!!
  • 10.ContainerOps - DevOps Orchestration Defining -> Component Drawing -> Workflow Running -> Container Orchestration Open Source @ ->https://github.com/Huawei/containerops
  • 11.Defining Component - Container Image For DevOps 1.  EncapsulaJng your DevOps task in a container image. 2.  Defining the input & output data. a.  Data type is Key/Value b.  Input data with environment variables. Reserved environment variable name is [CO_DATA]. c.  Output data in the stdout/stderr, the reserved environment variable name is [CO_RESULT]. d.  Output data format [COUT] CO_RESULT = true/false . e.  Base image is phusion/baseimage . 3.  Management the component lifecycle in the ContainerOps system.
  • 12.Why Use DevOps Component? Search Download Plugin Jenkins Wiki Wgethttps://...Component Component Repository Copy URL Environment Follow README, prepare virtual machine and initialize the environments N/A Run Scheduling the VM to run the plugin N/A
  • 13.
  • 14.
  • 15.
  • 16.Why A Component Not A Pod? 1.  AdapJve other container orchestraJon system like Docker Swarm. 2.  Only one task in the component to easily maintain and share.
  • 17.
  • 18.
  • 19.
  • 20.TiDB/TiKV/PB Case 3 DevOps Stage with differentsystems:1.  Test case Within Travis CI 2.  MergeStage:'>Stage: