国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

kvm虛擬化

這篇具有很好參考價值的文章主要介紹了kvm虛擬化。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

kvm虛擬化

1. 虛擬化介紹

虛擬化是云計算的基礎(chǔ)。簡單的說,虛擬化使得在一臺物理的服務(wù)器上可以跑多臺虛擬機(jī),虛擬機(jī)共享物理機(jī)的 CPU、內(nèi)存、IO 硬件資源,但邏輯上虛擬機(jī)之間是相互隔離的。

物理機(jī)我們一般稱為宿主機(jī)(Host),宿主機(jī)上面的虛擬機(jī)稱為客戶機(jī)(Guest)。

那么 Host 是如何將自己的硬件資源虛擬化,并提供給 Guest 使用的呢?
這個主要是通過一個叫做 Hypervisor 的程序?qū)崿F(xiàn)的。

根據(jù) Hypervisor 的實現(xiàn)方式和所處的位置,虛擬化又分為兩種:

  • 全虛擬化
  • 半虛擬化

全虛擬化:
Hypervisor 直接安裝在物理機(jī)上,多個虛擬機(jī)在 Hypervisor 上運行。Hypervisor 實現(xiàn)方式一般是一個特殊定制的 Linux 系統(tǒng)。Xen 和 VMWare 的 ESXi 都屬于這個類型
kvm虛擬化,linux,linux,運維

半虛擬化:
物理機(jī)上首先安裝常規(guī)的操作系統(tǒng),比如 Redhat、Ubuntu 和 Windows。Hypervisor 作為 OS 上的一個程序模塊運行,并對管理虛擬機(jī)進(jìn)行管理。KVM、VirtualBox 和 VMWare Workstation 都屬于這個類型
kvm虛擬化,linux,linux,運維

理論上講:
全虛擬化一般對硬件虛擬化功能進(jìn)行了特別優(yōu)化,性能上比半虛擬化要高;
半虛擬化因為基于普通的操作系統(tǒng),會比較靈活,比如支持虛擬機(jī)嵌套。嵌套意味著可以在KVM虛擬機(jī)中再運行KVM。

2. kvm介紹

kVM 全稱是 Kernel-Based Virtual Machine。也就是說 KVM 是基于 Linux 內(nèi)核實現(xiàn)的。
KVM有一個內(nèi)核模塊叫 kvm.ko,只用于管理虛擬 CPU 和內(nèi)存。

那 IO 的虛擬化,比如存儲和網(wǎng)絡(luò)設(shè)備則是由 Linux 內(nèi)核與Qemu來實現(xiàn)。

作為一個 Hypervisor,KVM 本身只關(guān)注虛擬機(jī)調(diào)度和內(nèi)存管理這兩個方面。IO 外設(shè)的任務(wù)交給 Linux 內(nèi)核和 Qemu。

大家在網(wǎng)上看 KVM 相關(guān)文章的時候肯定經(jīng)常會看到 Libvirt 這個東西。

Libvirt 就是 KVM 的管理工具。

其實,Libvirt 除了能管理 KVM 這種 Hypervisor,還能管理 Xen,VirtualBox 等。

Libvirt 包含 3 個東西:后臺 daemon 程序 libvirtd、API 庫和命令行工具 virsh

  • libvirtd是服務(wù)程序,接收和處理 API 請求;
  • API 庫使得其他人可以開發(fā)基于 Libvirt 的高級工具,比如 virt-manager,這是個圖形化的 KVM 管理工具;
  • virsh 是我們經(jīng)常要用的 KVM 命令行工具

3. kvm部署

環(huán)境說明:

系統(tǒng)類型 IP
RHEL7 172.16.12.128

3.1 kvm安裝

部署前請確保你的CPU虛擬化功能已開啟。分為兩種情況:

  • 虛擬機(jī)要關(guān)機(jī)設(shè)置CPU虛擬化
  • 物理機(jī)要在BIOS里開啟CPU虛擬化
//關(guān)閉防火墻與SELINUX
[root@kvm ~]# systemctl stop firewalld
[root@kvm ~]# systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
[root@kvm ~]# setenforce 0
[root@kvm ~]# sed -ri 's/^(SELINUX=).*/\1disabled/g' /etc/selinux/config
[root@localhost ~]# reboot

