Upgrade to Pro — share decks privately, control downloads, hide ads and more …

DevOps Pipelines from Code to Infrastructure and Deployment

DevOps Pipelines from Code to Infrastructure and Deployment

Exactpro

June 20, 2023
Tweet

More Decks by Exactpro

Other Decks in Technology

Transcript

  1. DevOps Pipelines
    from Code to Infrastructure and
    Deployment
    Dr. Erekle Magradze
    Head of School of Technology,
    Faculty of Business, Technology and Education,
    Ilia State University,
    Co-Founder of DevOps Georgia,
    Lead DevOps Engineer at Quantori Georgia

    View full-size slide

  2. Outline
    • SDLC
    • The CI
    • The CD
    • Metrics
    • IaC and Environments
    • The CI/CD Pipeline with Infrastructure
    Components

    View full-size slide

  3. SDLC - Software Development Life Cycle

    View full-size slide

  4. SDLC - Software Development Life Cycle
    Jidoka = Automation + People
    autonomation
    https://www.allaboutlean.com/toyoda-model-g/

    View full-size slide

  5. SDLC - Software Development Life Cycle

    View full-size slide

  6. CI Process Ensures
    ● The Style and Consistency of
    the Code
    ● Code Quality - Quality Gates
    (Mainly Unit Testing at this
    stage)
    ● Fast Feature Development
    and Building - Artifact
    or/and Docker Image
    ● More testing
    ● Bundling the release
    Key Requirement:
    Infrastructure should be capable to
    handle large number of
    simultaneous, high quality, feature
    development
    Where Ends CI and Starts CD?

    View full-size slide

  7. CD Process Ensures
    ● Provisioning of different environments
    (dynamically or statically);
    ● Running the security tests and checks
    against the artifacts;
    ● Deploying the artifacts or container images
    according to the pre-defined strategy:
    Canary, Rolling or Blue Green Deployment -
    in corresponding environment - dev,
    staging, QA or production;
    ● Monitoring the deployment process and
    existing deployments
    Key Requirement
    ● Infrastructure should be scalable
    ● Environments Should be well isolated
    ● Rollback Mechanisms should be there
    ● In case of Cloud Usage, Dynamic
    Environment Build and Demolishing should
    be in place
    The CD

    View full-size slide

  8. Acronym Metrics Description
    Process objectives
    under control
    Recommended
    value
    BFP Build Failed Percentage
    The percent of builds failed
    due to infrastructure reason
    per day vs all builds
    Infrastructure problems and
    progress in resolving them
    5-10%
    T2F Time 2 Feedback Average duration of PR build
    Fluctuations of feedback
    time over period
    <30 min
    PUK Percentage of Unknown to Known
    The percent of unknown
    errors to known errors
    New infra problems (e.g., git
    updates)
    >90%
    MBSQ Maximum BuildServer Queue
    Maximal BuildServer queue
    on working hours
    quality/performance/insuffi
    ciency of build process
    <5
    AQT Average Queue Time
    Avg build wait time in
    Jenkins queue
    quality/performance/insuffi
    ciency of build process
    <10m
    PRC Pull Request Cost
    Calculate count of pull (or
    merge) request per day
    if all PR created were
    reviewed/built in measured
    period
    reference: https://d1.awsstatic.com/events/Summits/reinvent2022/BOA329_Ideal-blueprint-versus-reality-for-CI-CD-pipelines.pdf page 27
    Metrics

    View full-size slide

  9. IaC and Environments - Approach 1
    If you can
    generalize
    only up to
    20% of your
    TF code

    View full-size slide

  10. IaC and Environments - Approach 2
    If you can
    generalize
    only up to
    50% of your
    TF code

    View full-size slide

  11. IaC and Environments - Approach 3
    If you can
    generalize
    more than
    50% of your
    TF code

    View full-size slide

  12. IaC and Environments - Dynamic and Static
    Dynamic Infrastructure
    ● Container Services;
    ● Users, Roles, Groups, Services;
    ● Serverless functions
    ● Networking Gateways
    ● VPNs
    ● Firewall Rules
    Static Infrastructure
    ● Virtual Machines (EC2 instances, Google Compute
    Engines, etc)
    ● DataBase Services (SaaS)
    ● Kubernetes
    ● Inter Region Setups
    ● Storage (Object, Data Storage)
    ● BigData Infrastructure

    View full-size slide

  13. Dynamic and Static Infrastructure

    View full-size slide

  14. One More Thing To Announce
    DevOps Georgia have new Community Leaders
    Giorgi Keratishvili Davit Tsulaia Guram Jalaghonia

    View full-size slide