[OpenStack Crowbar] Build Crowbar.ISO

If you are planning to be CROWBAR DEVELOPER, please follow the Dev Tool Build instructions! It requires that you have a GitHub account.

https://github.com/dellcloudedge/crowbar/blob/master/README.build

Notes:

  • Please CORRECT this page if you find errors!
  • Ensure that you are running Bash 4 or greater as your shell.
  • build_crowbar.sh uses associative arrays, which bash got in version 4.
  • Lines below assume working from home directory
  • Build as ROOT (otherwise, check the install script to see which commands require sudo rights)
  • Build includes a component known as "sledgehammer" that is a CentOS based image for discovery. If the build finds a pre-created image in "../crowbar-sledgehammer/bin" directory, it uses it. If it's not found, build_sledgehammer.sh is invoked to build it (this requires a CentOS ISO to be available). This TFTPboot image does not change often.
  • Build process has been tested on Ubuntu 10.10, Ubuntu 11.04 and Ubuntu 12.04.

Build ISOs and Sledgehammer TARs are available on http://crowbar.zehicle.com if you don’t want to follow these steps then download the ISO. We are updating the code daily, but Rob creates a new ISO less frequently, so don’t assume that you have that latest!

Prerequisites

To build Crowbar, you need an linux machine and access to the internet. These videos show on how you can build using a Rackspace Cloud Server (http://youtu.be/FsOBaAiDgYs) or on a local VM (http://youtu.be/qvsfXPH5k5Q). We build Crowbar inside our firewall on our PCs too. No matter how you do it, Crowbar is full of fuzzily delicious cloud bits.

Of course, you still need to run the ISO to build a staged OS that can Install Crowbar.

Note: these instructions are for Ubuntu-12.04, CentOS-6.2 & RHEL-6.2! The build machine should have enough memory (more than 360 MB, 2GB is ideal) otherwise it could fail during the build process.

Building Sledgehammer (if it doesn't exist)

If you don't already have Sledgehammer, you'll need to download some ISOs before proceeding. Find the closest mirrors to you for the listed ISOs.

  1. su - (sometimes sudo su -)
  2. mkdir -p ~/.crowbar-build-cache/iso
  3. curl -o ~/.crowbar-build-cache/iso/CentOS-6.2-x86_64-bin-DVD1.iso http://ucmirror.canterbury.ac.nz/linux/CentOS/6.2/isos/x86_64/CentOS-6.2-x86_64-bin-DVD1.iso
  4. curl -o ~/.crowbar-build-cache/iso/ubuntu-12.04-server-amd64.iso http://ubuntu.citylink.co.nz/precise/ubuntu-12.04-server-amd64.iso

Build Crowbar (first build takes a while because components must be cached)

  1. su - (sometimes sudo su -)
  2. apt-get install git build-essential debootstrap mkisofs binutils rpm ruby rubygems curl (replace apt-get with your distro's package manager)
  3. gem install json
  4. git clone git://github.com/dellcloudedge/crowbar.git
  5. cd ~/crowbar

    Switch to appropriate release and branch (see below)
  6. ./dev build --os <OS>

    If you get an error about updates disabled, run the command above again appending --update-cache
  7. Grab a coffee, read a book, etc...
  8. ls *.iso

Switching releases and branches

For full details about the dev tool, check the README https://github.com/dellcloudedge/crowbar/blob/master/README.dev-and-workflow

First set your GitHub username and password (ignore errors about ulimit): ./dev setup

To see available releases: ./dev releases

To switch to a given release (e.g. development): ./dev switch development

To checkout out a particular branch for a specialized build (e.g, openstack-os-build): ./dev checkout openstack-os-build

Variations

To build Cloudera Hadoop on CentOS 6.2 complete the steps above making the following changes:

  • Change branch: ./dev switch elefante and ./dev checkout cloudera-os-build
  • Add Parameter: ./build_crowbar.sh centos-6.2
  • The CentOS & RHEL DVDs are larger (4 GB!) so you may need larger volumes (>20 GB) to build

Build Options that you can set via EXPORTS

Note: You can store these in a ~/.build-crowbar.conf for easier reuse!

Usage "export PARAM=VALUE"

  • USE_PROXY : [0] = no, 1 = yes
    • PROXY_HOST
    • PROXY_USER
  • ALLOW_CACHE_UPDATE : [true], false
  • CACHE_DIR : ["$HOME/.crowbar-build-cache"]
  • ISO_LIBRARY : ["$CACHE_DIR/iso"]
  • SLEDGEHAMMER_PXE_DIR : [""$CACHE_DIR/tftpboot"]
    • SLEDGEHAMMER_DIR : ["${CROWBAR_DIR}/../crowbar-sledgehammer"]
  • ... there are more...
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值