22
Bevezetés CI DevOps Összefoglalás DevOps-kultúra Pataki Norbert ELTE Informatikai Kar, Programozási Nyelvek és Fordítóprogramok Tanszék [email protected] Szakmai Esti Mesék DevOps-kultúra Pataki Norbert

Pataki Norbert - ELTEpatakino.web.elte.hu/pataki_devops.pdf · 2017. 2. 21. · Bevezetés CI DevOps Összefoglalás DevOps-kultúra Pataki Norbert ELTE Informatikai Kar, Programozási

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

  • Bevezetés CI DevOps Összefoglalás

    DevOps-kultúra

    Pataki Norbert

    ELTE Informatikai Kar,Programozási Nyelvek és

    Fordítóprogramok Tanszé[email protected]

    Szakmai Esti Mesék

    DevOps-kultúra Pataki Norbert

  • Bevezetés CI DevOps Összefoglalás

    Mi az a DevOps?

    Development & Operations

    DevOps-kultúra Pataki Norbert

  • Bevezetés CI DevOps Összefoglalás

    Alapok

    Szoftverfejlesztés: csapatmunkaCsapatmunka támogatása szoftveresen

    VerziókövetésBuild eszközökContinuous Integration (CI) server-ekRelease-ek elkészítése/kiadása/tárolásaSzoftverek automatikus beüzemelése (deployment)Modern deployment felületek: cloud-ok, konténerek

    DevOps-kultúra Pataki Norbert

  • Bevezetés CI DevOps Összefoglalás

    Problémák

    A verziókövetés nem garantálja, hogy a repository-banlévő kód korrekt

    Honnan derül ki, hogy korrekt-e?Mikor update-lhetik-e a saját másolatukat a fejlesztők?A forráskód mely részét update-lhetik a fejlesztők?Melyik revision-re álljunk vissza, ha az aktuális verzió nemjó?Mi legyen, ha egyik fejlesztői gépen működik egyfunkcionalitás, másikon nem?Mikor romlott el, mióta nem jó?Ki a felelőse a problémának? Kinek szóljunk?

    Egy hiba kijavítása elront-e más funkcionalitást?Hogyan állítható össze egy demó gyorsan?

    DevOps-kultúra Pataki Norbert

  • Bevezetés CI DevOps Összefoglalás

    Continuous Integration

    szoftverfejlesztési gyakorlatXP fejlesztési módszertanCI eszközök, build server-ekhttp://martinfowler.com/articles/continuousIntegration.html

    DevOps-kultúra Pataki Norbert

    http://martinfowler.com/articles/continuousIntegration.html

  • Bevezetés CI DevOps Összefoglalás

    CI Ciklus

    DevOps-kultúra Pataki Norbert

  • Bevezetés CI DevOps Összefoglalás

    CI Eszközök / Rendszerek

    CruiseControlHudson / JenkinsIBM Rational Team ConcertMicrosoft Team Foundation Serverstb.

    DevOps-kultúra Pataki Norbert

  • Bevezetés CI DevOps Összefoglalás

    Jenkins

    CI eszköz, rendszerBővíthető, nyílt forrású CI szerverhttp://jenkins-ci.org/

    Jenkins 1 vs Jenkins 2

    DevOps-kultúra Pataki Norbert

    http://jenkins-ci.org/

  • Bevezetés CI DevOps Összefoglalás

    Job-ok

    DevOps-kultúra Pataki Norbert

  • Bevezetés CI DevOps Összefoglalás

    Plugin-ok

    DevOps-kultúra Pataki Norbert

  • Bevezetés CI DevOps Összefoglalás

    Release-ek

    DevOps-kultúra Pataki Norbert

  • Bevezetés CI DevOps Összefoglalás

    DevOps alapok

    DevOps-kultúra Pataki Norbert

  • Bevezetés CI DevOps Összefoglalás

    DevOps pipeline

    DevOps-kultúra Pataki Norbert

  • Bevezetés CI DevOps Összefoglalás

    DevOps eszközök, DevOps toolchain

    DevOps-kultúra Pataki Norbert

  • Bevezetés CI DevOps Összefoglalás

    Speciális eszközök

    Statikus elemzőkCode coveragePerformance testingMemory leak detectorLicense-ek ellenőrzéseVulnerability analysis tools, security testingDeployment eszközökvagrantApplication Release AutomationConfiguration Management: pl. Ansible, Puppet, ChefLogging/monitoring: pl. elk-stack

    DevOps-kultúra Pataki Norbert

  • Bevezetés CI DevOps Összefoglalás

    Problémák, lehetőségek

    Feedback eljuttatása a fejlesztőkhözRoll-back folyamatokHigh availability (HA)Canary testingBlue-green deploymentDevOps példa: Netflix

    DevOps-kultúra Pataki Norbert

  • Bevezetés CI DevOps Összefoglalás

    Modern deployment környezetek

    CloudPrivate cloud (pl. OpenStack)Public cloud (pl. AWS)

    Linux containers (LXC)dockerkubernetesMesos

    DevOps-kultúra Pataki Norbert

  • Bevezetés CI DevOps Összefoglalás

    Openstack

    DevOps-kultúra Pataki Norbert

  • Bevezetés CI DevOps Összefoglalás

    Docker

    DevOps-kultúra Pataki Norbert

  • Bevezetés CI DevOps Összefoglalás

    Kubernetes

    DevOps-kultúra Pataki Norbert

  • Bevezetés CI DevOps Összefoglalás

    Összefoglalás

    DevOps: a CI kibővítése, Development & OperationsCI: Megkönnyíteni a csoportos szoftverfejlesztéstDevOps: automatizált deployment, monitoring, feedbackDevOps: új deployment felületek és eszközök

    DevOps-kultúra Pataki Norbert

  • Bevezetés CI DevOps Összefoglalás

    Összefoglalás

    DevOps-kultúra Pataki Norbert

    Bevezetés

    CI

    DevOps

    Összefoglalás