CONTINUOUS DELIVERY.
CONTINUOUS DEVOPS.
Professional conference on DevOps practices
6APRIL 2019
KYIV, UKRAINE
th
Professional conference on DevOps practices 6APRIL 2019 KYIV, UKRAINE
DMYTRO LAHOZA
CD: Cheap and Furious
th
Requirements
● Cutting Edge technologies
● Simple development lifecycle processes
● Extendable development lifecycle processes
● Visible: alerting, monitoring, tracing
● Reliable and durable. SLA 99.99999999% or at least 99.9%
● Free or at least Cheap
Requirements
Building blocks
● Terraform for provisioning
● Kubernetes for deployments
● Traefik and HAProxy for balancing
● Prometheus and Grafana for collecting metrics, alerting and monitoring
● Graylog for collecting logs, log management and alerting
● Jaeger for tracing
● Bitbucket for Pipelines
● ChatOps with Slack for management
● Scaleway for infrastructure
What is Scaleway
● Website: http://www.scaleway.com/
● Fastest growing cloud in Europe
● IaaS with BareMetal and Virtual appliances
● Reliable and Durable. SLA 99.99%
● Has S3 compatible object storage
● Affordable or even Cheap
● Easy to replace
Terraform for provisioning
● CloudFormation without AWS
● Support of many cloud providers
● Do you need anything else?
Kubernetes for deployments
● Foundation for Cloud Native Computing
● Reasonable reliability (single master or multi-master)
● Versioning and dependencies by Helm “out of the box”
Traefik and HAProxy for balancing
● Rolling, Blue Green, and Canary deployment support
● SSL/TLS termination
● Automatic certificate issuing with Let’s Encrypt
● Configuration with Kubernetes Ingress
● Fast and simple
North-South traffic diagram
Prometheus and Grafana
● Efficient and simple metrics aggregation
● Feature-rich UI
● Includes alerting and exporting panels with metrics
● prometheus-operator allows automatic adding new sources
Graylog for logs
● Most complete log management solution
● Comprehensive full-text search
● Alerting on logs “out of the box”
● Collecting logs from K8s with Fluentd
● It should be external
Jaeger for tracing
● Implementation of Open Tracing
● Fast and easy to use UI
● Capable to work in dev mode with in-memory storage
● jaeger-operator
Bitbucket for Pipelines
● Affordable Git service
● Convenient code review functionality
● Cheap Pipelines
● Tight integration with Jira, Trello and Confluence
● Can be easily replaced by GitHub or GitLab
ChatOps with Slack
● Why Slack? Market leader, free enough, hosted.
● Same tool as you use every day
● Notifications in the most suitable place
● Management by chatting with the bot or filling forms in chat
● Built-in authentication, authorization, user and group management
● Reason not to work
“Slack is down” is new Compiling
Manopus
● YAML configuration
● Python-like logic description
● Omni-channel event processing
● Easy CI bot creation experience
Manopus
Manopus
Code life cycle chart
Development Docker Image Docker Registry
Helm Chart Kubernetes
Version promotion diagram
Demo
What else
● Domains and DNS: Cloudflare
● Docker Registry: TreeScale
● Storage: external Percona XtraDB Cluster and others
Result
● CNCF approved
● Simple but extendable
● Reliable when needed
● Good observability
● Cheap as chips
Dmytro Lahoza
github.com/DLag
Twitter: @dlagoza
https://github.com/DLag/terraform-k8s-scaleway
https://github.com/geliar/manopus
Thank you!

DevOps Fest 2019. Дмитрий Лагоза. CD for StartUp, cheap and furious

  • 1.
    CONTINUOUS DELIVERY. CONTINUOUS DEVOPS. Professionalconference on DevOps practices 6APRIL 2019 KYIV, UKRAINE th
  • 2.
    Professional conference onDevOps practices 6APRIL 2019 KYIV, UKRAINE DMYTRO LAHOZA CD: Cheap and Furious th
  • 3.
    Requirements ● Cutting Edgetechnologies ● Simple development lifecycle processes ● Extendable development lifecycle processes ● Visible: alerting, monitoring, tracing ● Reliable and durable. SLA 99.99999999% or at least 99.9% ● Free or at least Cheap
  • 4.
  • 5.
    Building blocks ● Terraformfor provisioning ● Kubernetes for deployments ● Traefik and HAProxy for balancing ● Prometheus and Grafana for collecting metrics, alerting and monitoring ● Graylog for collecting logs, log management and alerting ● Jaeger for tracing ● Bitbucket for Pipelines ● ChatOps with Slack for management ● Scaleway for infrastructure
  • 6.
    What is Scaleway ●Website: http://www.scaleway.com/ ● Fastest growing cloud in Europe ● IaaS with BareMetal and Virtual appliances ● Reliable and Durable. SLA 99.99% ● Has S3 compatible object storage ● Affordable or even Cheap ● Easy to replace
  • 7.
    Terraform for provisioning ●CloudFormation without AWS ● Support of many cloud providers ● Do you need anything else?
  • 8.
    Kubernetes for deployments ●Foundation for Cloud Native Computing ● Reasonable reliability (single master or multi-master) ● Versioning and dependencies by Helm “out of the box”
  • 9.
    Traefik and HAProxyfor balancing ● Rolling, Blue Green, and Canary deployment support ● SSL/TLS termination ● Automatic certificate issuing with Let’s Encrypt ● Configuration with Kubernetes Ingress ● Fast and simple
  • 10.
  • 11.
    Prometheus and Grafana ●Efficient and simple metrics aggregation ● Feature-rich UI ● Includes alerting and exporting panels with metrics ● prometheus-operator allows automatic adding new sources
  • 12.
    Graylog for logs ●Most complete log management solution ● Comprehensive full-text search ● Alerting on logs “out of the box” ● Collecting logs from K8s with Fluentd ● It should be external
  • 13.
    Jaeger for tracing ●Implementation of Open Tracing ● Fast and easy to use UI ● Capable to work in dev mode with in-memory storage ● jaeger-operator
  • 14.
    Bitbucket for Pipelines ●Affordable Git service ● Convenient code review functionality ● Cheap Pipelines ● Tight integration with Jira, Trello and Confluence ● Can be easily replaced by GitHub or GitLab
  • 15.
    ChatOps with Slack ●Why Slack? Market leader, free enough, hosted. ● Same tool as you use every day ● Notifications in the most suitable place ● Management by chatting with the bot or filling forms in chat ● Built-in authentication, authorization, user and group management ● Reason not to work
  • 16.
    “Slack is down”is new Compiling
  • 17.
    Manopus ● YAML configuration ●Python-like logic description ● Omni-channel event processing ● Easy CI bot creation experience
  • 18.
  • 19.
  • 20.
    Code life cyclechart Development Docker Image Docker Registry Helm Chart Kubernetes
  • 21.
  • 22.
  • 23.
    What else ● Domainsand DNS: Cloudflare ● Docker Registry: TreeScale ● Storage: external Percona XtraDB Cluster and others
  • 24.
    Result ● CNCF approved ●Simple but extendable ● Reliable when needed ● Good observability ● Cheap as chips
  • 25.