Bosh安装Concourse持续部署工具

如何使用Bosh部署应用程序(一)

更新时间:2018年04月23日

安装bosh环境

下载Bosh二进制安装程序

点击下载

安装virtulbox

wget https://download.virtualbox.org/virtualbox/5.2.10/virtualbox-5.2_5.2.10-122088~Ubuntu~trusty_amd64.deb
dpkg -i virtualbox-5.2_5.2.10-122088~Ubuntu~trusty_amd64.deb

安装一些依赖程序包

sudo apt-get install -y build-essential zlibc zlib1g-dev ruby ruby-dev openssl libxslt-dev libxml2-dev libssl-dev libreadline6 libreadline6-dev libyaml-dev libsqlite3-dev sqlite3

推荐使用bosh-deployment来引导Director

$ git clone https://github.com/cloudfoundry/bosh-deployment ~/workspace/bosh-deployment
$ mkdir -p ~/deployments/vbox
$ cd ~/deployments/vbox
$ bosh create-env ~/workspace/bosh-deployment/bosh.yml   --state ./state.json   -o ~/workspace/bosh-deployment/virtualbox/cpi.yml   -o ~/workspace/bosh-deployment/virtualbox/outbound-network.yml   -o ~/workspace/bosh-deployment/bosh-lite.yml   -o ~/workspace/bosh-deployment/bosh-lite-runc.yml   -o ~/workspace/bosh-deployment/jumpbox-user.yml   --vars-store ./creds.yml   -v director_name="bosh-lite"   -v internal_ip=192.168.50.6   -v internal_gw=192.168.50.1   -v internal_cidr=192.168.50.0/24   -v outbound_network_name=NatNetwork

配置环境

$ bosh alias-env vbox -e 192.168.50.6 --ca-cert <(bosh int ./creds.yml --path /director_ssl/ca)
$ export BOSH_CLIENT=admin
$ export BOSH_CLIENT_SECRET=`bosh int ./creds.yml --path /admin_password`

check env

$ bosh -e vbox env
Using environment ‘192.168.50.6‘ as ‘?‘

Name: ...
User: admin

Succeeded

add route

sudo route add -net 10.244.0.0/16 gw  192.168.50.6

进入软件的部署环节

部署资源需求配置

  • 不管部署什么应用,前提必须要有cloud config,在部署应用或者服务时,可以根据具体的场景更新cloud config中虚拟机规格的配置更新
  • 一但cloud config被更新,之前的将被视为过期,Director会在下次进行bosh deploy时应用这些配置
  • 每个应用gitrepo中一般都会定义cloud config的配置,我们可以通过一下方式更新
$ bosh -e vbox update-cloud-config /PATH/TO/cloud-config.yml 

上传基础操作系统镜像Stemcell

  • 部署应用就要提前准备好应用要运行的操作系统,window/centos/ubuntu等,一般会在部署的应用文档中有介绍
  • 建议提前下载好需要的Stemcell,网络传输可能会导致失败,另外版本的更新非常快,要注意自己使用的版本

这是一个栗子:

bosh -e vbox upload-stemcell https://bosh.io/d/stemcells/bosh-warden-boshlite-ubuntu-trusty-go_agent?v=3468.17   --sha1 1dad6d85d6e132810439daba7ca05694cec208ab

验证性测试

git clone https://github.com/concourse/concourse-bosh-deployment.git
bosh -e $BOSH_ENVIRONMENT deploy -d concourse concourse.yml   -l ../versions.yml   --vars-store cluster-creds.yml   -o operations/static-web.yml   -o operations/no-auth.yml   --var web_ip=10.244.15.2   --var external_url=http://10.244.15.2:8080   --var network_name=concourse   --var web_vm_type=concourse   --var db_vm_type=concourse   --var db_persistent_disk_type=db   --var worker_vm_type=concourse   --var deployment_name=concourse

fly -t ci login -c http://10.244.15.2:8080

原文地址:http://blog.51cto.com/bkmaster/2327785

时间: 2024-10-11 01:00:21

Bosh安装Concourse持续部署工具的相关文章

持续集成工具TeamCity配置使用

持续集成CI(Continuous Integration)主要包括自动化的编译.发布和测试集成,对于我们信息系统项目开发非常有用.一般开发人员机器上会搭建自己的开发环境,整个项目在服务器上会搭建测试环境,持续集成工具就可以完成整个项目集成部署的自动化,这里主要讲持续集成工具TeamCity7.1.2配置使用. 1.TeamCity安装 安装过程比较简单,按照向导一步步往下走,默认装是英文版本的,有一个地方注意输入TeamCity server port服务的端口号,安装完成后Web管理界面使用

