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

devops practices

devops practices

Avatar for Elasri Abdelati

Elasri Abdelati

April 07, 2022

Other Decks in Programming

Transcript

  1. $ whoami • I am Abdelati, Junior DevOps/Data Engineer •

    Let's talk @kaizendae at twitter $ whatis • devops practices and culture. • Container good practices. • Walkthrough a CI/CD pipeline. • This is no exhaustive content.
  2. Becoming devops or Cargo-culting? ”Cargo culting describes the practice of

    emulating observed behaviors or implementing tools into an environment without fully understanding the reasoning or circumstances that led to success using those strategies.”
  3. Infrastructure as Code? ✖ maintain the settings of individual deployment

    environments. ✖ Environment becomes a snowflake. Snowflake: a unique configuration that cannot be reproduced automatically.
  4. Break the silos! Silos come from a lack of communication

    and collaboration between teams, not simply from a separation of duties
  5. Kubernetes && Cloud Native Applications Cloud-Native app is an app

    that is designed to meet modern business demands of auto-scaling, self-healing, rolling updates.
  6. Continuous Integration (CI) It’s the process of continuously(frequently) integrating new

    code written by developers with a mainline or “master” branch throughout the day. • Discover breaking changes quickly.
  7. Continuous Delivery (CD) A set of tools Takes CI one

    step further, makes sure a deployable artefact is always available.
  8. Continuous Deployment (CD) A set of tools Frequently deploying changes

    to production automatically by defining tests and validations to minimize risk. • Job satisfaction for team. • Discover sleeping bombs quickly. • Learn more quickly from post-mortems. • Ship faster for a happier customer.
  9. Continuous Deployment (CD) If you don’t have a robust set

    of tests to catch issues early in the pipeline, you’ll end up rolling bad code to all your environments. Needs high degree of automation and observability
  10. Best Practices of Container Builds ✔ Keep a small size

    (push-pull time, security) ✔ Use optimized base images ( ex: alpine, debian-slim) ✔ Execute using non-root ✔ Optimize for cache use. ✔ Use multistage builds.
  11. Resources • Docker (101 - 102 - 103) - Youtube

    CNCG • Docker for the absolute beginner - KodeKloud • GeeksBlabla devops 101 - Episode #83 • Demo - Gitlab Repos