安裝kvm安裝虛擬機centos


1 安裝阿里雲的鏡像站

#將原來的鏡像備份
cd /etc/yum.repos.d/
mkdir back
mv CentOS-Base.repo ./back/
# 安裝阿里的鏡像
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

 2 安裝KVM

yum install qemu-kvm qemu-img virt-manager libvirt libvirt-python python-virtinst libvirt-client virt-install virt-viewer -y

yum install -y  virt-*  libvirt  bridge-utils qemu-img

 

 安裝包的解釋

qemu-kvm:qemu模擬器
qemu-img:qemu磁盤image管理器
virt-install:用來創建虛擬機命令的工具
libvirt:提供libvirtd daemon來管理虛擬機和控制hypervisor
libvirt-client:提供客戶端Api用來訪問server和提供管理虛擬機命令行工具的virsh實體
virt-viewer:圖形控制台

 校驗

#  lsmod命令用於顯示已載入系統的模塊。
lsmod | grep kvm
kvm_intel             188644  0 
kvm                   621480  1 kvm_intel
irqbypass              13503  1 kvm

3 開啟KVM 並設置開機自動啟動

systemctl start libvirtd # 開啟kvm
systemctl enable libvirtd # 開機自啟

查看kvm運行的狀態

systemctl status libvirtd

Unit vlibvitd.service could not be found.
[root@bogon yum.repos.d]# systemctl status libvirtd
● libvirtd.service - Virtualization daemon
   Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2019-09-26 14:37:09 CST; 18min ago
     Docs: man:libvirtd(8)
           https://libvirt.org
 Main PID: 42596 (libvirtd)
    Tasks: 19 (limit: 32768)
   CGroup: /system.slice/libvirtd.service
           ├─ 3501 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf --leasefile-ro --dhcp-script=/...
           ├─ 3503 /usr/sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/default.conf --leasefile-ro --dhcp-script=/...
           └─42596 /usr/sbin/libvirtd

Sep 26 14:37:09 bogon systemd[1]: Starting Virtualization daemon...
Sep 26 14:37:09 bogon systemd[1]: Started Virtualization daemon.
Sep 26 14:37:10 bogon dnsmasq[3501]: read /etc/hosts - 2 addresses
Sep 26 14:37:10 bogon dnsmasq[3501]: read /var/lib/libvirt/dnsmasq/default.addnhosts - 0 addresses
Sep 26 14:37:10 bogon dnsmasq-dhcp[3501]: read /var/lib/libvirt/dnsmasq/default.hostsfile

 

進入/etc/sysconfig/network-scripts,將em2網卡備份

 修改em2網卡

TYPE=Ethernet
BRIDGE=br0  # 新加的
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=em2
UUID=0cd14e14-7382-4e79-b607-d72ca5594041
DEVICE=em2
ONBOOT=yes
#HWADDR=44:A8:42:4A:BF:3C

創建br0網卡寫如下內容,或將em2網卡的配置文件復制一份給br0網卡並修改

TYPE=Bridge 
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=br0
#UUID=0cd14e14-7382-4e79-b607-d72ca5594041
DEVICE=br0
ONBOOT=yes                                       
IPADDR="192.168.13.223"
PREFIX="24"
GATEWAY="192.168.13.1"

4 安裝虛擬機

 virt-install --name=node9 --memory=14000,maxmemory=14336 --vcpus=6,maxvcpus=5 --os-type=linux --os-variant=rhel7 --location=/iso/CentOS-7-x86_64-DVD-1908.iso --disk path=/kvm/node9.img,size=1500 --bridge=br0 --graphics=none --console=pty,target_type=serial  --extra-args="console=tty0 console=ttyS0"


命令說明:
--name 指定虛擬機的名稱
--memory 指定分配給虛擬機的內存資源大小
maxmemory 指定可調節的最大內存資源大小,因為KVM支持熱調整虛擬機的資源
--vcpus 指定分配給虛擬機的CPU核心數量
maxvcpus 指定可調節的最大CPU核心數量
--os-type 指定虛擬機安裝的操作系統類型
--os-variant 指定系統的發行版本
--location 指定ISO鏡像文件所在的路徑,支持使用網絡資源路徑,也就是說可以使用URL
--disk path 指定虛擬硬盤所存放的路徑及名稱,size 則是指定該硬盤的可用大小,單位是G
--bridge 指定使用哪一個橋接網卡,也就是說使用橋接的網絡模式
--graphics 指定是否開啟圖形
--console 定義終端的屬性,target_type 則是定義終端的類型
--extra-args 定義終端額外的參數

 

 開始安裝后,正常的情況下會進入到這樣一個界面:

 

 

這是讓你配置語言、時區、安裝源、網絡、密碼等信息,就和我們在VMware里安裝CentOS虛擬機是一樣的,只不過這個是命令行形式,而VMware里是圖形界面罷了。

首先設置語言,按數字1,回車進入以下界面:

 

 

例如我要選Chinese就按數字68並回車即可,回車之后會讓你選擇是中文簡體還是繁體,也是按下相應的數字並回車即可:

 

配置完成之后又會再次回到配置界面,這次我們來設置時區:

 

 

 

 

 設置系統安裝盤:

 

 

 

 

 

 最后開始安裝系統:

 

 安裝完成之后就會停止在以下這個界面,按一下回車即可,這時就會重啟安裝完的系統:

 

 

5 虛擬機管理

查看虛擬機配置文件

[root@localhost ~]# ls /etc/libvirt/qemu/
networks  node1.xml
[root@localhost ~]# ls /etc/libvirt/qemu/networks/
autostart  default.xml
[root@localhost ~]# ls /etc/libvirt/qemu/networks/autostart/
default.xml
[root@localhost ~]# 

重啟成功之后就會入到登錄界面,可以看到我這里是成功登錄的:

 

 這時我們是處於一個虛擬終端的,因為安裝了虛擬機,如果要退出來的話,應該說是切出來,按 Ctrl + ] 即可。

dhclient eth0 # 為虛擬機分配ip
編輯網卡配置文件將ip設置為靜態的
systemctl  restart network # 重啟網絡服務

安裝好虛擬機的配置

iptables -F
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
sed -i s/SELINUX=enforcing/SELINUX=disabled/ /etc/selinux/config
systemctl  stop NetworkManager
systemctl  disable  NetworkManager
yum -y install vim

管理虛擬機的常用命令

# virsh list                     //查看已打開虛擬機列表

# virsh list --all                //查看所有虛擬機列表

# virsh version                //查看virsh版本號

# virsh start node1            //啟動node1虛擬機

# virsh shutdown node1      //關機node1虛擬機

# virsh destroy node1         //強制關機node1虛擬機

# virsh dumpxml node1 > node1.xml //導出node1虛擬機配置文件

# virsh undefine node1       //取消node1定義

# virsh define node1.xml     //重新定義node1

# virsh autostart node1       //設置開機自啟動node1

# virt-clone -o node1 -n node1-clone-f  /data/images/node1-clone.img //克隆虛擬機

[root@localhost ~]# virsh console node1  # 進入指定的虛擬機,進入的時候還需要按一下回車

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM