Diskimage Builder 制作Ironic裸金属镜像

Diskimage-builder 是openstack社区用于制作镜像的工具。 1.安装

yum -y install python-pip
yum -y install qemu-img kpartx git
pip install --upgrade pip
pip install virtualenv
yum install -y libguestfs-tools-c  (提供virt-sysprep) 后面修改密码用得到

虚拟环境中安装

这里简单说明如何在需环境中安装dib(diskimage-builder)

克隆源码的仓库:

$ git clone https://git.openstack.org/openstack/diskimage-builder
$ git clone https://git.openstack.org/openstack/dib-utils

建立虚环境:

$ virtualenv dib-env

启用虚环境

$ source dib-env/bin/activate

安装:

$ cd diskimage-builder
$ pip --default-time=100 install .
$ cd dib-utils
$ python setup.py install

制作第一个镜像

$ export DIB_DEV_USER_USERNAME=centos   //初始用户名centos
$ export DIB_DEV_USER_PASSWORD=password   //初始密码password
$ export DIB_DEV_USER_PWDLESS_SUDO=YES   //允许sudo
$ export DIB_CLOUD_INIT_DATASOURCES="ConfigDrive, OpenStack"   //cloud-init 的datasource是ConfigDrive, OpenStack

$ disk-image-create centos7 baremetal dhcp-all-interfaces grub2 install-static devuser -o centos7 cloud-init-datasources

很奇怪前面定义的密码安装完系统之后不能登录,

$ export LIBGUESTFS_BACKEND=direct  (不执行第2步会报错)

$ virt-sysprep --root-password password:password -a centos7.qcow2   (修改密码为password)