SlideShare una empresa de Scribd logo
1 de 24
Descargar para leer sin conexión
Agile and DevOps The Problem The Solution The Demo Q/A
Blue/Green Deployment with HAProxy
and Consul
Автоматизирано въвеждане в експлоатация на софтуер
Владимир Витков
2016.08.13 / VarnaConf
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
Кой е пред вас
• Владимир
• Системен Администратор
• Привърженик на FOSS но не и зеалот
• Експериментатор
• Относително приятен човек за разговор*
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
Census
• Програмисти
• Администратори
• Performance
• Agile
• QA
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
Agile and DevOps
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
Какво е Agile
• Идеология за разработка на софтуер
• Това което се ползва
• Нещо прекрасно
• . . . но но съвсем
• Периоди на разработка с функционалност
• Много караници
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
Какво е DevOps
• Смесица между администратор и разработчик
• Много автоматизация
• Управлени на инфраструктура
• . . . като разработчик
• Отново много караници
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
Защо Agile и DevOps
• Agile - много версии (и често)
• DevOps - мутираща инфраструктура
• Сборът? - голямо натоварване ако няма синхрон
• Бързо развитие на софтуера
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
The Problem
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
Приложението
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
The Solution
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
Архитектура
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
Компоненти
• docker
• haproxy
• consul
• registrator
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
Consul
• Контейнер предоставящ key/value услуга
• Съхранява описанието на приложението ни
• Може да се клъстеризира
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
Consul - starting
docker run --detach --restart=always 
--hostname consul-master --name consul-master 
gliderlabs/consul-server [-bootstrap]
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
Registrator
• Динамично обновява Consul
• Попълва параметри за контейнери
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
Registrator - starting
docker run --detach --restart=always 
--name registrator --hostname registrator 
--net=host 
--volume=/var/run/docker.sock:/tmp/docker.sock 
gliderlabs/registrator:latest consul://localhost:85
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
haproxy
• контейнер базиран на alpine linux
• haproxy
• consul-template
• nginx - holding pages
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
haproxy - entrypoint
frontend http-in
bind *:80
# Generated automatically by consul-template
# blue if app-web and blue in service/app/color
# green if app-web and green in service/app/color
# else holding
use_backend app_{{with $cl:=key "service/app/color"
default_backend app_holding
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
haproxy - holding
backend web_holding
server sink 127.0.0.1:59599
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
haproxy - color
listen web_green
bind *:18000
balance roundrobin
{{range $i,$s:=service "web"}}
{{if .Tags | contains "green"}}
server {{$i}}{{.Node}}green {{.Address}}:{{.Port}}
{{end}}
{{end}}
server sink 127.0.0.1:56569 backup
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
haproxy - starting
docker run --detach --restart=always 
--env=’CONSUL_CONNECT=172.17.42.1:8500’ 
--hostname lb-prod --name lb-prod 
zeridon/haproxy-consul
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
The Demo
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
Q/A
Blue/Green Deployment with HAProxy and Consul Владимир Витков
Agile and DevOps The Problem The Solution The Demo Q/A
Контакти
• Владимир Витков
• vvitkov@linux-bg.org
• https://www.getoto.net/zeridon
• https://github.com/zeridon
• http://www.slideshare.net/zeridon
Blue/Green Deployment with HAProxy and Consul Владимир Витков

Más contenido relacionado

La actualidad más candente

DevOpsGuys Performance Testing with APM Tools workshop
DevOpsGuys Performance Testing with APM Tools workshopDevOpsGuys Performance Testing with APM Tools workshop
DevOpsGuys Performance Testing with APM Tools workshopDevOpsGroup
 
How to outsource the pain of drupal translation to smartling from loparev
How to outsource the pain of drupal translation to smartling from loparevHow to outsource the pain of drupal translation to smartling from loparev
How to outsource the pain of drupal translation to smartling from loparevOleksii Bogush
 
Berlioz - Delivering Microservices Applications
Berlioz - Delivering Microservices ApplicationsBerlioz - Delivering Microservices Applications
Berlioz - Delivering Microservices ApplicationsRuben Hakopian
 
Product Managers are from Pluto and UXers are from Uranus
Product Managers are from Pluto and UXers are from UranusProduct Managers are from Pluto and UXers are from Uranus
Product Managers are from Pluto and UXers are from UranusProduct Anonymous
 
What’s new in studio 1.4
What’s new in studio 1.4What’s new in studio 1.4
What’s new in studio 1.4Ami Goldenberg
 
Continuous Delivery: better software, faster.
Continuous Delivery: better software, faster.Continuous Delivery: better software, faster.
Continuous Delivery: better software, faster.Bert Jan Schrijver
 
Monitoring 改造計畫:流程觀點
Monitoring 改造計畫:流程觀點Monitoring 改造計畫:流程觀點
Monitoring 改造計畫:流程觀點William Yeh
 
Automate and Orchestrate DevOps
Automate and Orchestrate DevOpsAutomate and Orchestrate DevOps
Automate and Orchestrate DevOpsChamith Kumarage
 
WTF: Where To Focus when you take over a Drupal project
WTF: Where To Focus when you take over a Drupal projectWTF: Where To Focus when you take over a Drupal project
WTF: Where To Focus when you take over a Drupal projectSymetris
 
Adobe Presents Internal Service Delivery Platform at Velocity 13 Santa Clara
Adobe Presents Internal Service Delivery Platform at Velocity 13 Santa ClaraAdobe Presents Internal Service Delivery Platform at Velocity 13 Santa Clara
Adobe Presents Internal Service Delivery Platform at Velocity 13 Santa Claradev2ops
 
Why you should embrace Gradle and ditch Maven
Why you should embrace Gradle and ditch MavenWhy you should embrace Gradle and ditch Maven
Why you should embrace Gradle and ditch MavenGijsLeussink
 
Release Management with Visual Studio Team Services and Office Dev PnP
Release Management with Visual Studio Team Services and Office Dev PnPRelease Management with Visual Studio Team Services and Office Dev PnP
Release Management with Visual Studio Team Services and Office Dev PnPPetter Skodvin-Hvammen
 
Development tools at Base
Development tools at BaseDevelopment tools at Base
Development tools at BaseDominik Kapusta
 
Continuous delivery for the it pro
Continuous delivery for the it proContinuous delivery for the it pro
Continuous delivery for the it proHenry Been
 
Are we really moving faster? How visualizing flow changed the way we work - ...
Are we really moving faster? How visualizing flow changed the way we work -  ...Are we really moving faster? How visualizing flow changed the way we work -  ...
Are we really moving faster? How visualizing flow changed the way we work - ...Roman Pickl
 
Getting Visual with Value Streams
Getting Visual with Value StreamsGetting Visual with Value Streams
Getting Visual with Value StreamsTasktop
 
JavaOne 2015 - Swimming upstream in the container revolution
JavaOne 2015 - Swimming upstream in the container revolutionJavaOne 2015 - Swimming upstream in the container revolution
JavaOne 2015 - Swimming upstream in the container revolutionBert Jan Schrijver
 

La actualidad más candente (20)

DevOpsGuys Performance Testing with APM Tools workshop
DevOpsGuys Performance Testing with APM Tools workshopDevOpsGuys Performance Testing with APM Tools workshop
DevOpsGuys Performance Testing with APM Tools workshop
 
How to outsource the pain of drupal translation to smartling from loparev
How to outsource the pain of drupal translation to smartling from loparevHow to outsource the pain of drupal translation to smartling from loparev
How to outsource the pain of drupal translation to smartling from loparev
 
Berlioz - Delivering Microservices Applications
Berlioz - Delivering Microservices ApplicationsBerlioz - Delivering Microservices Applications
Berlioz - Delivering Microservices Applications
 
Product Managers are from Pluto and UXers are from Uranus
Product Managers are from Pluto and UXers are from UranusProduct Managers are from Pluto and UXers are from Uranus
Product Managers are from Pluto and UXers are from Uranus
 
What’s new in studio 1.4
What’s new in studio 1.4What’s new in studio 1.4
What’s new in studio 1.4
 
Continuous Delivery: better software, faster.
Continuous Delivery: better software, faster.Continuous Delivery: better software, faster.
Continuous Delivery: better software, faster.
 
Monitoring 改造計畫:流程觀點
Monitoring 改造計畫:流程觀點Monitoring 改造計畫:流程觀點
Monitoring 改造計畫:流程觀點
 
Automate and Orchestrate DevOps
Automate and Orchestrate DevOpsAutomate and Orchestrate DevOps
Automate and Orchestrate DevOps
 
Skype goes agile
Skype goes agileSkype goes agile
Skype goes agile
 
Block-based Speech to Speech Translation
Block-based Speech to Speech TranslationBlock-based Speech to Speech Translation
Block-based Speech to Speech Translation
 
WTF: Where To Focus when you take over a Drupal project
WTF: Where To Focus when you take over a Drupal projectWTF: Where To Focus when you take over a Drupal project
WTF: Where To Focus when you take over a Drupal project
 
Adobe Presents Internal Service Delivery Platform at Velocity 13 Santa Clara
Adobe Presents Internal Service Delivery Platform at Velocity 13 Santa ClaraAdobe Presents Internal Service Delivery Platform at Velocity 13 Santa Clara
Adobe Presents Internal Service Delivery Platform at Velocity 13 Santa Clara
 
Why you should embrace Gradle and ditch Maven
Why you should embrace Gradle and ditch MavenWhy you should embrace Gradle and ditch Maven
Why you should embrace Gradle and ditch Maven
 
Release Management with Visual Studio Team Services and Office Dev PnP
Release Management with Visual Studio Team Services and Office Dev PnPRelease Management with Visual Studio Team Services and Office Dev PnP
Release Management with Visual Studio Team Services and Office Dev PnP
 
Development tools at Base
Development tools at BaseDevelopment tools at Base
Development tools at Base
 
Continuous delivery for the it pro
Continuous delivery for the it proContinuous delivery for the it pro
Continuous delivery for the it pro
 
Product update aug_29
Product update aug_29Product update aug_29
Product update aug_29
 
Are we really moving faster? How visualizing flow changed the way we work - ...
Are we really moving faster? How visualizing flow changed the way we work -  ...Are we really moving faster? How visualizing flow changed the way we work -  ...
Are we really moving faster? How visualizing flow changed the way we work - ...
 
Getting Visual with Value Streams
Getting Visual with Value StreamsGetting Visual with Value Streams
Getting Visual with Value Streams
 
JavaOne 2015 - Swimming upstream in the container revolution
JavaOne 2015 - Swimming upstream in the container revolutionJavaOne 2015 - Swimming upstream in the container revolution
JavaOne 2015 - Swimming upstream in the container revolution
 

Destacado

High Volume Monitoring with Graphite
High Volume Monitoring with GraphiteHigh Volume Monitoring with Graphite
High Volume Monitoring with Graphitezeridon
 
Container Orchestration @Docker Meetup Hamburg
Container Orchestration @Docker Meetup HamburgContainer Orchestration @Docker Meetup Hamburg
Container Orchestration @Docker Meetup HamburgTimo Derstappen
 
Meetup Elasticsearch 13 novembre 2014
Meetup Elasticsearch 13 novembre 2014Meetup Elasticsearch 13 novembre 2014
Meetup Elasticsearch 13 novembre 2014Jean-Pierre Paris
 
Bespoke service discovery with HAProxy and Marathon on Mesos
Bespoke service discovery with HAProxy and Marathon on MesosBespoke service discovery with HAProxy and Marathon on Mesos
Bespoke service discovery with HAProxy and Marathon on MesosBart Spaans
 
The moment my site got hacked
The moment my site got hackedThe moment my site got hacked
The moment my site got hackedMarko Heijnen
 
How we cooked Elasticsearch, Consul, HAproxy and DNS-recursor
How we cooked Elasticsearch, Consul, HAproxy and DNS-recursorHow we cooked Elasticsearch, Consul, HAproxy and DNS-recursor
How we cooked Elasticsearch, Consul, HAproxy and DNS-recursorOleg Tokarev
 
HAProxy tech talk
HAProxy tech talkHAProxy tech talk
HAProxy tech talkicebourg
 
HAProxy scale out using open source
HAProxy scale out using open sourceHAProxy scale out using open source
HAProxy scale out using open sourceIngo Walz
 
From pets to cattle - powered by CoreOS, docker, Mesos & nginx
From pets to cattle - powered by CoreOS, docker, Mesos & nginxFrom pets to cattle - powered by CoreOS, docker, Mesos & nginx
From pets to cattle - powered by CoreOS, docker, Mesos & nginxQAware GmbH
 
Consul: Service-oriented at Scale
Consul: Service-oriented at ScaleConsul: Service-oriented at Scale
Consul: Service-oriented at ScaleC4Media
 
Log analysis using Logstash,ElasticSearch and Kibana
Log analysis using Logstash,ElasticSearch and KibanaLog analysis using Logstash,ElasticSearch and Kibana
Log analysis using Logstash,ElasticSearch and KibanaAvinash Ramineni
 
Prometheus meets Consul -- Consul Casual Talks
Prometheus meets Consul -- Consul Casual TalksPrometheus meets Consul -- Consul Casual Talks
Prometheus meets Consul -- Consul Casual TalksSatoshi Suzuki
 
ElasticSearch in Production: lessons learned
ElasticSearch in Production: lessons learnedElasticSearch in Production: lessons learned
ElasticSearch in Production: lessons learnedBeyondTrees
 
Elasticsearch in Netflix
Elasticsearch in NetflixElasticsearch in Netflix
Elasticsearch in NetflixDanny Yuan
 
How ElasticSearch lives in my DevOps life
How ElasticSearch lives in my DevOps lifeHow ElasticSearch lives in my DevOps life
How ElasticSearch lives in my DevOps life琛琳 饶
 
Microservices blue-green-deployment-with-docker
Microservices blue-green-deployment-with-dockerMicroservices blue-green-deployment-with-docker
Microservices blue-green-deployment-with-dockerKidong Lee
 
Redis in Practice
Redis in PracticeRedis in Practice
Redis in PracticeNoah Davis
 
Logging with Elasticsearch, Logstash & Kibana
Logging with Elasticsearch, Logstash & KibanaLogging with Elasticsearch, Logstash & Kibana
Logging with Elasticsearch, Logstash & KibanaAmazee Labs
 
Running High Performance and Fault Tolerant Elasticsearch Clusters on Docker
Running High Performance and Fault Tolerant Elasticsearch Clusters on DockerRunning High Performance and Fault Tolerant Elasticsearch Clusters on Docker
Running High Performance and Fault Tolerant Elasticsearch Clusters on DockerSematext Group, Inc.
 

Destacado (20)

High Volume Monitoring with Graphite
High Volume Monitoring with GraphiteHigh Volume Monitoring with Graphite
High Volume Monitoring with Graphite
 
Container Orchestration @Docker Meetup Hamburg
Container Orchestration @Docker Meetup HamburgContainer Orchestration @Docker Meetup Hamburg
Container Orchestration @Docker Meetup Hamburg
 
Meetup Elasticsearch 13 novembre 2014
Meetup Elasticsearch 13 novembre 2014Meetup Elasticsearch 13 novembre 2014
Meetup Elasticsearch 13 novembre 2014
 
Bespoke service discovery with HAProxy and Marathon on Mesos
Bespoke service discovery with HAProxy and Marathon on MesosBespoke service discovery with HAProxy and Marathon on Mesos
Bespoke service discovery with HAProxy and Marathon on Mesos
 
What's New in HAProxy
What's New in HAProxyWhat's New in HAProxy
What's New in HAProxy
 
The moment my site got hacked
The moment my site got hackedThe moment my site got hacked
The moment my site got hacked
 
How we cooked Elasticsearch, Consul, HAproxy and DNS-recursor
How we cooked Elasticsearch, Consul, HAproxy and DNS-recursorHow we cooked Elasticsearch, Consul, HAproxy and DNS-recursor
How we cooked Elasticsearch, Consul, HAproxy and DNS-recursor
 
HAProxy tech talk
HAProxy tech talkHAProxy tech talk
HAProxy tech talk
 
HAProxy scale out using open source
HAProxy scale out using open sourceHAProxy scale out using open source
HAProxy scale out using open source
 
From pets to cattle - powered by CoreOS, docker, Mesos & nginx
From pets to cattle - powered by CoreOS, docker, Mesos & nginxFrom pets to cattle - powered by CoreOS, docker, Mesos & nginx
From pets to cattle - powered by CoreOS, docker, Mesos & nginx
 
Consul: Service-oriented at Scale
Consul: Service-oriented at ScaleConsul: Service-oriented at Scale
Consul: Service-oriented at Scale
 
Log analysis using Logstash,ElasticSearch and Kibana
Log analysis using Logstash,ElasticSearch and KibanaLog analysis using Logstash,ElasticSearch and Kibana
Log analysis using Logstash,ElasticSearch and Kibana
 
Prometheus meets Consul -- Consul Casual Talks
Prometheus meets Consul -- Consul Casual TalksPrometheus meets Consul -- Consul Casual Talks
Prometheus meets Consul -- Consul Casual Talks
 
ElasticSearch in Production: lessons learned
ElasticSearch in Production: lessons learnedElasticSearch in Production: lessons learned
ElasticSearch in Production: lessons learned
 
Elasticsearch in Netflix
Elasticsearch in NetflixElasticsearch in Netflix
Elasticsearch in Netflix
 
How ElasticSearch lives in my DevOps life
How ElasticSearch lives in my DevOps lifeHow ElasticSearch lives in my DevOps life
How ElasticSearch lives in my DevOps life
 
Microservices blue-green-deployment-with-docker
Microservices blue-green-deployment-with-dockerMicroservices blue-green-deployment-with-docker
Microservices blue-green-deployment-with-docker
 
Redis in Practice
Redis in PracticeRedis in Practice
Redis in Practice
 
Logging with Elasticsearch, Logstash & Kibana
Logging with Elasticsearch, Logstash & KibanaLogging with Elasticsearch, Logstash & Kibana
Logging with Elasticsearch, Logstash & Kibana
 
Running High Performance and Fault Tolerant Elasticsearch Clusters on Docker
Running High Performance and Fault Tolerant Elasticsearch Clusters on DockerRunning High Performance and Fault Tolerant Elasticsearch Clusters on Docker
Running High Performance and Fault Tolerant Elasticsearch Clusters on Docker
 

Similar a VarnaConf - Blue/Green Deployments with Docker, haproxy and Consul

Cloud Native Cost Optimization UCC
Cloud Native Cost Optimization UCCCloud Native Cost Optimization UCC
Cloud Native Cost Optimization UCCAdrian Cockcroft
 
goployer, 코드 기반의 배포 도구 - 송주영 (beNX) :: AWS Community Day 2020
goployer, 코드 기반의 배포 도구 - 송주영 (beNX) :: AWS Community Day 2020goployer, 코드 기반의 배포 도구 - 송주영 (beNX) :: AWS Community Day 2020
goployer, 코드 기반의 배포 도구 - 송주영 (beNX) :: AWS Community Day 2020AWSKRUG - AWS한국사용자모임
 
Dockercon State of the Art in Microservices
Dockercon State of the Art in MicroservicesDockercon State of the Art in Microservices
Dockercon State of the Art in MicroservicesAdrian Cockcroft
 
How open source is driving DevOps innovation: CloudOpen NA 2015
How open source is driving DevOps innovation: CloudOpen NA 2015How open source is driving DevOps innovation: CloudOpen NA 2015
How open source is driving DevOps innovation: CloudOpen NA 2015Gordon Haff
 
Docker and serverless Randstad Jan 2019: OpenFaaS Serverless: when functions ...
Docker and serverless Randstad Jan 2019: OpenFaaS Serverless: when functions ...Docker and serverless Randstad Jan 2019: OpenFaaS Serverless: when functions ...
Docker and serverless Randstad Jan 2019: OpenFaaS Serverless: when functions ...Edward Wilde
 
Containers, Serverless, Polyglot Development World, And Others…10 trends resh...
Containers, Serverless, Polyglot Development World, And Others…10 trends resh...Containers, Serverless, Polyglot Development World, And Others…10 trends resh...
Containers, Serverless, Polyglot Development World, And Others…10 trends resh...PROIDEA
 
Moon soo Lee – Data Science Lifecycle with Apache Flink and Apache Zeppelin
Moon soo Lee – Data Science Lifecycle with Apache Flink and Apache ZeppelinMoon soo Lee – Data Science Lifecycle with Apache Flink and Apache Zeppelin
Moon soo Lee – Data Science Lifecycle with Apache Flink and Apache ZeppelinFlink Forward
 
Continuous Testing using Shippable and Docker
Continuous Testing using Shippable and DockerContinuous Testing using Shippable and Docker
Continuous Testing using Shippable and DockerMukta Aphale
 
Unlock DevOps success with Atlassian - www.bdq.cloud
Unlock DevOps success with Atlassian  -  www.bdq.cloudUnlock DevOps success with Atlassian  -  www.bdq.cloud
Unlock DevOps success with Atlassian - www.bdq.cloudRyan Dobson ☁
 
Docker for Developers
Docker for DevelopersDocker for Developers
Docker for Developersnine
 
Mastering Deployments with Kubernetes & OpenShift: from Basic to Zero Downtim...
Mastering Deployments with Kubernetes & OpenShift: from Basic to Zero Downtim...Mastering Deployments with Kubernetes & OpenShift: from Basic to Zero Downtim...
Mastering Deployments with Kubernetes & OpenShift: from Basic to Zero Downtim...J On The Beach
 
Using PaaS for Continuous Delivery (Cloud Foundry Summit 2014)
Using PaaS for Continuous Delivery (Cloud Foundry Summit 2014)Using PaaS for Continuous Delivery (Cloud Foundry Summit 2014)
Using PaaS for Continuous Delivery (Cloud Foundry Summit 2014)VMware Tanzu
 
Rock Solid Deployment of Web Applications
Rock Solid Deployment of Web ApplicationsRock Solid Deployment of Web Applications
Rock Solid Deployment of Web ApplicationsPablo Godel
 
Containers and Microservices for Realists
Containers and Microservices for RealistsContainers and Microservices for Realists
Containers and Microservices for RealistsOracle Developers
 
Containers and microservices for realists
Containers and microservices for realistsContainers and microservices for realists
Containers and microservices for realistsKarthik Gaekwad
 
CI/CD with Azure DevOps and Azure Databricks
CI/CD with Azure DevOps and Azure DatabricksCI/CD with Azure DevOps and Azure Databricks
CI/CD with Azure DevOps and Azure DatabricksGoDataDriven
 
Measure and Increase Developer Productivity with Help of Serverless at AWS Co...
Measure and Increase Developer Productivity with Help of Serverless at AWS Co...Measure and Increase Developer Productivity with Help of Serverless at AWS Co...
Measure and Increase Developer Productivity with Help of Serverless at AWS Co...Vadym Kazulkin
 

Similar a VarnaConf - Blue/Green Deployments with Docker, haproxy and Consul (20)

CI/CD on AWS
CI/CD on AWSCI/CD on AWS
CI/CD on AWS
 
Cloud Native Cost Optimization UCC
Cloud Native Cost Optimization UCCCloud Native Cost Optimization UCC
Cloud Native Cost Optimization UCC
 
goployer, 코드 기반의 배포 도구 - 송주영 (beNX) :: AWS Community Day 2020
goployer, 코드 기반의 배포 도구 - 송주영 (beNX) :: AWS Community Day 2020goployer, 코드 기반의 배포 도구 - 송주영 (beNX) :: AWS Community Day 2020
goployer, 코드 기반의 배포 도구 - 송주영 (beNX) :: AWS Community Day 2020
 
Dockercon State of the Art in Microservices
Dockercon State of the Art in MicroservicesDockercon State of the Art in Microservices
Dockercon State of the Art in Microservices
 
How open source is driving DevOps innovation: CloudOpen NA 2015
How open source is driving DevOps innovation: CloudOpen NA 2015How open source is driving DevOps innovation: CloudOpen NA 2015
How open source is driving DevOps innovation: CloudOpen NA 2015
 
PHP as a Service TDC2019
PHP as a Service TDC2019PHP as a Service TDC2019
PHP as a Service TDC2019
 
Docker and serverless Randstad Jan 2019: OpenFaaS Serverless: when functions ...
Docker and serverless Randstad Jan 2019: OpenFaaS Serverless: when functions ...Docker and serverless Randstad Jan 2019: OpenFaaS Serverless: when functions ...
Docker and serverless Randstad Jan 2019: OpenFaaS Serverless: when functions ...
 
Containers, Serverless, Polyglot Development World, And Others…10 trends resh...
Containers, Serverless, Polyglot Development World, And Others…10 trends resh...Containers, Serverless, Polyglot Development World, And Others…10 trends resh...
Containers, Serverless, Polyglot Development World, And Others…10 trends resh...
 
Moon soo Lee – Data Science Lifecycle with Apache Flink and Apache Zeppelin
Moon soo Lee – Data Science Lifecycle with Apache Flink and Apache ZeppelinMoon soo Lee – Data Science Lifecycle with Apache Flink and Apache Zeppelin
Moon soo Lee – Data Science Lifecycle with Apache Flink and Apache Zeppelin
 
Continuous Testing using Shippable and Docker
Continuous Testing using Shippable and DockerContinuous Testing using Shippable and Docker
Continuous Testing using Shippable and Docker
 
gopaddle-meetup
gopaddle-meetupgopaddle-meetup
gopaddle-meetup
 
Unlock DevOps success with Atlassian - www.bdq.cloud
Unlock DevOps success with Atlassian  -  www.bdq.cloudUnlock DevOps success with Atlassian  -  www.bdq.cloud
Unlock DevOps success with Atlassian - www.bdq.cloud
 
Docker for Developers
Docker for DevelopersDocker for Developers
Docker for Developers
 
Mastering Deployments with Kubernetes & OpenShift: from Basic to Zero Downtim...
Mastering Deployments with Kubernetes & OpenShift: from Basic to Zero Downtim...Mastering Deployments with Kubernetes & OpenShift: from Basic to Zero Downtim...
Mastering Deployments with Kubernetes & OpenShift: from Basic to Zero Downtim...
 
Using PaaS for Continuous Delivery (Cloud Foundry Summit 2014)
Using PaaS for Continuous Delivery (Cloud Foundry Summit 2014)Using PaaS for Continuous Delivery (Cloud Foundry Summit 2014)
Using PaaS for Continuous Delivery (Cloud Foundry Summit 2014)
 
Rock Solid Deployment of Web Applications
Rock Solid Deployment of Web ApplicationsRock Solid Deployment of Web Applications
Rock Solid Deployment of Web Applications
 
Containers and Microservices for Realists
Containers and Microservices for RealistsContainers and Microservices for Realists
Containers and Microservices for Realists
 
Containers and microservices for realists
Containers and microservices for realistsContainers and microservices for realists
Containers and microservices for realists
 
CI/CD with Azure DevOps and Azure Databricks
CI/CD with Azure DevOps and Azure DatabricksCI/CD with Azure DevOps and Azure Databricks
CI/CD with Azure DevOps and Azure Databricks
 
Measure and Increase Developer Productivity with Help of Serverless at AWS Co...
Measure and Increase Developer Productivity with Help of Serverless at AWS Co...Measure and Increase Developer Productivity with Help of Serverless at AWS Co...
Measure and Increase Developer Productivity with Help of Serverless at AWS Co...
 

Último

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 

Último (20)

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 

VarnaConf - Blue/Green Deployments with Docker, haproxy and Consul

  • 1. Agile and DevOps The Problem The Solution The Demo Q/A Blue/Green Deployment with HAProxy and Consul Автоматизирано въвеждане в експлоатация на софтуер Владимир Витков 2016.08.13 / VarnaConf Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 2. Agile and DevOps The Problem The Solution The Demo Q/A Кой е пред вас • Владимир • Системен Администратор • Привърженик на FOSS но не и зеалот • Експериментатор • Относително приятен човек за разговор* Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 3. Agile and DevOps The Problem The Solution The Demo Q/A Census • Програмисти • Администратори • Performance • Agile • QA Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 4. Agile and DevOps The Problem The Solution The Demo Q/A Agile and DevOps Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 5. Agile and DevOps The Problem The Solution The Demo Q/A Какво е Agile • Идеология за разработка на софтуер • Това което се ползва • Нещо прекрасно • . . . но но съвсем • Периоди на разработка с функционалност • Много караници Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 6. Agile and DevOps The Problem The Solution The Demo Q/A Какво е DevOps • Смесица между администратор и разработчик • Много автоматизация • Управлени на инфраструктура • . . . като разработчик • Отново много караници Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 7. Agile and DevOps The Problem The Solution The Demo Q/A Защо Agile и DevOps • Agile - много версии (и често) • DevOps - мутираща инфраструктура • Сборът? - голямо натоварване ако няма синхрон • Бързо развитие на софтуера Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 8. Agile and DevOps The Problem The Solution The Demo Q/A The Problem Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 9. Agile and DevOps The Problem The Solution The Demo Q/A Приложението Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 10. Agile and DevOps The Problem The Solution The Demo Q/A The Solution Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 11. Agile and DevOps The Problem The Solution The Demo Q/A Архитектура Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 12. Agile and DevOps The Problem The Solution The Demo Q/A Компоненти • docker • haproxy • consul • registrator Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 13. Agile and DevOps The Problem The Solution The Demo Q/A Consul • Контейнер предоставящ key/value услуга • Съхранява описанието на приложението ни • Може да се клъстеризира Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 14. Agile and DevOps The Problem The Solution The Demo Q/A Consul - starting docker run --detach --restart=always --hostname consul-master --name consul-master gliderlabs/consul-server [-bootstrap] Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 15. Agile and DevOps The Problem The Solution The Demo Q/A Registrator • Динамично обновява Consul • Попълва параметри за контейнери Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 16. Agile and DevOps The Problem The Solution The Demo Q/A Registrator - starting docker run --detach --restart=always --name registrator --hostname registrator --net=host --volume=/var/run/docker.sock:/tmp/docker.sock gliderlabs/registrator:latest consul://localhost:85 Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 17. Agile and DevOps The Problem The Solution The Demo Q/A haproxy • контейнер базиран на alpine linux • haproxy • consul-template • nginx - holding pages Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 18. Agile and DevOps The Problem The Solution The Demo Q/A haproxy - entrypoint frontend http-in bind *:80 # Generated automatically by consul-template # blue if app-web and blue in service/app/color # green if app-web and green in service/app/color # else holding use_backend app_{{with $cl:=key "service/app/color" default_backend app_holding Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 19. Agile and DevOps The Problem The Solution The Demo Q/A haproxy - holding backend web_holding server sink 127.0.0.1:59599 Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 20. Agile and DevOps The Problem The Solution The Demo Q/A haproxy - color listen web_green bind *:18000 balance roundrobin {{range $i,$s:=service "web"}} {{if .Tags | contains "green"}} server {{$i}}{{.Node}}green {{.Address}}:{{.Port}} {{end}} {{end}} server sink 127.0.0.1:56569 backup Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 21. Agile and DevOps The Problem The Solution The Demo Q/A haproxy - starting docker run --detach --restart=always --env=’CONSUL_CONNECT=172.17.42.1:8500’ --hostname lb-prod --name lb-prod zeridon/haproxy-consul Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 22. Agile and DevOps The Problem The Solution The Demo Q/A The Demo Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 23. Agile and DevOps The Problem The Solution The Demo Q/A Q/A Blue/Green Deployment with HAProxy and Consul Владимир Витков
  • 24. Agile and DevOps The Problem The Solution The Demo Q/A Контакти • Владимир Витков • vvitkov@linux-bg.org • https://www.getoto.net/zeridon • https://github.com/zeridon • http://www.slideshare.net/zeridon Blue/Green Deployment with HAProxy and Consul Владимир Витков