前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >openstack镜像制作详解

openstack镜像制作详解

作者头像
yaohong
发布2019-09-11 10:08:58
4.2K0
发布2019-09-11 10:08:58
举报
文章被收录于专栏:姚红专栏姚红专栏

一:本地部署KVM

1.安装KVM

1.1安装须知

查看CPU是否支持kvm完全虚拟机。

[root@LINUX ~]# grep "flags" /proc/cpuinfoflags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc up arch_perfmon pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock pni pclmulqdq vmx ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt xsave avx hypervisor lahf_lm arat epb xsaveopt pln pts dts tpr_shadow vnmi ept vpid

注释:如果输出的信息中有vmx,说明intel处理器支持完全虚拟化。如果显示svm,说明是AMD的处理器支持虚拟化。

vmware workstation安装kvm的时候,需要开启CPU支持虚拟化。在BIOS界面设置

1.2在新机器上安装KVM

安装操作系统时选择上虚拟包即可

安装KVM包

1.3在现有机器上安装KVM

(1)安装kvm和其他虚拟化所需管理软件包。

[root@LINUX ~]# yum install -y kvm virt-* libvirts bridge-utils qemu-img

软件包名称介绍:

Kvm:软件包中含有KVM内核模块,它在默认linux内核中提供kvm管理程序

Libvirts:安装虚拟机管理工具,使用virsh等命令来管理和控制虚拟机。

Bridge-utils:设置网络网卡桥接。

Virt-*:创建、克隆虚拟机命令,以及图形化管理工具virt-manager

Qemu-img:安装qemu组件,使用qemu命令来创建磁盘等。

(2)加载kvm模块,查看kvm模块是否被加载

[root@LINUX ~]# modprobe kvm-intel [root@LINUX ~]# lsmod | grep kvm kvm_intel 54285 0 kvm 333172 1 kvm_intel

(3)重启确实KVM是否被加载

[root@LINUX ~]# reboot [root@LINUX ~]# lsmod | grep kvm kvm_intel 54285 0 kvm 333172 1 kvm_intel

2.配置KVM

2.1. 关闭iptables和selinux

(1)关闭iptables防火墙和selinux。

[root@LINUX ~]# /etc/init.d/iptables stop [root@LINUX ~]# chkconfig iptables off [root@LINUX ~]# chkconfig --list iptables iptables 0:off 1:off 2:off 3:off 4:off 5:off 6:off [root@LINUX ~]# vim /etc/sysconfig/selinux SELINUX=disabled [root@LINUX ~]# setenforce 0

2.2. 配置桥接

(1)配置eth0、br0网卡

[root@LINUX ~]# more /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 HWADDR=00:0C:29:33:B3:E5 TYPE=Ethernet UUID=142284ae-3173-4b0a-80d8-437c26a96719 ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=none BRIDGE=br0 [root@LINUX ~]# more /etc/sysconfig/network-scripts/ifcfg-br0 DEVICE=br0 HWADDR=00:0C:29:33:B3:E5 TYPE=Bridge UUID=142284ae-3173-4b0a-80d8-437c26a96719 ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=static IPADDR=10.0.1.149 NETMASK=255.255.255.0 GATEWAY=10.0.1.1 [root@LINUX ~]# /etc/init.d/network restart

(2)查看目前所有的网桥接口

[root@LINUX ~]# brctl show bridge name bridge id STP enabled interfaces br0 8000.000c2933b3e5 no eth0 virbr0 8000.525400d969b8 yes virbr0-nic

2.3. 配置VNC服务

(1)修改VNC服务端的配置文件

[root@LINUX ~]# vim /etc/libvirt/qemu.conf vnc_listen = "0.0.0.0" 第十二行,把vnc_listen前面的#号去掉。

(2)重启libvirtd和messagebus服务

[root@LINUX ~]# /etc/init.d/libvirtd restart Stopping libvirtd daemon: [ OK ] Starting libvirtd daemon: libvirtd: initialization failed [FAILED] 解决办法: [root@LINUX libvirt]# echo "export LC_ALL=en_US.UTF-8" >> /etc/profile [root@LINUX libvirt]# source /etc/profile [root@LINUX libvirt]# /etc/init.d/libvirtd restart Stopping libvirtd daemon: [FAILED] Starting libvirtd daemon: 2014-08-15 16:14:18.595+0000: 2429: info : libvirt version: 0.10.2, package: 29.el6_5.11 (CentOS BuildSystem <http://bugs.centos.org>, 2014-07-31-18:52:08, c6b8.bsys.dev.centos.org) 2014-08-15 16:14:18.595+0000: 2429: warning : virGetHostname:2294 : getaddrinfo failed for 'LINUX': Name or service not known [ OK ] [root@LINUX ~]# /etc/init.d/messagebus restart Stopping system message bus: [ OK ] Starting system message bus: [ OK ]

