centos7.3 kvm虚拟化全自动化部署(金测OK)

环境说明:

VMware中的centos7做kvm虚拟化实验必须的设置,否则无法正常使用kvm虚拟化功能:

#kvm虚拟化一键安装和启动的脚本(已测OK)

#说明:此脚本实现kvm虚拟化平台的一键安装,并且创建一台新的虚拟机vmx0,给vmx0全自动安装系统。

本文是通过脚本在centos7系统中全自动化安装和配置kvm虚拟化平台,并通过脚本创建一台新虚拟机vmx0,并且自动安装centos7系统.本案脚本创建的虚拟机vmx0配置了vnc和console控制功能.本文附带了mininal和gnome桌面安装的ks自动安装应答文件.测试都能正常运行.欢迎大家来试用.

网络环境:
kvm+vsftpd服务器:192.168.10.7

vi   kvma.sh   脚本代码如下
#!/bin/bash
setenforce   0
getenforce
sed  -i    ‘/^SELINUX=/c\SELINUX=disable‘   /etc/selinux/config
grep   ^SELINUX    /etc/selinux/config

systemctl   stop   firewalld
systemctl   disable   firewalld

read  -p    ‘selinux和firewalld已关闭,按回车键继续配置本地yum源...‘

#准备本地yum源
mkdir  -pv  /dvd
mount   /dev/cdrom   /dvd
chmod  +x  /etc/rc.d/rc.local
grep  dvd   /etc/rc.d/rc.local || echo   ‘mount   /dev/cdrom   /dvd‘  > /etc/rc.d/rc.local
source   /etc/rc.d/rc.local
cd  /etc/yum.repos.d
mkdir  -pv  bak/
mv  -v  *.repo  bak/
cat  > dvd.repo <<EOF
[centos73]
name=centos linux 7.3 local
baseurl=file:///dvd
enabled=1
gpgcheck=0

EOF
yum  clean  all
yum  repolist
mkdir   -pv   /var/ftp/ks/

read  -p    ‘请务必先用vi   /var/ftp/ks/7text.ks手动创建自动应答文件,7text.ks文件内容见下文,然后按回车键安装并配置vsftpd文件共享服务...‘

#vsftpd文件共享环境准备
yum  install  -y  vsftpd  lftp  ftp  elinks  curl
systemctl  restart  vsftpd
systemctl  enable  vsftpd
mkdir  -pv  /var/ftp/dvd/
mount   /dev/cdrom   /var/ftp/dvd
curl   ftp://127.0.0.1/
grep  ftp   /etc/rc.d/rc.local || echo   ‘mount   /dev/cdrom   /var/ftp/dvd‘  > /etc/rc.d/rc.local
source   /etc/rc.d/rc.local

read  -p    ‘按回车键安装并配置kvm虚拟化平台...‘

#安装kvm虚拟化平台软件
egrep ‘(vmx|svm)‘ --color=always /proc/cpuinfo

yum  install    -y  qemu-kvm  qemu-img  libvirt
yum  install    -y  virt-install  libvirt-python  virt-manager  python-virtinst  python-virtualenv   libvirt-client  virt-viewer    virt-top   bridge-utils
systemctl   restart   libvirtd
systemctl   enable   libvirtd
systemctl   status    libvirtd

virsh  list  --all

#创建用console安装系统的kvm虚拟机。
mkdir  -pv  /vmdisk

read  -p    ‘请务必先用vi   /var/ftp/ks/7text.ks手动创建自动应答文件,7text.ks文件内容见下文,然后按回车键创建一台新虚拟机...‘
vm_name=vmx0
vm_port=5910
#vftp=ftp://192.168.10.7/dvd/

read  -p   ‘请输入kvm虚拟机名称:‘  vm_name
read  -p   ‘请输入kvm虚拟机vnc端口号,如5910:‘  vm_port
#read  -p   ‘请输入centos7系统安装包ftp服务器地址,如ftp://192.168.10.7/dvd/:‘  vftp

#创建vmx0虚拟机(mininal最小版,已测OK)
virt-install \
   --name  ${vm_name} \
   --ram 1200 \
   --disk path=/vmdisk/${vm_name}.img,size=3,format=qcow2,sparse  \
   --vcpus 1 \
   --os-type linux \
   --os-variant rhel6 \
   --graphics vnc,listen=0.0.0.0,port=${vm_port},keymap=‘en-us‘  \
   --console pty,target_type=serial \
   --location=ftp://192.168.10.7/dvd/ \
   --extra-args ‘console=ttyS0,115200n8 serial  ks=ftp://192.168.10.7/ks/7text.ks‘ \
   --noautoconsole  --autostart

virsh  list  --all

