SlideShare una empresa de Scribd logo
1 de 62
Descargar para leer sin conexión
Ignacio Sánchez Ginés
@drhelius
Ramón Román Nissen
@rromannissen
GRACIAS
m4.2xlarge
m4.large (x2)
m4.large
t2.micro
Nodo 1
Registry
·
·
·
Nodo 4
Master
¿Qué es DevOps?,
dices mientras clavas
en mi pupila tu pupila azul.
¿Qué es DevOps?
¿Y tú me lo preguntas?
DevOps... eres tú.
Gustavo Adolfo Bécquer - Sysadmin
@petecheslock
VAYAMOS
POR PARTES
Herbert Von Karajan
Teletraan
https://github.com/pinterest/
https://github.com/pinterest/
Entry
Point
Indexer
Service
Builder
Image
Builder
Deployer Notifier
Indexer Deployer
Entry
Point
Indexer
Service
Builder
Image
Builder
Deployer Notifier
Indexer Deployer
DEVELOPMENT KIT
ID servicio
Hostname
Path .CSV
Tokenización
SERVER
bootstrap
ssh / scp
DEVELOPMENT KIT
SERVER
bootstrap
ssh / scp
Registro
nodo
DEVELOPMENT KIT
DEVELOPMENT KIT
runlist
SERVER
input {
file {
type => "catalogue"
path => '<%= node['codemotion-
logstash-loader']['input_path'] %>'
start_position => 'beginning'
sincedb_path => "/dev/null"
}
}
filter {
csv {
columns => ["data"]
separator => ";"
}
}
output {
elasticsearch {
host => "<%= node['codemotion-logstash-
loader']['es_host'] %>"
protocol => "http"
port => "<%= node['codemotion-logstash-
loader']['es_port'] %>"
index => "<%= node['codemotion-logstash-
loader']['es_index'] %>"
template => "/tmp/logstashloader/csv-
logstash.json"
template_name => "csv-logstash"
template_overwrite => true
flush_size => 100
}
}
{
"template" : "csv-logstash",
"settings" : { "index.refresh_interval" : "15s" },
"mappings" : {
"catalogue" : {
"_all" : { "enabled" : false },
"dynamic_templates" : [{
"string_fields" : {
"match" : "*",
"match_mapping_type" : "string",
"mapping" : { "type" : "string", "index" :
"not_analyzed" }
}
}],
"properties" : {
"data":{
"type" : "string",
"analyzer": "<%= node['codemotion-logstash-
loader']['analyzer'] %>"
}
}
}
}
}
Entry
Point
Indexer
Service
Builder
Image
Builder
Deployer Notifier
Indexer Deployer
Feign Java API
Service Builder
Aplicar Arquetipo
Construir Proyecto
Desplegar Artefacto
Entry
Point
Indexer
Service
Builder
Image
Builder
Deployer Notifier
Indexer Deployer
Image Builder
Parametrizar
Dockerfile
Build Dockerfile
Push Docker Image
Jenkins Slave
FROM java:8
ARG SERVICE_ID
VOLUME /tmp
EXPOSE 8080
ADD
http://a1.codemotion.atsistemas.com/repository/mave
n-releases/com/atsistemas/codemotion/indexed-
service-generated-${SERVICE_ID}/1.0/indexed-
service-generated-${SERVICE_ID}-1.0.jar /indexed-
service.jar
ENV SERVICE_ID=${SERVICE_ID}
RUN bash -c 'touch /indexed-service.jar'
CMD java –Xmx32m –Xss256k -
Djava.security.egd=file:/dev/./urandom
-jar /indexed-service.jar
Entry
Point
Indexer
Service
Builder
Image
Builder
Deployer Notifier
Indexer Deployer
Deployer
Pull Docker Image
Run Docker Image
Reconfiguración NGINX
upstream indexed-service-xxxxxx {
least_conn;
{{range service "indexed-service-xxxxxx"}}server
{{.Address}}:{{.Port}} max_fails=3 fail_timeout=60 weight=1;
{{else}}server 127.0.0.1:65535; # force a 502{{end}}
}
server {
listen 80 default_server;
location /xxxxxx/ {
proxy_pass http://indexed-service-xxxxxx/;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
docker -H :2375 pull 10.0.0.223:9022/ indexed-service-
xxxxxx
docker -H :2375 run -d -P –e reschedule:on-node-failure
10.0.0.223:9022/indexed-service-xxxxxx
Now witness the
firepower of this fully
ARMED and
OPERATIONAL Battle
Station!
The Emperor – Project Manager
Servicio:
Consulta:
¡GRACIAS!
¿ALGUNA PREGUNTA?
Ignacio Sánchez Ginés
@drhelius
isanchez.gines@atsistemas.com
Ramón Román Nissen
@rromannissen
rroman@atsistemas.com

Más contenido relacionado

La actualidad más candente

Testing - Selenium? Rich-Clients? Containers?
Testing - Selenium? Rich-Clients? Containers?Testing - Selenium? Rich-Clients? Containers?
Testing - Selenium? Rich-Clients? Containers?
Tobias Schneck
 

La actualidad más candente (20)

Developer Journey at Zalando - Idea to Production with Containers in the Clou...
Developer Journey at Zalando - Idea to Production with Containers in the Clou...Developer Journey at Zalando - Idea to Production with Containers in the Clou...
Developer Journey at Zalando - Idea to Production with Containers in the Clou...
 
Selenium meetup docker
Selenium meetup   docker Selenium meetup   docker
Selenium meetup docker
 
CocoaHeads Rennes #13 : CocoaPods
CocoaHeads Rennes #13 : CocoaPodsCocoaHeads Rennes #13 : CocoaPods
CocoaHeads Rennes #13 : CocoaPods
 
Container and microservices: a love story
Container and microservices: a love storyContainer and microservices: a love story
Container and microservices: a love story
 
Deploying ASP.Net Core apps in Docker Containers
Deploying ASP.Net Core apps in Docker ContainersDeploying ASP.Net Core apps in Docker Containers
Deploying ASP.Net Core apps in Docker Containers
 
Testing - Selenium? Rich-Clients? Containers?
Testing - Selenium? Rich-Clients? Containers?Testing - Selenium? Rich-Clients? Containers?
Testing - Selenium? Rich-Clients? Containers?
 
Unified Infra for Dev/Test and Jenkins Integration Testing (Docker/Vagrant)
Unified Infra for Dev/Test and Jenkins Integration Testing (Docker/Vagrant)Unified Infra for Dev/Test and Jenkins Integration Testing (Docker/Vagrant)
Unified Infra for Dev/Test and Jenkins Integration Testing (Docker/Vagrant)
 
GDGSCL - Docker a jeho provoz v Heroku a AWS
GDGSCL - Docker a jeho provoz v Heroku a AWSGDGSCL - Docker a jeho provoz v Heroku a AWS
GDGSCL - Docker a jeho provoz v Heroku a AWS
 
Drone CI - Container native continuous Integration / Delivery
Drone CI - Container native continuous Integration / DeliveryDrone CI - Container native continuous Integration / Delivery
Drone CI - Container native continuous Integration / Delivery
 
Drone CI
Drone CIDrone CI
Drone CI
 
Automate App Container Delivery with CI/CD and DevOps
Automate App Container Delivery with CI/CD and DevOpsAutomate App Container Delivery with CI/CD and DevOps
Automate App Container Delivery with CI/CD and DevOps
 
Selenium Grid & Docker - budowa środowiska do testów przeglądarkowych
Selenium Grid & Docker - budowa środowiska do testów przeglądarkowychSelenium Grid & Docker - budowa środowiska do testów przeglądarkowych
Selenium Grid & Docker - budowa środowiska do testów przeglądarkowych
 
CI/CD with Docker on AWS
CI/CD with Docker on AWSCI/CD with Docker on AWS
CI/CD with Docker on AWS
 
High Productivity Web Development Workflow
High Productivity Web Development WorkflowHigh Productivity Web Development Workflow
High Productivity Web Development Workflow
 
Drone 1.0 Feature
Drone 1.0 FeatureDrone 1.0 Feature
Drone 1.0 Feature
 
Docker - modern platform for developement and operations
Docker - modern platform for developement and operationsDocker - modern platform for developement and operations
Docker - modern platform for developement and operations
 
Docker for a .NET web developer
Docker for a .NET web developerDocker for a .NET web developer
Docker for a .NET web developer
 
Test Automation Infrastructure with Containers
Test Automation Infrastructure with ContainersTest Automation Infrastructure with Containers
Test Automation Infrastructure with Containers
 
JCConf 2015 workshop 動手玩 Java 專案建置工具
JCConf 2015 workshop 動手玩 Java 專案建置工具JCConf 2015 workshop 動手玩 Java 專案建置工具
JCConf 2015 workshop 動手玩 Java 專案建置工具
 
Docker
DockerDocker
Docker
 

Similar a DevOps Mashup: Special Champion Edition - Madrid DevOps 2016

Practical introduction to dev ops with chef
Practical introduction to dev ops with chefPractical introduction to dev ops with chef
Practical introduction to dev ops with chef
LeanDog
 

Similar a DevOps Mashup: Special Champion Edition - Madrid DevOps 2016 (20)

TIAD - DYI: A simple orchestrator built step by step
TIAD - DYI: A simple orchestrator built step by stepTIAD - DYI: A simple orchestrator built step by step
TIAD - DYI: A simple orchestrator built step by step
 
DevOOPS: Attacks and Defenses for DevOps Toolchains
DevOOPS: Attacks and Defenses for DevOps ToolchainsDevOOPS: Attacks and Defenses for DevOps Toolchains
DevOOPS: Attacks and Defenses for DevOps Toolchains
 
Adopt DevOps philosophy on your Symfony projects (Symfony Live 2011)
Adopt DevOps philosophy on your Symfony projects (Symfony Live 2011)Adopt DevOps philosophy on your Symfony projects (Symfony Live 2011)
Adopt DevOps philosophy on your Symfony projects (Symfony Live 2011)
 
Azure Bootcamp 2016 - Docker Orchestration on Azure with Rancher
Azure Bootcamp 2016 - Docker Orchestration on Azure with RancherAzure Bootcamp 2016 - Docker Orchestration on Azure with Rancher
Azure Bootcamp 2016 - Docker Orchestration on Azure with Rancher
 
(C)NodeJS
(C)NodeJS(C)NodeJS
(C)NodeJS
 
Developer-Friendly CI / CD for Kubernetes
Developer-Friendly CI / CD for KubernetesDeveloper-Friendly CI / CD for Kubernetes
Developer-Friendly CI / CD for Kubernetes
 
2019 11-bgphp
2019 11-bgphp2019 11-bgphp
2019 11-bgphp
 
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
 
Baking a Microservice PI(e)
Baking a Microservice PI(e)Baking a Microservice PI(e)
Baking a Microservice PI(e)
 
Getting up and running with Docker
Getting up and running with DockerGetting up and running with Docker
Getting up and running with Docker
 
Better Operations into the Cloud
Better Operations  into the CloudBetter Operations  into the Cloud
Better Operations into the Cloud
 
Practical introduction to dev ops with chef
Practical introduction to dev ops with chefPractical introduction to dev ops with chef
Practical introduction to dev ops with chef
 
Attacking Pipelines--Security meets Continuous Delivery
Attacking Pipelines--Security meets Continuous DeliveryAttacking Pipelines--Security meets Continuous Delivery
Attacking Pipelines--Security meets Continuous Delivery
 
Microservices Application Tracing Standards and Simulators - Adrians at OSCON
Microservices Application Tracing Standards and Simulators - Adrians at OSCONMicroservices Application Tracing Standards and Simulators - Adrians at OSCON
Microservices Application Tracing Standards and Simulators - Adrians at OSCON
 
DevNet Associate : Python introduction
DevNet Associate : Python introductionDevNet Associate : Python introduction
DevNet Associate : Python introduction
 
Scala at Netflix
Scala at NetflixScala at Netflix
Scala at Netflix
 
There and Back Again (My DevOps journey) - DevOps Days Copenhagen 2018
There and Back Again (My DevOps journey) - DevOps Days Copenhagen 2018There and Back Again (My DevOps journey) - DevOps Days Copenhagen 2018
There and Back Again (My DevOps journey) - DevOps Days Copenhagen 2018
 
Container (Docker) Orchestration Tools
Container (Docker) Orchestration ToolsContainer (Docker) Orchestration Tools
Container (Docker) Orchestration Tools
 
Tech Talk: DevOps at LeanIX @ Startup Camp Berlin
Tech Talk: DevOps at LeanIX @ Startup Camp BerlinTech Talk: DevOps at LeanIX @ Startup Camp Berlin
Tech Talk: DevOps at LeanIX @ Startup Camp Berlin
 
DevOps in PHP environment
DevOps in PHP environment DevOps in PHP environment
DevOps in PHP environment
 

Último

Jax, FL Admin Community Group 05.14.2024 Combined Deck
Jax, FL Admin Community Group 05.14.2024 Combined DeckJax, FL Admin Community Group 05.14.2024 Combined Deck
Jax, FL Admin Community Group 05.14.2024 Combined Deck
Marc Lester
 

Último (20)

The mythical technical debt. (Brooke, please, forgive me)
The mythical technical debt. (Brooke, please, forgive me)The mythical technical debt. (Brooke, please, forgive me)
The mythical technical debt. (Brooke, please, forgive me)
 
KLARNA - Language Models and Knowledge Graphs: A Systems Approach
KLARNA -  Language Models and Knowledge Graphs: A Systems ApproachKLARNA -  Language Models and Knowledge Graphs: A Systems Approach
KLARNA - Language Models and Knowledge Graphs: A Systems Approach
 
OpenChain Webinar: AboutCode and Beyond - End-to-End SCA
OpenChain Webinar: AboutCode and Beyond - End-to-End SCAOpenChain Webinar: AboutCode and Beyond - End-to-End SCA
OpenChain Webinar: AboutCode and Beyond - End-to-End SCA
 
Community is Just as Important as Code by Andrea Goulet
Community is Just as Important as Code by Andrea GouletCommunity is Just as Important as Code by Andrea Goulet
Community is Just as Important as Code by Andrea Goulet
 
Modern binary build systems - PyCon 2024
Modern binary build systems - PyCon 2024Modern binary build systems - PyCon 2024
Modern binary build systems - PyCon 2024
 
Workforce Efficiency with Employee Time Tracking Software.pdf
Workforce Efficiency with Employee Time Tracking Software.pdfWorkforce Efficiency with Employee Time Tracking Software.pdf
Workforce Efficiency with Employee Time Tracking Software.pdf
 
What is an API Development- Definition, Types, Specifications, Documentation.pdf
What is an API Development- Definition, Types, Specifications, Documentation.pdfWhat is an API Development- Definition, Types, Specifications, Documentation.pdf
What is an API Development- Definition, Types, Specifications, Documentation.pdf
 
Weeding your micro service landscape.pdf
Weeding your micro service landscape.pdfWeeding your micro service landscape.pdf
Weeding your micro service landscape.pdf
 
Top Mobile App Development Companies 2024
Top Mobile App Development Companies 2024Top Mobile App Development Companies 2024
Top Mobile App Development Companies 2024
 
Sourcing Success - How to Find a Clothing Manufacturer
Sourcing Success - How to Find a Clothing ManufacturerSourcing Success - How to Find a Clothing Manufacturer
Sourcing Success - How to Find a Clothing Manufacturer
 
The Strategic Impact of Buying vs Building in Test Automation
The Strategic Impact of Buying vs Building in Test AutomationThe Strategic Impact of Buying vs Building in Test Automation
The Strategic Impact of Buying vs Building in Test Automation
 
how-to-download-files-safely-from-the-internet.pdf
how-to-download-files-safely-from-the-internet.pdfhow-to-download-files-safely-from-the-internet.pdf
how-to-download-files-safely-from-the-internet.pdf
 
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdfMicrosoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
 
Jax, FL Admin Community Group 05.14.2024 Combined Deck
Jax, FL Admin Community Group 05.14.2024 Combined DeckJax, FL Admin Community Group 05.14.2024 Combined Deck
Jax, FL Admin Community Group 05.14.2024 Combined Deck
 
Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024
Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024
Wired_2.0_CREATE YOUR ULTIMATE LEARNING ENVIRONMENT_JCON_16052024
 
The Impact of PLM Software on Fashion Production
The Impact of PLM Software on Fashion ProductionThe Impact of PLM Software on Fashion Production
The Impact of PLM Software on Fashion Production
 
Odoo vs Shopify: Why Odoo is Best for Ecommerce Website Builder in 2024
Odoo vs Shopify: Why Odoo is Best for Ecommerce Website Builder in 2024Odoo vs Shopify: Why Odoo is Best for Ecommerce Website Builder in 2024
Odoo vs Shopify: Why Odoo is Best for Ecommerce Website Builder in 2024
 
Automate your OpenSIPS config tests - OpenSIPS Summit 2024
Automate your OpenSIPS config tests - OpenSIPS Summit 2024Automate your OpenSIPS config tests - OpenSIPS Summit 2024
Automate your OpenSIPS config tests - OpenSIPS Summit 2024
 
Malaysia E-Invoice digital signature docpptx
Malaysia E-Invoice digital signature docpptxMalaysia E-Invoice digital signature docpptx
Malaysia E-Invoice digital signature docpptx
 
A Deep Dive into Secure Product Development Frameworks.pdf
A Deep Dive into Secure Product Development Frameworks.pdfA Deep Dive into Secure Product Development Frameworks.pdf
A Deep Dive into Secure Product Development Frameworks.pdf
 

DevOps Mashup: Special Champion Edition - Madrid DevOps 2016