//配置網(wǎng)絡(luò)源
[root@kvm yum.repos.d]# curl -o /etc/yum.repos.d/CentOS7-Base-163.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo
[root@kvm ~]# sed -i 's/\$releasever/7/g' /etc/yum.repos.d/CentOS7-Base-163.repo
[root@kvm ~]# sed -i 's/^enabled=.*/enabled=1/g' /etc/yum.repos.d/CentOS7-Base-163.repo
[root@kvm ~]# yum -y install epel-release vim wget net-tools unzip zip gcc gcc-c++
安裝過程略.....

//驗證CPU是否支持KVM;如果結(jié)果中有vmx(Intel)或svm(AMD)字樣,就說明CPU的支持的
[root@kvm ~]# egrep -o 'vmx|svm' /proc/cpuinfo
vmx
vmx
vmx
vmx

//kvm安裝
[root@kvm ~]# yum -y install qemu-kvm qemu-kvm-tools qemu-img virt-manager libvirt libvirt-python libvirt-client virt-install virt-viewer bridge-utils libguestfs-tools
安裝過程略......


//因為虛擬機(jī)中網(wǎng)絡(luò),我們一般都是和公司的其他服務(wù)器是同一個網(wǎng)段,所以我們需要把 \
KVM服務(wù)器的網(wǎng)卡配置成橋接模式。這樣的話KVM的虛擬機(jī)就可以通過該橋接網(wǎng)卡和公司內(nèi)部 \
其他服務(wù)器處于同一網(wǎng)段
//此處我的網(wǎng)卡是ens33,所以用br0來橋接ens33網(wǎng)卡
[root@kvm ~]# cd /etc/sysconfig/network-scripts/
[root@kvm network-scripts]# ls
ifcfg-ens33  ifdown-isdn      ifup          ifup-plip      ifup-tunnel
ifcfg-lo     ifdown-post      ifup-aliases  ifup-plusb     
.....此處內(nèi)容省略
[root@kvm network-scripts]# cp ifcfg-ens33 ifcfg-br0
[root@kvm network-scripts]# cat ifcfg-br0
TYPE=Bridge
DEVICE=br0
NM_CONTROLLED=no
BOOTPROTO=static
NAME=br0
ONBOOT=yes
IPADDR=192.168.160.109
NETMASK=255.255.255.0
GATEWAY=192.168.160.1
DNS1=114.114.114.114
DNS2=8.8.8.8
[root@kvm network-scripts]# cat ifcfg-ens33
TYPE=Ethernet
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
ONBOOT=yes
BRIDGE=br0
NM_CONTROLLED=no