3.安装KVM上虚拟机

3.1. 创建镜像文件目录和虚拟磁盘存放目录

[root@LINUX ~]# mkdir -p /home/iso [root@LINUX ~]# mkdir -p /home/kvm

3.2. 把Centos6.5系统的镜像文件拷贝到iso目录下

此处将单机部署手册中的sucunOs_anydisk.iso放置/home/iso目录下

3.3. 创建kvm虚拟机的磁盘文件

本例创建的磁盘文件为10G,实际使用中应注意下/home的空间,可以设置为100G

[root@LINUX ~]# cd /home/kvm/ [root@LINUX ~]# qemu-img create -f qcow2 -o preallocation=metadata kvm_mode.img 10G Formatting 'kvm_mode.img', fmt=qcow2 size=10737418240 encryption=off cluster_size=65536 preallocation='metadata'

3.4. 安装虚拟机

bridge网络模式(有独立IP时使用这种方式)

[root@LINUX ~]# chmod -R 777 /etc/libvirt [root@LINUX ~]# chmod -R 777 /home/kvm [root@LINUX ~]#virt-install --name=kvm_test --ram 4096 --vcpus=4 -f /home/kvm/kvm_mode.img --cdrom /home/iso/sucunOs_anydisk.iso --graphics vnc,listen=0.0.0.0,port=7788, --network bridge=br0 --force --autostart

Net模式(没有独立IP时使用这种方式)

[root@LINUX ~]# chmod -R 777 /etc/libvirt [root@LINUX ~]# chmod -R 777 /home/kvm [root@LINUX ~]#virt-install --name=kvm_test --ram 4096 --vcpus=4 -f /home/kvm/kvm_mode.img --cdrom /home/iso/sucunOs_anydisk.iso --graphics vnc,listen=0.0.0.0,port=7788 --force --autostart

用VNC连接,进行创建kvm虚拟机(VNC连上之后,跟安装linux Centos 6.5系统一样,重新装一次)

【注】出现上面页面说明客户端已经可以连接到kvm上安装的服务器,点击continue是如果出现闪退的情况,请修改Option->Expert->ColorLevel 的值为full

二:制作镜像

用VNC连接上创建的虚拟后,以SUSE12镜像为例,会进行重装系统和修改一些系统中配置文件。

1.制作镜像注意事项

1.1以suse镜像安装为例,在安装时需要注意磁盘分区一定要自动分区(LVM),否则上传到openstack环境还是无法识别硬盘。

2.修改相关配置文件

2.1.配置网卡

#vim /etc/sysconfig/network/ifcfg-eth0

按下图进行配置相关参数

配置完成后重启网络配置

#systemctl restart network.service

2.2远程登录允许

#vim /etc/sysconfig/SuSEfirewall2

打开防火墙相关配置文件后,设置FW_SERVICES_EXT_TCP参数为ssh

FW_SERVICES_EXT_TCP="ssh"

配置完成后重启防火墙相关配置文件

#rcSuSEfirewall2 restart

2.3开启密码和秘钥登录

#vim /etc/ssh/sshd_config

打开文件后找到AuthorizedKeysFile和PasswordAuthentication相关配置

AuthorizedKeysFile .ssh/authorized_keysPasswordAuthentication yes

配置完成后重新启动ssh服务

#systemctl restart sshd

配置完成后,可将本地 /home/kvm中镜像上传至需要使用的远程openstack的controller节点使用。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-01-04 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一:本地部署KVM
    • 1.安装KVM
      • 1.1安装须知
      • 1.2在新机器上安装KVM
      • 1.3在现有机器上安装KVM
    • 2.配置KVM
      • 2.1. 关闭iptables和selinux
      • 2.2. 配置桥接
      • 2.3. 配置VNC服务
    • 3.安装KVM上虚拟机
      • 3.1. 创建镜像文件目录和虚拟磁盘存放目录
      • 3.2. 把Centos6.5系统的镜像文件拷贝到iso目录下
      • 3.3. 创建kvm虚拟机的磁盘文件
      • 3.4. 安装虚拟机
  • 二:制作镜像
    • 1.制作镜像注意事项
      • 2.修改相关配置文件
        • 2.1.配置网卡
        • 2.2远程登录允许
        • 2.3开启密码和秘钥登录
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档