SlideShare a Scribd company logo
Install
Concourse  CI
with  BOSH
Toshiaki  Maki  (@making)
Sr.  Solutions  Architect  @Pivotal
2016-‐‑‒05-‐‑‒19
Concourse  CI  Tokyo  Meetup
Who  am  I  ?
•Toshiaki  Maki  (@making)
•https://blog.ik.am
•Sr.  Solutions  Architect
•Spring  Framework  enthusiast
Spring
Framework
徹底⼊入⾨門
(Coming  
Soon?)
Perfect
Java  EE
(Coming  
Soon?)
Install Concourse CI with BOSH
How  to  Install
•Vagrant  Image
•Executable  Binaries
•BOSH  Release
https://concourse.ci/installing.html
Easy
Hard Production	
  Ready
Local	
  Dev
Vagrant
$  vagrant  init concourse/lite
$  vagrant  up
Vagrant
BOSH
•Powerful  Provisioning  Tool  to  deploy  distributed  
system
• Monitor  /  Health  Check
• Rolling  Updates
• Networking
• Storage  Management
• VM  Provisioning
• IaaS Agnostic
• ...
Do  we  really  need  BOSH?
"If  you're  not  yet  familiar  
with  BOSH,  learning  it  will  be  
a  bit  of  an  investment,  but  it
should  pay  off  in  spades"
http://concourse.ci/clusters-‐‑‒with-‐‑‒bosh.html
BOSH  components
https://bosh.io/docs/bosh-‐‑‒components.html
How  to  install  with  BOSH
1. Set  up  IaaS
2. Install  BOSH  Director  using  bosh-‐‑‒init
3. Upload  Stemcell
4. Upload  Releases
5. Create  manifest  file
6. Deploy  the  system  using  manifest  file
•Deploy  Concourse  to  AWS
•Deploy  Concourse  to  Azure
Manifest  samples
https://github.com/making/concouse-‐‑‒ci-‐‑‒manifest-‐‑‒samples
Deploy  Concourse  to  AWS
Prepare  VPC
Install Concourse CI with BOSH
Install Concourse CI with BOSH
Install Concourse CI with BOSH
VPC  (10.0.0.0/16)
public(10.0.0.0/24) private(10.0.1.0/24)
NATEIP
Install  BOSH  Director
Create  Keypair
Security  Group
Manifest  for  bosh-‐‑‒init
• https://bosh.io/docs/init-‐‑‒aws.html#create-‐‑‒manifest
Copy  &  Paste
to  bosh.yml
Replace  placeholders
Name Value
ELASTIC-‐‑‒IP <Your  New  EIP  for  Director> there are  3  places  to  
replace
SUBNET-‐‑‒ID subnet-‐‑‒xxxxxxxx public subnet
AVAILABILITY-‐‑‒ZONE ap-‐‑‒northeast-‐‑‒1a
ACCESS-‐‑‒KEY-‐‑‒ID xxxxxxxx
SECRET-‐‑‒ACCESS-‐‑‒KEY xxxxxxxx
REGION ap-‐‑‒northeast-‐‑‒1
Deploy
Download  from  https://bosh.io/docs/install-‐‑‒bosh-‐‑‒init.html
$ bosh-init deploy bosh.yml
After  20min
VPC  (10.0.0.0/16)
public(10.0.0.0/24) private(10.0.1.0/24)
NAT
BOSH
Director
EIP
EIP
$ sudo gem install bosh_cli --no-ri --no-rdoc
$ bosh target 52.196.159.101
Target set to `my-bosh'
Your username: admin
Enter password:
Logged in as `admin'
IaaS Specific  Configuration
az: ...
vm_types: ...
disk_types: ...
networks: ...
compilation: ...
aws.yml
IaaS Specific  Configuration
azs:
- name: z1
cloud_properties:
{availability_zone: ap-northeast-1a}
aws.yml
IaaS Specific  Configuration
vm_types:
- name: web
cloud_properties:
instance_type: t2.micro
ephemeral_disk: {size: 3000, type: gp2}
security_groups: [web, bosh]
- name: database
cloud_properties: ...
aws.yml
IaaS Specific  Configuration
disk_type:
- name: database
disk_size: 50_000
cloud_properties: {type: gp2}
aws.yml
Set  Iaas Config
$ bosh update cloud-config aws.yml
Acting as user 'admin' on 'my-bosh'
Successfully updated cloud config
Install Concourse CI with BOSH
Upload  Stemcell
$ bosh upload stemcell
https://bosh.io/d/stemcells/bosh-aws-xen-
hvm-ubuntu-trusty-go_agent?v=3232.3
Upload  Releases  (garden,  
concourse)
$ bosh upload release
https://bosh.io/d/github.com/cloudfoundry-
incubator/garden-linux-release?v=0.337.0
$ bosh upload release
https://bosh.io/d/github.com/concourse/con
course?v=1.2.0
name: concourse
director_uuid: ...
releases: ...
stemcells: ...
instance_groups: ...
update: ...
Create  manifest  for  Concourse
concourse.yml
Create  manifest  for  Concourse
instance_groups: ...
- name: web
...
- name: db
...
- name: worker
...
concourse.yml
Deploy  Concourse  CI
$ bosh deployment concourse.yml
$ bosh -n deploy
Install Concourse CI with BOSH
VPC  (10.0.0.0/16)
public(10.0.0.0/24) private(10.0.1.0/24)
NAT
BOSH
Director
EIP
EIP
WebEIP
Worker
DB
Install Concourse CI with BOSH
Scale  out
- name: worker
instances: 3
vm_type: worker
concourse.yml
$ bosh -n deploy
Install Concourse CI with BOSH
VPC  (10.0.0.0/16)
public(10.0.0.0/24) private(10.0.1.0/24)
NAT
BOSH
Director
EIP
EIP
WebEIP
WorkerWorkerWorker
DB
Health  Check
Health  Check
Version  up
$ bosh upload release
https://bosh.io/d/github.com/concourse/con
course?v=1.3.0
$ bosh deploy
Deploy  Concourse  to  Azure
Use  template
https://azure.microsoft.com/en-‐‑‒us/documentation/templates/bosh-‐‑‒setup/
Install Concourse CI with BOSH
Install Concourse CI with BOSH
After  1  hour  ...
Already  prepared👍
Install Concourse CI with BOSH
Install Concourse CI with BOSH
Install Concourse CI with BOSH
$ ssh bosh@40.115.251.81
bosh@bosh:~$ bosh target
Current target is https://10.0.0.4:25555 (bosh)
IaaS Specific  Configuration
az: ...
vm_types: ...
disk_types: ...
networks: ...
compilation: ...
azure.yml
IaaS Specific  Configuration
vm_types:
- name: web
cloud_properties:
instance_type: Standard_D1
- name: database
cloud_properties: ...
azure.yml
Set  Iaas Config
bosh@bosh:~$ bosh update cloud-config azure.yml
Acting as user 'admin' on 'bosh'
Successfully updated cloud config
Install Concourse CI with BOSH
Upload  Stemcell
$ bosh upload stemcell
https://bosh.io/d/stemcells/bosh-azure-
hyperv-ubuntu-trusty-go_agent?v=3232.4
Upload  Releases  (garden,  
concourse)
$ bosh upload release
https://bosh.io/d/github.com/cloudfoundry-
incubator/garden-linux-release?v=0.337.0
$ bosh upload release
https://bosh.io/d/github.com/concourse/con
course?v=1.2.0
Deploy  Concourse  CI
$ bosh deployment concourse.yml
$ bosh -n deploy
Manifest  file  is  as  
same  as  AWS's  
Install Concourse CI with BOSH
Install Concourse CI with BOSH
Install Concourse CI with BOSH
Install Concourse CI with BOSH
AWS Azure
IaaS Setup Create
VPC, NAT,  Keypair,  SG,  EIP
Use  "BOSH  Setup"  
Template
(other  than  SG)Director • Create  Manifestfile (bosh.yml)
• bosh-‐‑‒init
Cloud Config • Create  IaaS config (aws.yml)
• bosh  update  cloud-‐‑‒cofig
• Create  IaaS config
(azure.yml)
• bosh  update  cloud-‐‑‒cofig
Manifest  for  
Concourse
Create manifest  file  (IaaS Independent)
Stemcell Upload  for  AWS  Xen Upload for  Azure  Hyper-‐‑‒V
Release Upload
• garden-‐‑‒linux
• concourse
Deploy bosh  deploy
Installation  Article  (Japanese)
• AWS https://blog.ik.am/entries/383
• Azure  https://blog.ik.am/entries/384
Cloud  Foundry  Tokyo  Meetup #2
http://www.meetup.com/ja-‐‑‒JP/Cloud-‐‑‒Foundry-‐‑‒Tokyo-‐‑‒Meetup/events/230285366/
Gwenn
(@The_̲Shinji62)
will  talk  about  
BOSH  2.0