#在创建虚拟机时指定ks自动安装的应答文件(本例未用ks功能)
#ks应答文件参考7text.ks这一节的内容。
#virt-install    --extra-args="ks=ftp://192.168.10.7/ks/7text.ks"

echo  <<EOF
然后依次选择创建分区、软件环境、设置root用户密码、时区这3个主要的系统安装参数,最后按b开始安装系统。
技巧:virsh   console   vmx0进入到console控制台后,如何退出console控制台?
方法:用 ctrl+]  快捷键即可.
EOF

virsh  list  --all

read  -p  ‘按回车键继续管理${vm_name}虚拟机...‘

virsh  console  ${vm_name}

#virt  start  vm01  --console    #启动虚拟机并进入console控制台
#virt-console   vm01     #进入vm01虚拟机控制台,按ctrl+]退出
#virt-viewer   vm01  &
#virt-manager  &

#脚本完毕###

#测试脚本的运行:
chmod   kvma.sh
sh  kvma.sh

-------------------------------------------------------------------------
#创建vm01虚拟机(mininal最小版,已测OK)sparse
virt-install \
   --name  vm01 \
   --ram 1200 \
   --disk path=/vmdisk/vmx01.img,size=3,format=qcow2,sparse  \
   --vcpus 1 \
   --os-type linux \
   --os-variant rhel6 \
   --graphics vnc,listen=0.0.0.0,port=5951,keymap=‘en-us‘  \
   --console pty,target_type=serial \
   --location=ftp://192.168.10.7/dvd/ \
   --extra-args ‘console=ttyS0,115200n8 serial  ks=ftp://192.168.10.7/ks/7text.ks‘ \
   --noautoconsole  --autostart

创建vm02虚拟机(gnome桌面版)
virt-install \
   --name  vm02 \
   --ram 1200 \
   --disk path=/vmdisk/vm02.img,size=8,format=qcow2,sparse  \
   --vcpus 1,maxcpus=10 \
   --os-type linux \
   --os-variant rhel6 \
   --graphics vnc,listen=0.0.0.0,port=5952,keymap=‘en-us‘ \
   --console pty,target_type=serial \
   --location=ftp://192.168.10.7/dvd/ \
   --extra-args ‘console=ttyS0,115200n8 serial  ks=ftp://192.168.10.7/ks/7gnome.ks‘ \
   --noautoconsole  --autostart

创建vm03虚拟机(gnome桌面版)
virt-install \
   --name  vm03 \
   --ram 1200 \
   --disk path=/vmdisk/vm03.img,size=8,format=qcow2,sparse  \
   --vcpus 1,maxcpus=10 \
   --os-type linux \
   --os-variant rhel6 \
   --graphics vnc,listen=0.0.0.0,port=5953,password=123,keymap=‘en-us‘ \
   --console pty,target_type=serial \
   --location=http://mirrors.163.com/centos/7.3.1611/os/x86_64/ \
   --extra-args ‘console=ttyS0,115200n8 serial  ks=ftp://192.168.10.7/ks/7gnome.ks‘ \
   --noautoconsole  --autostart

----------------------------------------
临时测试
virt-install \
   --name  vm08 \
   --ram 1200 \
   --disk path=/vmdisk/vm08.img,size=3,format=qcow2,sparse  \
   --vcpus 1 \
   --os-type linux \
   --os-variant rhel6 \
   --graphics vnc,listen=0.0.0.0,port=5958,keymap=‘en-us‘  \
   --console pty,target_type=serial \
   --location=ftp://192.168.10.7/dvd/ \
   --extra-args ‘console=ttyS0,115200n8 serial  ks=ftp://192.168.10.7/ks/7text.ks‘ \
   --noautoconsole  --autostart

----------------------------------------

时间: 2024-10-17 05:20:40

centos7.3 kvm虚拟化全自动化部署(金测OK)的相关文章

centos7+docker+Jenkins+svn搭建自动化部署平台

centos7+docker+Jenkins+svn搭建自动化部署平台 1. centos7 参考链接:http://www.macrozheng.com/#/reference/linux_install tips 公司服务器配置(1T机械+256固态+i7的u) 需要我们把系统,环境(java,mysql,redis,docker等)装到固态上(速度快),我们的代码放到机械上.分区情况如下图 2. centos7中安装docker1.31.1 自行百度,此处无坑 3. centos7安装配置

Centos7构建KVM虚拟化平台,并通过KVM安装虚拟机

