与windows镜像制作思路一样,本文参考了openstack官网juno版本的《image-guide》。镜像制作主要分3步:
1、创建虚拟磁盘,主要需要关注的是虚拟磁盘格式;
2、通过虚拟机管理软件或者远程桌面接入到虚拟机在第1步创建的虚拟磁盘上安装操作系统;主要关注虚拟机的IO驱动,同时,远程桌面的操作可能会遇见一些问题,比如键盘模式。
3、在第2步的基础上安装云初始化软件bsd-cloudinit-installer。注意安装完成后,关闭虚拟机,保护好现场,不要启动虚拟机。
下面分别介绍:
一、创建虚拟磁盘:
qemu-img create -f qcow2 freebsd.qcow2 100G
具体大小可以根据自己的需求进行调整,这里是100G。
二、通过虚拟机管理软件远程桌面接入到虚拟机安装操作系统:
首先下载FREEBSD操作系统的安装介质,我这里采用的是网上安装版本:
curl ftp://ftp.freebsd.org/pub/FreeBSD/releases\
/amd64/amd64/ISO-IMAGES/10.0/FreeBSD-10.0-RELEASE-amd64-bootonly.iso >\
FreeBSD-10.0-RELEASE-amd64-bootonly.iso 接下来通过kvm虚拟机安装工具命令qemu-kvm 进行安装:
qemu-kvm -smp 1 -m 2048 -cdrom /data/iso/FreeBSD-10.0-RELEASE-amd64-bootonly.iso \
-drive if=virtio,file=/data/img/freebsd.qcow2 \
-net nic,model=virtio -net user -k en-us 注意上面的参数-k en-us,官网文档中是没有的,如果没有这个参数,键盘输入会碰到问题。其它参数的含义可以通过qemu-kvm -h进行参考。
在图形界面,选择install,下载安装,注意选择china的镜像源地址,否则速度很慢。
注意,这里很重要,安装过程增加新用户,并且将新用户加入wheel组,否则不能使用su。
安装完成后,修改 /etc/ssh/sshd_config 中的参数:PasswordAuthentication yes
生成sshkey,启动sshd:
ssh-keygen
service sshd start 三、安装配置云计算初始化软件openstack-cloud
echo 'console="comconsole,vidconsole"' >> /boot/loader.conf
echo 'autoboot_delay="1"' >> /boot/loader.conf
pkg install ca_root_nss
fetch --ca-cert=/usr/local/share/certs/ca-root-nss.crt \
https://raw.github.com/pellaeon/bsd-cloudinit-installer/master/
installer.sh
sh ./installer.sh 安装配置sudo:
pkg install sudo
echo 'freebsd ALL=(ALL) NOPASSWD: ALL' > /usr/local/etc/sudoers.d/10-cloudinit 注意,将上面增加的其他用户也加入到上面,比如:
yourname ALL=(ALL) NOPASSWD: ALL
其中上面的yourname修改为你自己想新增的用户名。
关机:
shutdown -h now
最后,上传镜像:
glance image-create --name freebsd --disk-format qcow2 \
--container-format bare --is-public true \
--file /data/img/freebsd.qcow2
为了能够制定虚拟机在哪一个物理机上,我直接使用命令方式手动生成虚拟机:
获取flavor、image、net_id、secgroup、service:
nova flavor-list
nova image-list
nova net-list
nova secgroup-list
nova service-list 根据上面命令得到的信息,执行下面的命令生成虚拟机:
nova boot --flavor freebsd-1cpu2G-100g --image freebsd --nic net-id=212d7fa0-94af-466d-93ad-5ee50afcfb49 \
--security-group default --availability-zone nova:node-14.domain.tld FreeBSD-001
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com