More Related Content

PDF
Introduction to Concourse CI #渋谷Java
PDF
Concourse CI Meetup Demo
PDF
Auto-scaled Concourse CI on AWS w/o BOSH
PDF
Concourse updates
PDF
ConcourseCi overview
PDF
Lessons Learned: Using Concourse In Production
PDF
Bosh 2-0-reloaded
PDF
Spring Cloud Servicesの紹介 #pcf_tokyo
Introduction to Concourse CI #渋谷Java
Concourse CI Meetup Demo
Auto-scaled Concourse CI on AWS w/o BOSH
Concourse updates
ConcourseCi overview
Lessons Learned: Using Concourse In Production
Bosh 2-0-reloaded
Spring Cloud Servicesの紹介 #pcf_tokyo

What's hot (20)

PDF
ConcourseCi Dockerimage
PDF
Short Lived Tasks in Cloud Foundry #cfdtokyo
PDF
Spring Boot 1.3 News #渋谷Java
PDF
[表示が崩れる場合ダウンロードしてご覧ください] 2018年のDocker・Moby
PDF
Kubernetes x PaaS – コンテナアプリケーションのNoOpsへの挑戦
PDF
Route service-pcf-techmeetup
PDF
Cloud Foundry Meetup Tokyo #1 Route service
PDF
CI/CD Using Ansible and Jenkins for Infrastructure
PDF
GlassFish Embedded API
PDF
Ansible Introduction
PDF
Why PCF is the best platform for Spring Boot
PPTX
An Introduction into Bosh | anynines
PDF
Continuous Delivery for Microservice Architectures with Concourse & Cloud Fou...
PDF
Managing your Docker image continuously with Concourse CI
PDF
Extend and build on Kubernetes
PDF
iOS Parallel Automation: run faster than fast — Viktar Karanevich — SeleniumC...
PDF
Using JHipster for generating Angular/Spring Boot apps
PDF
DevOps - Infrastructure as Code by Andre Marcelo-Tanner
PDF
Modernizing .NET Apps with Docker
PDF
Ansible Intro - June 2015 / Ansible Barcelona User Group
ConcourseCi Dockerimage
Short Lived Tasks in Cloud Foundry #cfdtokyo
Spring Boot 1.3 News #渋谷Java
[表示が崩れる場合ダウンロードしてご覧ください] 2018年のDocker・Moby
Kubernetes x PaaS – コンテナアプリケーションのNoOpsへの挑戦
Route service-pcf-techmeetup
Cloud Foundry Meetup Tokyo #1 Route service
CI/CD Using Ansible and Jenkins for Infrastructure
GlassFish Embedded API
Ansible Introduction
Why PCF is the best platform for Spring Boot
An Introduction into Bosh | anynines
Continuous Delivery for Microservice Architectures with Concourse & Cloud Fou...
Managing your Docker image continuously with Concourse CI
Extend and build on Kubernetes
iOS Parallel Automation: run faster than fast — Viktar Karanevich — SeleniumC...
Using JHipster for generating Angular/Spring Boot apps
DevOps - Infrastructure as Code by Andre Marcelo-Tanner
Modernizing .NET Apps with Docker
Ansible Intro - June 2015 / Ansible Barcelona User Group
Ad