什么是虚拟化? 虚拟化就是把硬件资源从物理方式转变为逻辑方式,打破了物理结构,使用户可以灵活管理这些资源,并且允许1台物理机上同时运行多个操作系统,以实现资源利用率最大化和灵活管理的一项技术. 虚拟化的优势 减少服务器数量,降低硬件采购成本: 资源利用率最大化: 降低机房空间.散热.用电消耗的成本等: 硬件资源可动态调整,提高企业IT业务灵活性: 高可用性: 在不中断服务的情况下进行物理硬件资源调整: 降低管理成本: 具备更高效的容灾能力. KVM虚拟化 kvm自从Linux2.6.20版本后就

[原创]kvm虚拟化管理平台部署-完整记录

公司机房有一台2U的服务器(64G内存,32核),由于近期新增业务比较多,测试机也要新增,服务器资源十分有限.所以打算在这台2U服务器上部署kvm虚拟化,虚出多台VM出来,以应对新的测试需求. 当KVM宿主机越来越多,需要对宿主机的状态进行调控.这里我采用WebVirtMgr作为kvm虚拟化的web管理工具,图形化的WEB,让人能更方便的查看kvm 宿主机的情况和操作 WebVirtMgr是近两年来发展较快,比较活跃,非常清新的一个KVM管理平台,提供对宿主机和虚机的统一管理,它有别于kvm自带

Linux LTMP手动编译安装以及全自动化部署实践

前言 现在很多朋友都了解或者已经在使用LNMP架构,一般可以理解为Linux Shell为CentOS/RadHat/Fedora/Debian/Ubuntu/等平台安装LNMP(Nginx/MySQL/PHP),LNMPA(Nginx/MySQL/PHP/Apache),LAMP(Apache/MySQL/PHP)等类似的开发或生产环境.我自己是从SuSE/Oracle商业化环境走出来的,对于开源的部署方案也是在一点一点摸索,我相信其中也必然包含某些坑爹的配置.这篇文章较为详细的描述了基于LT

CentOS7.4——KVM虚拟化一 安装配置及基本操作

KVM的安装配置与基本操作 目录第一部分 实验环境第二部分 安装图形界面第三部分 配置KVM虚拟化第四部分 创建桥接网卡第五部分 KVM虚拟环境中安装系统第六部分 克隆第七部分 其它命令 第一部分 实验环境Linux服务器一台IP地址:192.168.80.40(kvm01) 第二部分 安装图形界面[[email protected] ~]# yum groupinstall "GNOME 桌面" –y //安装图形界面注意,如果在控制台上操作(或者没有中文环境),yum groupi

VMware下的Centos7实践Kvm虚拟化(通俗易懂)

虽然网上已经有很多关于kvm安装的教程了,但我还是看得头晕,有的教程里安装的包很多,有的很少,也没说明那些安装包的作用是干嘛的,用的命令也不一样,也没解释命令的意思是什么. 我重新写一个教程,尽量通俗易懂点,也是给增强我的记忆. 这里提示下,Hyper-v就是一个大坑!本来我是用Hyper-v来学习这个Kvm虚拟化的,我创建的宿主虚拟机可以连外网,宿主机里创建的kvm虚拟机是用桥接网络,但无论怎样设置都连接不了外网,kvm的虚拟机可以ping得通宿主机,宿主机也能ping得通kvm的虚拟机,宿主

KVM虚拟化平台环境部署

一:安装依赖包 二:配置网卡 三:配置环境 实验环境: KVM01   192.168.200.10 关闭防火墙及相关的安全机制 [[email protected] ~]# systemctl stop firewalld[[email protected] ~]# iptables -F[[email protected] ~]# setenforce 0 一:安装依赖包 [[email protected] ~]# cat /proc/cpuinfo | grep vmx        

Fastlane带来的全自动化部署

From: Hailong's Blog (格式比专栏的好!) 作为公司的iOS程序员,少不了在发布应用的时候各种等待.标准的手动发布流程是:编译->打包上传->填写应用更新数据->等待iTunesConnect编译->选择版本发布,整个过程大概需要30分钟左右.关键是这个过程就像windows装系统一样,虽然手工参与的不多,但是要一直守在电脑前等着. 程序员这么懒,一定会想办法让他自动化的.后来发现特别懒的Felix Krause · GitHub)写的Fastlane,Fast

kickstart+DHCP+NFS+TFTP+PXE 全自动化部署Linux系统

目录 kickstart+DHCP+NFS+TFTP+PXE 安装详细步骤 执行PXE--kickstart 安装需要的设备为 用到的kickstart工具.依赖于X Windows,所以要提前安装好,XWindows及GNOME 并重启系统 修改/etc/inittab配置文件 重启系统 reboot 启动图像化 上传centos7.4.iso 至 /usr/loca/src mkdir -p mnt/cdrom 安装dhcp 创建Apache目录 mkdir -p /var/html/www