SlideShare uma empresa Scribd logo
1 de 24
Baixar para ler offline
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 Владимир Витков

Mais conteúdo relacionado

Mais procurados

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
 

Mais procurados (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
 

Destaque

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.
 

Destaque (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
 

Semelhante 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
 

Semelhante 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

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
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
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
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
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 

Último (20)

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
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
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
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
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 

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 Владимир Витков