//重啟網(wǎng)絡(luò)
[root@kvm ~]# systemctl restart network
[root@kvm ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UP qlen 1000
    link/ether 00:0c:29:4c:50:b4 brd ff:ff:ff:ff:ff:ff
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN qlen 1000
    link/ether 52:54:00:60:a8:ea brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
       valid_lft forever preferred_lft forever
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN qlen 1000
    link/ether 52:54:00:60:a8:ea brd ff:ff:ff:ff:ff:ff
5: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP qlen 1000
    link/ether 72:63:57:0a:ca:76 brd ff:ff:ff:ff:ff:ff
    inet 192.168.160.109/24 brd 192.168.160.255 scope global br0
       valid_lft forever preferred_lft forever
    inet6 fe80::7063:57ff:fe0a:ca76/64 scope link
       valid_lft forever preferred_lft forever
       

//啟動服務(wù)
[root@kvm ~]# systemctl start libvirtd
[root@kvm ~]# systemctl enable libvirtd

//驗證安裝結(jié)果
[root@kvm ~]# lsmod|grep kvm
kvm_intel             170086  0
kvm                   566340  1 kvm_intel
irqbypass              13503  1 kvm

//測試并驗證安裝結(jié)果
[root@kvm ~]# virsh -c qemu:///system list
 Id    Name                           State
----------------------------------------------------
[root@kvm ~]# virsh --version
3.9.0
[root@kvm ~]# virt-install --version
1.4.3
[root@kvm ~]# ln -s /usr/libexec/qemu-kvm /usr/bin/qemu-kvm
[root@kvm ~]# ll /usr/bin/qemu-kvm
lrwxrwxrwx 1 root root 21 Oct 18 10:57 /usr/bin/qemu-kvm -> /usr/libexec/qemu-kvm
[root@kvm ~]# lsmod |grep kvm
kvm_intel             170086  0
kvm                   566340  1 kvm_intel
irqbypass              13503  1 kvm

//查看網(wǎng)橋信息
[root@kvm ~]# brctl show
bridge name     bridge id               STP enabled     interfaces
br0             8000.000c294c50b4       no              ens33
virbr0          8000.52540060a8ea       yes             virbr0-nic

3.2 kvm web管理界面安裝

kvm 的 web 管理界面是由 webvirtmgr 程序提供的。

//安裝依賴包
[root@kvm ~]# yum -y install git python-pip libvirt-python libxml2-python python-websockify supervisor nginx python-devel

//從github上下載webvirtmgr代碼
[root@kvm ~]# cd /usr/local/src/
[root@kvm src]# git clone git://github.com/retspen/webvirtmgr.git
Cloning into 'webvirtmgr'...
remote: Enumerating objects: 5730, done.
remote: Total 5730 (delta 0), reused 0 (delta 0), pack-reused 5730
Receiving objects: 100% (5730/5730), 3.01 MiB | 39.00 KiB/s, done.
Resolving deltas: 100% (3688/3688), done.

//安裝webvirtmgr
[root@kvm src]# cd webvirtmgr/
[root@kvm webvirtmgr]# pip install -r requirements.txt
Collecting django==1.5.5 (from -r requirements.txt (line 1))
  Downloading https://files.pythonhosted.org/packages/38/49/93511c5d3367b6b21fc2995a0e53399721afc15e4cd6eb57be879ae13ad4/Django-1.5.5.tar.gz (8.1MB)
    57% |██████████████████▌             | 4.7MB 38kB/s eta 0:01:28 
.....此處省略安裝步驟

//檢查sqlite3是否安裝
[root@kvm webvirtmgr]# python
Python 2.7.5 (default, May  3 2017, 07:55:04)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-14)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sqlite3
>>> exit()

//初始化帳號信息
[root@kvm webvirtmgr]# python manage.py syncdb
WARNING:root:No local_settings file found.
Creating tables ...
Creating table auth_permission
Creating table auth_group_permissions
Creating table auth_group
Creating table auth_user_groups
Creating table auth_user_user_permissions
Creating table auth_user
Creating table django_content_type
Creating table django_session
Creating table django_site
Creating table servers_compute
Creating table instance_instance
Creating table create_flavor

You just installed Django's auth system, which means you don't have any superusers defined.
Would you like to create one now? (yes/no): yes     //問你是否創(chuàng)建超級管理員帳號
Username (leave blank to use 'root'):   //指定超級管理員帳號用戶名,默認(rèn)留空為root
Email address: sean1002@126.com     //設(shè)置超級管理員郵箱
Password:       //設(shè)置超級管理員密碼
Password (again):       //再次輸入超級管理員密碼
Superuser created successfully.
Installing custom SQL ...
Installing indexes ...
Installed 6 object(s) from 1 fixture(s)


//拷貝web網(wǎng)頁至指定目錄
[root@kvm webvirtmgr]# mkdir /var/www
[root@kvm webvirtmgr]# cp -r /usr/local/src/webvirtmgr /var/www/
[root@kvm webvirtmgr]# chown -R nginx.nginx /var/www/webvirtmgr/