用持续集成工具Travis进行构建和部署

用持续集成工具Travis进行构建和部署 摘要:本文简单说明了如何使用持续集成工具Travis进行构建和部署的过程. 1. 概述 持续集成(Continuous Integration)是软件开发过程中的重要环节,不论是在开发环境,还是生产环境,其好处都是可以让团队尽快得到反馈,从而尽早发现和解决问题,不要等到用户来报告问题,影响产品和团队的声誉.越早越快地发现和解决问题,成本越低,这也是敏捷开发的基本目的之一. 持续集成的工具有不少,著名的有CruiseControl.JetBrains的Te

持续交付工具ThoughtWorks Go部署step by step

持续交付工具ThoughtWorks Go部署step by step http://blogs.360.cn/360cloud/2014/05/13/%E6%8C%81%E7%BB%AD%E4%BA%A4%E4%BB%98%E5%B7%A5%E5%85%B7thoughtworks-go%E9%83%A8%E7%BD%B2step-by-step/ Posted on 2014 年 5 月 13 日 by zieckey | Leave a reply 1. ThoughtWorks  Go简

持续集成部署工具jenkins简介

1. Jenkins基本介绍 Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能.现在企业一般使用jenkins落实持续集成.持续部署.持续交付.也可以利用jenkins实现docker自动化流水 2. 安装gitlab gitlab部署 参考 https://blog.51cto.com/flyfish225/2145495下载gitlab 最新版https://packages.gitlab

给开发安装持续集成工具jenkins,K哥

2016.11.24 测试用服务器已经有了SVN 被开发找到说要安装一个正式的上线管理软件 我也没问他什么是正式的上线管理软件 自己百度没有,QQ群问,有人回复说可能是指持续集成工具 OK,搜索,发现jenkins这个软件不错,虽然官网不支持中文,但社区很活跃,可以用 官网:https://jenkins.io/index.html    自己根据系统下载 1.安装JDK jenkins软件需要java环境支持 先检查下有没有JAVA java --version OK,没装,网上下载个 htt

自动化批量部署工具Ansible笔记之ansible安装与Inventory文件

一.ansible简介 ansible是一款自动化运维部署工具,与saltstack,pupet等不同的是,ansible没有采用C/S的架构,即没有客户端与服务端之分.这也就意味着,ansible的安装更加方便,管理节点更加灵活(任何一台安装了ansible的机器都可以充当管理节点). ansible提供了丰富的模块来方便的完成管理任务,对于复杂的管理任务来说,ansible通过编写playbook的方式来批量执行.而且ansible也可以并发的执行操作,可以同时在多台机器上执行playboo

容器时代的持续交付工具---Drone:Drone介绍与安装

Drone:Drone is a Container-Native, Continuous Delivery Platform. 官方给的定义,从上面的定义可以得出两个关键点: 1,Container-Native:Cloud-Native是云原生,那Container-Native可以翻译成容器原生,就是说Drone是容器时代的一个产品,是基于容器实现的. 2, Continuous Delivery:持续交付,容器是现在快速交付的一个代名词,而Drone是容器化的一种持续交付的平台,其实Dr

自动化测试到持续部署

从自动化测试到持续部署,你需要了解这些 在互联网的产品开发时代,产品迭代越来越频繁,“从功能开发完成直到成功部署”这一阶段被称为软件开发“最后一公里”.很多开发团队也越来越认识到,自动化测试和持续部署可帮助开发团队提高迭代效率和质量. 那么,如何更好地解决“最后一公里”这一问题呢? 一切从自动化测试开始,让自动化测试贯穿在整个项目开发-集成-部署-交付的-开发流程中. 如果你的团队还没有开始自动化测试,推荐从经典的测试金字塔开始. 自动化测试 在这个分层自动化测试金字塔中,Unit 代表单元测试

持续集成工具Jenkins学习总结

概述 持续集成(Continuous Integration,简称CI)是一种软件开发实践,团队开发人员每次都通过自动化的构建(编译.发布.自动化测试)来验证,从而尽早的发现集成错误.持续集成最大的优点是避免了传统模式在集成阶段的除虫会议(bug meeting),其要素包括统一的代码库.自动构建.自动测试.自动部署.频繁提交修改过的代码等. Jenkins的前身是Hudson,是基于Java开发的一种持续集成工具,是一个开源软件项目,主要用于: 持续.自动地构建/测试软件项目,如CruiseC