桀昊j 发表于 2018-6-2 06:59:38

制作openstack image(镜像)

  如何定制linux的镜像:
  首先需要一个已经安装kvm的系统,并且需要你所要创建的虚拟主机的Iso镜像。如何安装 kvm我这就不说了。
  如果查看这个系统安装KVM了呢:ifconfig看到这个网卡,说明已经安装了。

  qemu-img create -f qcow2 image-test.img 10G                                 
  #创建10G的磁盘,qcow2 格式,文件名image-test.
  

  virt-install --name image-test --hvm --ram1024 --vcpus 2 --disk path=/mnt/image-test.img,size=10,bus=virtio,format=qcow2--network network:default --accelerate --vnclisten=192.168.1.7 --vnc--vncport=5908 --network bridge=kvmbr0 --force --autostart --cdrom/mnt/CentOS-6.5-x86_64-bin-DVD1.iso --boot cdrom
  #虚拟机的名字:image-test,--hvm --ram1024 内存1G, --vcpus 2使用CPU的核数,path=/mnt/image-test.img,size=10,bus=virtio,format=qcow2使用的硬盘,以及硬盘类型,--network network:default 使用的网络,--accelerate--vnclisten=192.168.1.7 --vnc --vncport=5908 --network bridge=kvmbr0 --force –autostart:VNC在监听的ip地址,vnc端口号,vnc使用本机的那块网卡,--cdrom/mnt/CentOS-6.5-x86_64-bin-DVD1.iso,使用的iso镜像,--bootcdrom虚拟机从光驱启动。
  如果创建,因为其它问题创建失败了。
  排错:
  ERROR   Guest name 'image-test'is already in use.
  已经有一个虚机叫image-test了,我们可以使用:virsh undefine 虚拟机的名字,将这个虚机杀掉。
  使用VNC连接上去:就可以看到安装操作系统画面了。
  
  
  连接镜像虚拟主机:
  注意:镜像虚拟机在安装的过程不要划分其它分区,就一个/分区。
  1、 更改网卡 ONBOOT=yes
  2、 rm -rf /etc/udev/rules.d/70-persistent-net.rules
  3、 清空防火墙   vim /etc/sysconfig/iptables
4、yum install -y http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm5、yum -y install cloud-init                        #针对云环境一个包,主要功能有自动的磁盘分区、公钥私钥的访问  大家还可以根据自己的需求 定制化其它的东西,这里image 镜像就制作完在了。
  将image上传至glance
  glanceimage-create --progress --name="Centos6.5" --disk-format=qcow2--container-format=ovf --is-public=true < image-test.img
  用virtualBOX也可以做openstack镜像:
  只需在安装系统的时候将硬盘的格式选择一下 看下图:


  安装完成之后,只需将virtualBOX的镜像文件拷贝到一个带到有KVM的linux主机里,将格式转换一下:
  qemu-img convert -f vpc -o raw vhd-test.vhd vhd-test.vid.raw
  qemu-img info vhd-test.vhd.raw

  大家就可以看到了已经把格式转换过来了,但这个格式文件较大,但性能最好!
  
  这个虚拟机不启动可以更改镜像的文件吗?
  答案:当然可以
  yum install libguestfs –y
  guestfish--rw -a cirros-0.3.1-x86_64-disk.img
  run

  #启动这个镜像,时间有点慢
  下载:
  upload /root/aa.txt /tmp/aa.txt
  #aa.txt 物理机的文件
  注意这个只能文件对文件
  

  从镜像下载到物理机:
  download /tmp/aa.txt /mnt/bb.txt
  

  更多的功能请 man   
  

  

  


  

  
页: [1]
查看完整版本: 制作openstack image(镜像)