Viewers also liked (20)

PDF
Cloud Foundy Java Client V 2.0 #cf_tokyo
PDF
Implement Service Broker with Spring Boot #cf_tokyo
PDF
Team Support in Concourse CI 2.0 #concourse_tokyo
PDF
#jjug_ccc #ccc_gh5 What's new in Spring Framework 4.3 / Boot 1.4 + Pivotal's ...
PDF
Spring ❤️ Kotlin #jjug
PDF
Consumer Driven Contractsで REST API/マイクロサービスをテスト #m3tech
PPTX
Spring Cloud Netflixを使おう #jsug
PDF
Introduction to Cloud Foundry #JJUG
PDF
Reactive Webアプリケーション - そしてSpring 5へ #jjug_ccc #ccc_ef3
PDF
Event Driven Microservices with Spring Cloud Stream #jjug_ccc #ccc_ab3
PDF
Data Microservices with Spring Cloud Stream, Task, and Data Flow #jsug #spri...
PDF
Concourse and Database
PDF
今すぐ始めるCloud Foundry #hackt #hackt_k
PDF
From Zero to Hero with REST and OAuth2 #jjug
PDF
Bosh - Configuring Services
PDF
実例で学ぶ、明日から使えるSpring Boot Tips #jsug
PPTX
How to use Concourse CI to deliver BOSH releases
PDF
BOSH deploys distributed systems, and Diego runs any containers
PPTX
Bosh - Twenty Years of Deployment Lessons in One Tool
PDF
Deploy Cloud Foundry using bosh_bootstrap
Cloud Foundy Java Client V 2.0 #cf_tokyo
Implement Service Broker with Spring Boot #cf_tokyo
Team Support in Concourse CI 2.0 #concourse_tokyo
#jjug_ccc #ccc_gh5 What's new in Spring Framework 4.3 / Boot 1.4 + Pivotal's ...
Spring ❤️ Kotlin #jjug
Consumer Driven Contractsで REST API/マイクロサービスをテスト #m3tech
Spring Cloud Netflixを使おう #jsug
Introduction to Cloud Foundry #JJUG
Reactive Webアプリケーション - そしてSpring 5へ #jjug_ccc #ccc_ef3
Event Driven Microservices with Spring Cloud Stream #jjug_ccc #ccc_ab3
Data Microservices with Spring Cloud Stream, Task, and Data Flow #jsug #spri...
Concourse and Database
今すぐ始めるCloud Foundry #hackt #hackt_k
From Zero to Hero with REST and OAuth2 #jjug
Bosh - Configuring Services
実例で学ぶ、明日から使えるSpring Boot Tips #jsug
How to use Concourse CI to deliver BOSH releases
BOSH deploys distributed systems, and Diego runs any containers
Bosh - Twenty Years of Deployment Lessons in One Tool
Deploy Cloud Foundry using bosh_bootstrap
Ad