//生成密鑰
[root@kvm ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:CQoZtso2M5Uo39lKvjZboncqakQ69iJt5wnjiJKZNhw root@kvm
The key's randomart image is:
+---[RSA 2048]----+
|  o              |
| ..+.            |
|..+o  .          |
|o+.o + . .       |
|+*. = . S        |
|+E+o .           |
|+*= + .          |
|BO+===.          |
|Oo=**=           |
+----[SHA256]-----+
//由于這里webvirtmgr和kvm服務(wù)部署在同一臺機(jī)器,所以這里本地信任。如果kvm部署在其他機(jī)器,那么這個是它的ip
[root@kvm ~]# ssh-copy-id 192.168.160.109
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
The authenticity of host '192.168.160.109 (192.168.160.109)' can't be established.
ECDSA key fingerprint is SHA256:UszC1ZeHM7xw/uefVkJoXW6XgRw+Jl51tAXLjFERclE.
ECDSA key fingerprint is MD5:b3:f1:02:b8:01:8e:53:a7:87:09:c0:75:24:4c:ad:88.
Are you sure you want to continue connecting (yes/no)? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@192.168.160.109's password:

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh '192.168.160.109'"
and check to make sure that only the key(s) you wanted were added.
//配置端口轉(zhuǎn)發(fā)
[root@kvm ~]# ssh 192.168.160.109 -L localhost:8000:localhost:8000 -L localhost:6080:localhost:60
Last login: Thu Oct 18 08:26:40 2018 from 192.168.160.36
[root@kvm ~]# ss -antl
State       Recv-Q Send-Q Local Address:Port               Peer Address:Port
LISTEN      0      128              *:111                          *:*
LISTEN      0      5      192.168.122.1:53                           *:*
LISTEN      0      128              *:22                           *:*
LISTEN      0      100      127.0.0.1:25                           *:*
LISTEN      0      128      127.0.0.1:6080                         *:*
LISTEN      0      128      127.0.0.1:8000                         *:*
LISTEN      0      128             :::111                         :::*
LISTEN      0      128             :::22                          :::*
LISTEN      0      100            ::1:25                          :::*
LISTEN      0      128            ::1:6080                        :::*
LISTEN      0      128            ::1:8000                        :::* 




//配置nginx
[root@kvm ~]# vim /etc/nginx/nginx.conf
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

include /usr/share/nginx/modules/*.conf;

events {
    worker_connections 1024;
}

http {
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile            on;
    tcp_nopush          on;
    tcp_nodelay         on;
    keepalive_timeout   65;
    types_hash_max_size 2048;

    include             /etc/nginx/mime.types;
    default_type        application/octet-stream;

    include /etc/nginx/conf.d/*.conf;

    server {
        listen       80;
        server_name  localhost;

        include /etc/nginx/default.d/*.conf;

        location / {
            root html;
            index index.html index.htm;
        }

        error_page 404 /404.html;
            location = /40x.html {
        }

        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }
}


[root@kvm ~]# vim /etc/nginx/conf.d/webvirtmgr.conf
server {
    listen 80 default_server;

    server_name $hostname;
    #access_log /var/log/nginx/webvirtmgr_access_log;

    location /static/ {
        root /var/www/webvirtmgr/webvirtmgr;
        expires max;
    }

    location / {
        proxy_pass http://127.0.0.1:8000;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-for $proxy_add_x_forwarded_for;
        proxy_set_header Host $host:$server_port;
        proxy_set_header X-Forwarded-Proto $remote_addr;
        proxy_connect_timeout 600;
        proxy_read_timeout 600;
        proxy_send_timeout 600;
        client_max_body_size 1024M;
    }
}

//確保bind綁定的是本機(jī)的8000端口
[root@kvm ~]# vim /var/www/webvirtmgr/conf/gunicorn.conf.py
.....此處省略N行
bind = '0.0.0.0:8000'     //確保此處綁定的是本機(jī)的8000端口,這個在nginx配置中定義了,被代理的端口
backlog = 2048
.....此處省略N行

//重啟nginx
[root@kvm ~]# systemctl restart nginx
[root@kvm ~]# ss -antl
State       Recv-Q Send-Q Local Address:Port               Peer Address:Port
LISTEN      0      128              *:111                          *:*
LISTEN      0      128              *:80                           *:*
LISTEN      0      5      192.168.122.1:53                           *:*
LISTEN      0      128              *:22                           *:*
LISTEN      0      100      127.0.0.1:25                           *:*
LISTEN      0      128      127.0.0.1:6080                         *:*
LISTEN      0      128      127.0.0.1:8000                         *:*
LISTEN      0      128             :::111                         :::*
LISTEN      0      128             :::22                          :::*
LISTEN      0      100            ::1:25                          :::*
LISTEN      0      128            ::1:6080                        :::*
LISTEN      0      128            ::1:8000                        :::*



//設(shè)置supervisor
[root@kvm ~]# vim /etc/supervisord.conf
.....此處省略上面的內(nèi)容,在文件最后加上以下內(nèi)容
[program:webvirtmgr]
command=/usr/bin/python2 /var/www/webvirtmgr/manage.py run_gunicorn -c /var/www/webvirtmgr/conf/gunicorn.conf.py
directory=/var/www/webvirtmgr
autostart=true
autorestart=true
logfile=/var/log/supervisor/webvirtmgr.log
log_stderr=true
user=nginx

[program:webvirtmgr-console]
command=/usr/bin/python2 /var/www/webvirtmgr/console/webvirtmgr-console
directory=/var/www/webvirtmgr
autostart=true
autorestart=true
stdout_logfile=/var/log/supervisor/webvirtmgr-console.log
redirect_stderr=true
user=nginx



//啟動supervisor并設(shè)置開機(jī)自啟
[root@kvm ~]# systemctl start supervisord
[root@kvm ~]# systemctl enable supervisord
Created symlink from /etc/systemd/system/multi-user.target.wants/supervisord.service to /usr/lib/systemd/system/supervisord.service.
[root@kvm ~]# systemctl status supervisord
● supervisord.service - Process Monitoring and Control Daemon
   Loaded: loaded (/usr/lib/systemd/system/supervisord.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2018-10-18 11:59:33 CST; 25s ago
 Main PID: 17918 (supervisord)
   CGroup: /system.slice/supervisord.service
           └─17918 /usr/bin/python /usr/bin/supervisord -c /etc/supervisord.conf

Oct 18 11:59:33 kvm systemd[1]: Starting Process Monitoring and Control Daemon...
Oct 18 11:59:33 kvm systemd[1]: Started Process Monitoring and Control Daemon.

[root@kvm webvirtmgr]# ss -antl
State       Recv-Q Send-Q Local Address:Port               Peer Address:Port
LISTEN      0      128              *:111                          *:*
LISTEN      0      128              *:80                           *:*
LISTEN      0      5      192.168.122.1:53                           *:*
LISTEN      0      128              *:22                           *:*
LISTEN      0      100      127.0.0.1:25                           *:*
LISTEN      0      128              *:8000                         *:*
LISTEN      0      100              *:6080                         *:*
LISTEN      0      128             :::111                         :::*
LISTEN      0      128             :::22                          :::*
LISTEN      0      100            ::1:25                          :::*

//配置nginx用戶
[root@kvm home]# su - nginx -s /bin/bash
-bash-4.2$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/var/lib/nginx/.ssh/id_rsa):
Created directory '/var/lib/nginx/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /var/lib/nginx/.ssh/id_rsa.
Your public key has been saved in /var/lib/nginx/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:rdbmW/YIXxAJBzPsd9q9eKHPjWtSZ5EQC5li3tkczYI nginx@localhost.localdomain
The key's randomart image is:
+---[RSA 2048]----+
|         .=o=.+  |
|         o.E.=.o |
|        o.o *.+ .|
|         o.o.+.o |
|        S ...+ ..|
|         o  ..o.+|
|        o + o.+oo|
|       . o =.*o+.|
|          o.oo*+.|
+----[SHA256]-----+

-bash-4.2$ touch ~/.ssh/config && echo -e "StrictHostKeyChecking=no\nUserKnownHostsFile=/dev/null" >> ~/.ssh/config
-bash-4.2$ chmod 0600 ~/.ssh/config

-bash-4.2$ ssh-copy-id root@192.168.160.109
/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/var/lib/nginx/.ssh/id_rsa.pub"
/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
Warning: Permanently added '192.168.160.109' (ECDSA) to the list of known hosts.
root@192.168.160.109's password:

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh 'root@192.168.160.109'"
and check to make sure that only the key(s) you wanted were added.

-bash-4.2$ exit
logout

[root@kvm ~]# vim /etc/polkit-1/localauthority/50-local.d/50-libvirt-remote-access.pkla
[Remote libvirt SSH access]
Identity=unix-user:root
Action=org.libvirt.unix.manage
ResultAny=yes
ResultInactive=yes
ResultActive=yes

[root@kvm ~]# chown -R root.root /etc/polkit-1/localauthority/50-local.d/50-libvirt-remote-access.pkla
[root@kvm ~]# systemctl restart nginx
[root@kvm ~]# systemctl restart libvirtd

3.3 kvm web界面管理

通過ip地址在瀏覽器上訪問kvm,例如我這里就是:http://192.168.160.109/login
kvm虛擬化,linux,linux,運維

3.3.1 kvm連接管理

創(chuàng)建SSH連接:
kvm虛擬化,linux,linux,運維
kvm虛擬化,linux,linux,運維
kvm虛擬化,linux,linux,運維

3.3.2 kvm存儲管理

創(chuàng)建存儲:
kvm虛擬化,linux,linux,運維
kvm虛擬化,linux,linux,運維

進(jìn)入存儲:
kvm虛擬化,linux,linux,運維
kvm虛擬化,linux,linux,運維

通過遠(yuǎn)程連接軟件上傳ISO鏡像文件至存儲目錄/var/lib/libvirt/images/

[root@kvm ~]# cd /var/lib/libvirt/images/
[root@kvm images]# ls
[root@kvm images]#

Upload SCP
CentOS-7-x86_64-DVD-1804.iso          (4263.00 MB, 8:45 min = 8.12 MB/sec)


[root@kvm images]# ls
CentOS-7-x86_64-DVD-1804.iso

在 web 界面查看ISO鏡像是否存在
kvm虛擬化,linux,linux,運維

創(chuàng)建系統(tǒng)安裝鏡像
kvm虛擬化,linux,linux,運維
kvm虛擬化,linux,linux,運維

添加成功如下圖所示
kvm虛擬化,linux,linux,運維

3.3.3 kvm網(wǎng)絡(luò)管理

添加橋接網(wǎng)絡(luò)
kvm虛擬化,linux,linux,運維
kvm虛擬化,linux,linux,運維
kvm虛擬化,linux,linux,運維

3.3.4 實例管理

實例(虛擬機(jī))創(chuàng)建
kvm虛擬化,linux,linux,運維
kvm虛擬化,linux,linux,運維
kvm虛擬化,linux,linux,運維

虛擬機(jī)插入光盤
kvm虛擬化,linux,linux,運維

設(shè)置在 web 上訪問虛擬機(jī)的密碼
kvm虛擬化,linux,linux,運維

啟動虛擬機(jī)
kvm虛擬化,linux,linux,運維
kvm虛擬化,linux,linux,運維

虛擬機(jī)安裝
kvm虛擬化,linux,linux,運維
虛擬機(jī)安裝步驟就是安裝系統(tǒng)的步驟,此處就不再贅述

4.故障案例

4.1 案例1

web界面配置完成后可能會出現(xiàn)以下錯誤界面
kvm虛擬化,linux,linux,運維
解決方法是安裝novnc并通過novnc_server啟動一個vnc

[root@localhost ~]# ll /etc/rc.local
lrwxrwxrwx. 1 root root 13 Aug  6  2018 /etc/rc.local -> rc.d/rc.local
[root@localhost ~]# ll /etc/rc.d/rc.local
-rw-r--r-- 1 root root 513 Mar 11 22:35 /etc/rc.d/rc.local
[root@localhost ~]# chmod +x /etc/rc.d/rc.local
[root@localhost ~]# ll /etc/rc.d/rc.local
-rwxr-xr-x 1 root root 513 Mar 11 22:35 /etc/rc.d/rc.local

[root@localhost ~]# vim /etc/rc.d/rc.local
......此處省略N行
# that this script will be executed during boot.

touch /var/lock/subsys/local
nohup novnc_server 172.16.12.128:5920 &

[root@localhost ~]# . /etc/rc.d/rc.local

做完以上操作后再次訪問即可正常訪問
kvm虛擬化,linux,linux,運維

4.2 案例2

第一次通過web訪問kvm時可能會一直訪問不了,一直轉(zhuǎn)圈,而命令行界面一直報錯(too many open files)

此時需要對nginx進(jìn)行配置

[root@localhost ~]# vim /etc/nginx/nginx.conf
....此處省略N行
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;
worker_rlimit_nofile 655350;    //添加此行配置

# Load dynamic modules. See /usr/share/nginx/README.dynamic.
....此處省略N行

[root@localhost ~]# systemctl restart nginx

然后對系統(tǒng)參數(shù)進(jìn)行設(shè)置文章來源地址http://www.zghlxwxcb.cn/news/detail-798807.html

[root@localhost ~]# vim /etc/security/limits.conf
....此處省略N行
# End of file
* soft nofile 655350
* hard nofile 655350
l

做完以上操作后再次訪問即可正常訪問
[外鏈圖片轉(zhuǎn)存中…(img-R7P6es5G-1705391620286)]

4.2 案例2

第一次通過web訪問kvm時可能會一直訪問不了,一直轉(zhuǎn)圈,而命令行界面一直報錯(too many open files)

此時需要對nginx進(jìn)行配置

[root@localhost ~]# vim /etc/nginx/nginx.conf
....此處省略N行
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;
worker_rlimit_nofile 655350;    //添加此行配置

# Load dynamic modules. See /usr/share/nginx/README.dynamic.
....此處省略N行

[root@localhost ~]# systemctl restart nginx

然后對系統(tǒng)參數(shù)進(jìn)行設(shè)置

[root@localhost ~]# vim /etc/security/limits.conf
....此處省略N行
# End of file
* soft nofile 655350
* hard nofile 655350

到了這里,關(guān)于kvm虛擬化的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 01 openEuler虛擬化-KVM虛擬化簡介

    01 openEuler虛擬化-KVM虛擬化簡介

    1.1 簡介 在計算機(jī)技術(shù)中,虛擬化是一種資源管理技術(shù),它將計算機(jī)的各種實體資源(處理器、內(nèi)存、磁盤、網(wǎng)絡(luò)適配器等)予以抽象、轉(zhuǎn)換后呈現(xiàn),并可分割、組合為一個或多個計算機(jī)配置環(huán)境。這種資源管理技術(shù)打破了實體結(jié)構(gòu)不可分割的障礙,使這些資源在虛擬化后不

    2023年04月26日
    瀏覽(25)
  • [ 云計算相關(guān) ] KVM虛擬化平臺windows虛擬機(jī)遷移到openstack虛擬化平臺(KVM虛擬化環(huán)境中Windows虛擬機(jī)安裝Virtio驅(qū)動程序)

    [ 云計算相關(guān) ] KVM虛擬化平臺windows虛擬機(jī)遷移到openstack虛擬化平臺(KVM虛擬化環(huán)境中Windows虛擬機(jī)安裝Virtio驅(qū)動程序)

    ????? 博主介紹:大家好,我是 _PowerShell ,很高興認(rèn)識大家~ ?主攻領(lǐng)域:【滲透領(lǐng)域】【數(shù)據(jù)通信】 【通訊安全】 【web安全】【面試分析】 ??點贊?評論?收藏 == 養(yǎng)成習(xí)慣(一鍵三連)?? ??歡迎關(guān)注??一起學(xué)習(xí)??一起討論??一起進(jìn)步??文末有彩蛋 ??作者水平有

    2024年02月02日
    瀏覽(25)
  • 【KVM虛擬化】· KVM中的網(wǎng)絡(luò)

    【KVM虛擬化】· KVM中的網(wǎng)絡(luò)

    ? 目錄 ??虛擬機(jī)的網(wǎng)絡(luò)模式 ??網(wǎng)絡(luò)配置文件 ??virsh查看命令 ??基于NAT的虛擬網(wǎng)絡(luò) ??基于網(wǎng)橋的虛擬網(wǎng)絡(luò) ??基于隔離的虛擬網(wǎng)絡(luò) ??????博客主頁:大蝦好吃嗎的博客 ? ? ??專欄地址:KVM虛擬化專欄 基于NAT(Network Address Translation)的虛擬網(wǎng)絡(luò) 基于網(wǎng)橋(Bridge)的虛擬

    2024年02月06日
    瀏覽(20)
  • kvm虛擬化

    kvm虛擬化

    虛擬化是云計算的基礎(chǔ)。簡單的說,虛擬化使得在一臺物理的服務(wù)器上可以跑多臺虛擬機(jī),虛擬機(jī)共享物理機(jī)的 CPU、內(nèi)存、IO 硬件資源,但邏輯上虛擬機(jī)之間是相互隔離的。 物理機(jī)我們一般稱為宿主機(jī)(Host),宿主機(jī)上面的虛擬機(jī)稱為客戶機(jī)(Guest)。 那么 Host 是如何將自

    2024年01月17日
    瀏覽(27)
  • 【KVM虛擬化環(huán)境部署】

    【KVM虛擬化環(huán)境部署】

    1、裝系統(tǒng)時手動選擇安裝 2、CentOS 7 最小化安裝 安裝好CentOS 7后,去設(shè)置里面點擊處理器,將右邊虛擬化引擎勾上 添加一塊硬盤 分區(qū)并格式化 創(chuàng)建虛擬機(jī),本例使用iso鏡像 選擇鏡像路徑

    2024年02月12日
    瀏覽(28)
  • 什么是KVM虛擬化

    維基百科關(guān)于虛擬化的定義是:“In computing,virtualization refers to the act of creating a virtual(rather than actual)version of something,including virtual computer hardware platforms,storage devices,and computer network resources。”(在計算機(jī)領(lǐng)域,虛擬化指 創(chuàng)建某事物的虛擬(而非實際)版本,包括虛擬的

    2023年04月08日
    瀏覽(20)
  • KVM虛擬化ubuntu

    KVM虛擬化ubuntu

    KVM(Kernel-based Virtual Machine)是一種基于Linux內(nèi)核的虛擬化技術(shù),它將Linux內(nèi)核作為虛擬機(jī)的底層操作系統(tǒng),利用硬件虛擬化支持創(chuàng)建和管理虛擬機(jī)。KVM虛擬化技術(shù)被廣泛應(yīng)用于云計算、虛擬化服務(wù)器、虛擬化桌面等場景。 KVM虛擬化技術(shù)的主要特點包括: 1.硬件虛擬化支持:

    2024年02月10日
    瀏覽(14)
  • kvm網(wǎng)絡(luò)虛擬化介紹

    kvm網(wǎng)絡(luò)虛擬化介紹

    在QEMU中,主要給出了客戶機(jī)提供了4種不同的網(wǎng)絡(luò)配置方案: 1、基于網(wǎng)橋(Bridge)的虛擬化網(wǎng)卡模式 2、基于NAT的虛擬網(wǎng)絡(luò)模式 3、QEMU內(nèi)置的用戶網(wǎng)絡(luò)模式 4、直接分配網(wǎng)絡(luò)設(shè)置模式 網(wǎng)橋和NAT是基于linux-bridge實現(xiàn)的軟件虛擬網(wǎng)絡(luò)模式,QEMU是QEMU軟件虛擬的網(wǎng)絡(luò)模式,第四種網(wǎng)絡(luò)模

    2024年02月14日
    瀏覽(19)
  • 虛擬化技術(shù)KVM入門學(xué)習(xí)

    虛擬化技術(shù)KVM入門學(xué)習(xí)

    ??虛擬化[Virtualization]技術(shù)最早出現(xiàn)在 20 世紀(jì) 60 年代的 IBM ?型機(jī)系統(tǒng),在70年代的 System370 系列中逐漸流?起來,這些機(jī)器通過?種叫虛擬機(jī)監(jiān)控器[Virtual Machine Monitor,VMM]的程序在物理硬件之上?成許多可以運?獨?操作系統(tǒng)軟件的虛擬機(jī)[Virtual Machine]實例。隨著近年多核

    2024年02月10日
    瀏覽(18)
  • KVM虛擬化基本操作

    KVM虛擬化基本操作

    虛擬化軟件是可以讓一臺物理主機(jī)建立與執(zhí)行一至多個虛擬化環(huán)境的軟件,虛擬化將硬件、操作系統(tǒng)和應(yīng)用程序一同封裝一個可遷移的虛擬機(jī)檔案文件中。 安裝位置分類 目前從Hypervisor(虛擬機(jī)管理程序)安裝位置分類,虛擬化層面包括安裝在硬件層上、安裝在宿主操作系統(tǒng)層

    2024年01月25日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包