More from Toshiaki Maki (13)

PDF
From Spring Boot 2.2 to Spring Boot 2.3 #jsug
PDF
Concourse x Spinnaker #concourse_tokyo
PDF
Serverless with Spring Cloud Function, Knative and riff #SpringOneTour #s1t
PDF
決済システムの内製化への旅 - SpringとPCFで作るクラウドネイティブなシステム開発 #jsug #sf_h1
PDF
Spring Boot Actuator 2.0 & Micrometer #jjug_ccc #ccc_a1
PDF
Spring Boot Actuator 2.0 & Micrometer
PDF
Open Service Broker APIとKubernetes Service Catalog #k8sjp
PDF
Spring Cloud Function & Project riff #jsug
PDF
Introduction to Spring WebFlux #jsug #sf_a1
PDF
BOSH / CF Deployment in modern ways #cf_tokyo
PDF
Zipkin Components #zipkin_jp
PPTX
マイクロサービスに必要な技術要素はすべてSpring Cloudにある #DO07
PDF
Spring Framework 5.0による Reactive Web Application #JavaDayTokyo
From Spring Boot 2.2 to Spring Boot 2.3 #jsug
Concourse x Spinnaker #concourse_tokyo
Serverless with Spring Cloud Function, Knative and riff #SpringOneTour #s1t
決済システムの内製化への旅 - SpringとPCFで作るクラウドネイティブなシステム開発 #jsug #sf_h1
Spring Boot Actuator 2.0 & Micrometer #jjug_ccc #ccc_a1
Spring Boot Actuator 2.0 & Micrometer
Open Service Broker APIとKubernetes Service Catalog #k8sjp
Spring Cloud Function & Project riff #jsug
Introduction to Spring WebFlux #jsug #sf_a1
BOSH / CF Deployment in modern ways #cf_tokyo
Zipkin Components #zipkin_jp
マイクロサービスに必要な技術要素はすべてSpring Cloudにある #DO07
Spring Framework 5.0による Reactive Web Application #JavaDayTokyo

Recently uploaded (20)

PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Encapsulation theory and applications.pdf
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PPTX
Big Data Technologies - Introduction.pptx
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Machine learning based COVID-19 study performance prediction
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
KodekX | Application Modernization Development
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
NewMind AI Weekly Chronicles - August'25 Week I
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Unlocking AI with Model Context Protocol (MCP)
Spectral efficient network and resource selection model in 5G networks
Advanced methodologies resolving dimensionality complications for autism neur...
Digital-Transformation-Roadmap-for-Companies.pptx
Encapsulation theory and applications.pdf
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Big Data Technologies - Introduction.pptx
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Machine learning based COVID-19 study performance prediction
Building Integrated photovoltaic BIPV_UPV.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Review of recent advances in non-invasive hemoglobin estimation
KodekX | Application Modernization Development
20250228 LYD VKU AI Blended-Learning.pptx
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Understanding_Digital_Forensics_Presentation.pptx
Mobile App Security Testing_ A Comprehensive Guide.pdf
NewMind AI Weekly Chronicles - August'25 Week I

Install Concourse CI with BOSH