Linux에서 kvm 가상 머신을 설정합니다. 고무 하이퍼바이저

우분투에서는 하이퍼바이저(관리자) 사용을 권장합니다. 가상 머신) KVM 및 libvirt 라이브러리를 관리 도구로 사용합니다. Libvirt에는 소프트웨어 API 세트와 맞춤형 제어 애플리케이션이 포함되어 있습니다. 가상 머신(VM) virt-manager(그래픽 인터페이스, GUI) 또는 virsh(명령줄, CLI). 처럼 대체 관리자 convirt(GUI) 또는 convirt2(웹 인터페이스)를 사용할 수 있습니다.

현재 Ubuntu에서는 KVM 하이퍼바이저만 공식적으로 지원됩니다. 이 하이퍼바이저는 커널 코드의 일부입니다. 운영 체제리눅스. Xen과 달리 KVM은 반가상화를 지원하지 않습니다. 즉, KVM을 사용하려면 CPU가 VT 기술을 지원해야 합니다. 터미널에서 다음 명령을 실행하여 프로세서가 이 기술을 지원하는지 확인할 수 있습니다.

결과적으로 다음 메시지가 표시되는 경우:

정보: /dev/kvm이 존재합니다. KVM 가속을 사용할 수 있습니다.

이는 KVM이 문제 없이 작동한다는 것을 의미합니다.

출구에서 다음 메시지를 받은 경우:

CPU가 KVM 확장을 지원하지 않습니다. KVM 가속을 사용할 수 없습니다.

그러면 가상 머신을 계속 사용할 수 있지만 속도가 훨씬 느려집니다.

    64비트 시스템을 게스트로 설치

    게스트 시스템에 2GB 이상의 RAM 할당

설치

Sudo apt-get install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils

이는 X가 없는 서버에 설치하는 것입니다. 즉, 그래픽 인터페이스가 포함되어 있지 않습니다. 명령어로 설치하시면 됩니다

Sudo apt-get 설치 virt-manager

그 후 메뉴에 "Virtual Machine Manager" 항목이 나타나고 높은 확률로 모든 것이 작동합니다. 문제가 계속 발생하면 영어 위키의 지침을 읽어야 합니다.

게스트 시스템 만들기

GUI를 사용하여 게스트 시스템을 생성하는 절차는 매우 간단합니다.

그러나 텍스트 모드는 설명할 수 있습니다.

qcow2

그래픽 인터페이스를 하드 디스크로 사용하여 시스템을 생성할 때 기존 이미지 파일이나 블록 장치를 선택하거나 생성하라는 메시지가 표시됩니다. 새로운 파일원시(RAW) 데이터로. 그러나 이것이 사용 가능한 유일한 파일 형식은 아닙니다. man qemu-img에 나열된 모든 디스크 유형 중에서 가장 유연하고 현대적인 디스크 유형은 qcow2입니다. 스냅샷, 암호화 및 압축을 지원합니다. 새 게스트를 생성하기 전에 생성되어야 합니다.

Qemu-img 생성 -o 사전 할당=메타데이터 -f qcow2 qcow2.img 20G

같은 사람 qemu-img에 따르면 메타데이터의 사전 할당(-o preallocation=metadata)은 처음에는 디스크를 조금 더 크게 만들지 만 다음을 제공합니다. 더 나은 성능이미지가 성장해야 하는 순간에 말이죠. 실제로 이 경우 이 옵션을 사용하면 불쾌한 버그를 피할 수 있습니다. 생성된 이미지처음에는 1MB 미만의 공간을 차지하며 필요에 따라 지정된 크기로 확장됩니다. 게스트 시스템은 이 최종 지정된 크기를 즉시 확인해야 하지만 설치 단계에서는 파일의 실제 크기를 볼 수 있습니다. 당연히 200KB 하드 드라이브에 설치하는 것을 거부합니다. 이 버그는 Ubuntu에만 국한된 것이 아니며 적어도 RHEL에는 나타납니다.

이미지 유형 외에도 IDE, SCSI 또는 Virtio Disk 등 연결 방법을 선택할 수 있습니다. 성능은 이 선택에 따라 달라집니다. 디스크 하위 시스템. 정해진 정답은 없으며 게스트 시스템에 할당될 작업에 따라 선택해야 합니다. 게스트 시스템이 "보기 위해" 생성된 경우 어떤 방법이든 가능합니다. 일반적으로 가상 머신의 병목 현상은 I/O이므로 부하가 높은 시스템을 생성할 때는 이 문제를 최대한 책임감 있게 처리해야 합니다.

KVM(커널 기반 가상 머신 또는 커널 기반 가상)은 무료 오픈 소스 가상화 소프트웨어입니다. 소스 코드. 여러 가상 머신(VM)을 생성할 수 있으며 각 VM에는 디스크, 프로세서, RAM 등과 같은 자체 가상 하드웨어가 있습니다. 이는 커널 버전 2.6.20에서 Linux 커널의 주요 부분에 포함되었습니다.

대안을 찾고 있다면 버추얼박스, KVM을 사용하는 것이 좋습니다. 우리는 또한 이 놀라운 가상화 소프트웨어를 개인적으로 사용합니다.

KVM 우분투 17.04 설치

KVM을 설치하려면 다음 전제조건이 필요합니다.

  1. 시스템 BIOS에서 가상화를 활성화합니다.
  2. 시스템 CPU가 가상화를 지원하는지 확인하세요. 아래 명령을 실행하세요.

egrep -c '(vmx|svm)' /proc/cpuinfo

위 명령의 출력을 얻으면 1 이상이면 프로세서가 가상화를 지원한다는 의미이고, 0 이하는 지원하지 않는다는 의미입니다.

3. 아키텍처 확인 우분투하나의 명령을 실행하여 16.04 LTS, 즉

X86_64는 64비트 커널입니다.
I386, i486, i586 또는 i686은 32비트 커널입니다.

32비트 OS는 특정 가상 머신에 대해 최대 2GB의 RAM으로 제한됩니다.
32비트 커널은 32비트 게스트 커널만 호스팅하는 반면, 64비트 커널은 32비트 및 64비트 게스트 OS를 모두 호스팅할 수 있습니다.

Ubuntu에 KVM을 설치하려면 다음 단계를 따르세요.

이 섹션에서는 KVM을 설치하는 단계를 기록합니다. 이전 게시물에서 우리는 배웠습니다. 아마도 이것은 당신에게도 흥미로울 것입니다.

1. KVM Ubuntu 17.04 및 기타 종속 패키지 설치

Ubuntu 17.04 LTS에서는 다음 명령을 사용할 수 있습니다. 적절한또는 둘 다 적절하게 얻으십시오. apt 또는 apt-get 명령을 사용하여 설치된 패키지에는 차이가 없으므로 여기까지는 괜찮습니다.

sudo 적절한 업데이트

sudo apt install qemu - kvm libvirt - 브리지 빈 - utils

2. KVM 소프트웨어의 새로운 사용자 및 그룹에 대해 알아보십시오.

패키지를 설치한 후 사용자 및 그룹 수가 일부 추가됩니다.

(A) 두 명의 사용자가 생성됩니다.
-libvirt-qemu
- libvirt-dnsmasq

sharad@linuxworld :~ $ tail - 2 /etc/passwd

libvirt - qemu : x : 64055 : 129 : Libvirt Qemu ,:/ var / lib / libvirt : /bin/ false

libvirt - dnsmasq : x : 121 : 130 : Libvirt Dnsmasq ,:/ var / lib / libvirt / dnsmasq : /bin/ false

sharad@linuxworld :~ $

B) 두 개의 그룹이 생성됩니다.

- kvm
-libvirtd

sharad@linuxworld :~ $ tail - 2 /etc/group

kvm : x : 129 :

libvirtd:x:130:sharad

sharad@linuxworld :~ $

사용된 소위 "charade"가 "libvirtd" 그룹의 구성원임을 알 수 있습니다. 이는 이 사용자가 KVM을 사용할 수 있음을 의미합니다.

3. KVM 설치를 확인하세요

KVM 설치를 확인하는 것은 매우 간단합니다. 명령을 실행하십시오 -

virsh - qemu 사용: ///시스템 목록

처음으로 오류가 표시됩니다.

오류: 하이퍼바이저에 연결하지 못했습니다.

오류: 소켓을 연결하지 못했습니다. '/var/run/libvirt/libvirt-sock':권한이 거부되었습니다

sharad@linuxworld :~ $

이 문제를 해결하려면 로그아웃한 후 데스크톱에 다시 로그인해야 합니다. 현재 사용자가 다시 로그인해야 함을 지정합니다.

로그인한 후 명령을 다시 실행하십시오. 이번에는 아래와 같은 결과를 얻어야 합니다. 가상 머신이 생성되지 않기 때문에 비어 있습니다.

sharad@linuxworld :~ $ virsh - qemu 사용 : ///시스템 목록

ID 이름 상태

—————————————————-

sharad@linuxworld :~ $

4. 가상 머신 매니저 설치

여기서는 libvirt를 통해 KVM 가상 머신을 관리하기 위한 데스크탑 애플리케이션인 Virtual Machine Manager를 사용하고 있습니다.

Virtual Machine Manager를 설치하려면 이 명령을 실행하세요.

sudo apt install virt - 관리자

Dash Home에 Virtual Machine Manager를 입력하여 열 수 있습니다. 아이콘을 클릭하면 애플리케이션이 열립니다.

다음을 통해 Virtual Machine Manager를 열려면 명령줄, 입력하다 -

virt-관리자

이전에는 Ubuntu 14.04 LTS Desktop에 KVM을 설치할 때 첫 번째 가상 머신을 생성하는 동안 문제가 발생했지만 매우 쉽게 해결했습니다. Ubuntu 16.04 LTS Desktop에서는 이러한 문제를 발견하지 못했습니다.

"KVM Ubuntu 17.04 설치" 주제에 대해 질문이 있는 경우 의견 양식으로 문의해 주세요. 귀하의 문제를 훨씬 더 빠르게 이해할 수 있도록 도와드리겠습니다.

오류를 발견하면 텍스트 부분을 강조 표시하고 다음을 클릭하세요. Ctrl+Enter.

시스템 관리자의 삶에는 처음부터 엔터프라이즈 인프라를 구축하거나 상속된 기존 인프라를 다시 만들어야 할 때가 있습니다. 이 기사에서는 LVM(논리 그룹)을 지원하는 Linux KVM 및 libvirt 기반 하이퍼바이저를 올바르게 배포하는 방법에 대해 설명합니다.

콘솔 및 GUI 유틸리티, 리소스 확장, 가상 머신을 다른 하이퍼바이저로 마이그레이션하는 등 하이퍼바이저 관리의 모든 복잡한 사항을 살펴보겠습니다.

먼저 가상화가 무엇인지 알아보겠습니다. 공식적인 정의는 다음과 같습니다. "가상화는 하드웨어 구현에서 추상화된 일련의 컴퓨팅 리소스 또는 논리적 조합을 제공하는 동시에 동일한 물리적 리소스에서 실행되는 컴퓨팅 프로세스를 서로 논리적으로 격리하는 것입니다." 즉, 인간의 관점에서 볼 때 하나의 강력한 서버를 보유하면 이를 여러 개의 중간 크기 서버로 전환할 수 있으며 각 서버는 다른 서버를 방해하지 않고 인프라에서 할당된 작업을 수행합니다.

기업 내 가상화와 긴밀히 협력하는 시스템 관리자, 해당 기술의 대가 및 거장은 두 개의 진영으로 나뉩니다. 일부는 첨단 기술을 고수하지만 엄청나게 비싼 Windows용 VMware를 사용합니다. 다른 사람들은 오픈 소스 매니아이고 무료 솔루션리눅스 VM 기반. 오랫동안 VMware의 장점을 나열할 수 있었지만 여기서는 Linux VM 기반의 가상화에 중점을 두겠습니다.

가상화 기술 및 하드웨어 요구 사항

이제 Intel VT와 AMD-V라는 두 가지 인기 있는 가상화 기술이 있습니다. Intel VT(Intel Virtualization Technology)는 실제 주소 지정 모드 가상화를 구현합니다. 해당 하드웨어 I/O 가상화를 VT-d라고 합니다. 이 기술은 흔히 VMX(Virtual Machine eXtension)라는 약어로 지칭됩니다. AMD는 자체 가상화 확장을 만들고 처음에는 이를 AMD Secure Virtual Machine(SVM)이라고 불렀습니다. 이 기술이 시장에 출시되자 AMD Virtualization(약칭: AMD-V)으로 알려지게 되었습니다.

들어가기 전에 하드웨어작동하려면 장비가 이 두 가지 기술 중 하나를 지원하는지 확인하세요. (제조업체 웹사이트에서 사양을 확인할 수 있습니다.) 가상화 지원이 가능한 경우 하이퍼바이저를 배포하기 전에 BIOS에서 활성화해야 합니다.

하이퍼바이저의 다른 요구 사항에는 종료 시 하이퍼바이저의 내결함성을 높이는 하드웨어 RAID(1, 5, 10)에 대한 지원이 포함됩니다. 하드 드라이브서비스가 중단되었습니다. 하드웨어 RAID가 지원되지 않으면 최후의 수단으로 소프트웨어를 사용할 수 있습니다. 하지만 RAID는 필수입니다!

이 문서에 설명된 솔루션은 세 개의 가상 머신을 호스팅하고 다음에서 성공적으로 실행됩니다. 최소 요건: 코어 2 쿼드 Q6600 / 8GB DDR2 PC6400 / 2 × 250GB HDD SATA(하드웨어 RAID 1).

하이퍼바이저 설치 및 구성

Debian Linux 9.6.0 - X64-86을 예로 들어 하이퍼바이저를 구성하는 방법을 보여 드리겠습니다. 원하는 Linux 배포판을 사용할 수 있습니다.

하드웨어 선택을 결정하고 최종적으로 배송되면 하이퍼바이저를 설치할 때가 됩니다. OS를 설치할 때 디스크 파티셔닝을 제외하고는 평소대로 모든 작업을 수행합니다. 경험이 부족한 관리자는 "자동으로 모두 분할" 옵션을 선택하는 경우가 많습니다. 디스크 공간 LVM을 사용하지 않고." 그러면 모든 데이터가 하나의 볼륨에 기록되는데 이는 여러 가지 이유로 좋지 않습니다. 첫째, 만약 HDD실패하면 모든 데이터가 손실됩니다. 둘째, 변화하라 파일 시스템많은 문제를 일으키게 됩니다.

일반적으로 불필요한 단계와 시간 낭비를 피하기 위해 LVM을 사용한 디스크 파티셔닝을 사용하는 것이 좋습니다.

논리 볼륨 관리자

LVM(논리 볼륨 관리자)은 Linux 및 OS/2에서 사용할 수 있는 하위 시스템으로, Device Mapper를 기반으로 구축되었습니다. 그 임무는 하나의 영역과 다른 영역을 제시하는 것입니다. 하드 드라이브또는 여러 하드 드라이브의 영역을 하나의 논리 볼륨으로 만듭니다. LVM은 물리 볼륨(PV - 물리 볼륨)에서 논리 볼륨 그룹(VG - 볼륨 그룹)을 생성합니다. 이는 차례로 논리 볼륨(LV - 논리 볼륨)으로 구성됩니다.

이제 커널 2.6 이상의 모든 Linux 배포판은 LVM2를 지원합니다. 커널 2.4가 설치된 OS에서 LVM2를 사용하려면 패치를 설치해야 합니다.

시스템이 하드 드라이브를 감지하면 하드 드라이브 파티션 관리자가 시작됩니다. 안내 - 전체 디스크를 사용하고 LVM을 설정합니다.


이제 볼륨 그룹을 설치할 디스크를 선택합니다.



시스템은 미디어 레이아웃 옵션을 제공합니다. "모든 파일을 하나의 파티션에 쓰기"를 선택하고 계속 진행하십시오.




변경 사항을 저장하면 하나의 논리 그룹과 두 개의 볼륨이 생성됩니다. 첫 번째는 루트 파티션이고 두 번째는 스왑 파일입니다. 여기에서 많은 사람들이 질문을 할 것입니다. 수동으로 마크업을 선택하고 LVM을 직접 생성해 보는 것은 어떨까요?

간단히 대답하겠습니다. 논리 그룹 VG를 생성할 때 부팅 파티션은 VG에 기록되지 않고 ext2 파일 시스템을 사용하여 별도의 파티션으로 생성됩니다. 이를 고려하지 않으면 부팅 볼륨이 논리 그룹에 속하게 됩니다. 이로 인해 부팅 볼륨을 복원할 때 고통과 괴로움을 겪게 됩니다. 이것이 부팅 파티션이 LVM이 아닌 볼륨으로 전송되는 이유입니다.



하이퍼바이저에 대한 논리 그룹 구성으로 넘어가겠습니다. "논리 볼륨 관리자 구성" 항목을 선택합니다.



시스템은 모든 변경 사항이 디스크에 기록된다는 것을 알려줍니다. 우리는 동의한다.



새 그룹을 만들어 보겠습니다. 예를 들어 vg_sata라고 합니다.



정보

서버는 SATA, SSD, SAS, SCSI, NVMe 미디어를 사용합니다. 논리 그룹을 생성할 때 호스트 이름이 아니라 그룹에 사용되는 미디어 유형을 지정하는 것이 좋습니다. vg_sata, vg_ssd, vg_nvme 등과 같이 논리 그룹의 이름을 지정하는 것이 좋습니다. 이는 논리 그룹이 어떤 미디어로 구성되었는지 이해하는 데 도움이 됩니다.




첫 번째 논리 볼륨을 만들어 보겠습니다. 이는 운영 체제의 루트 파티션에 대한 볼륨이 됩니다. "논리 볼륨 생성" 항목을 선택합니다.



새 논리 볼륨에 대한 그룹을 선택합니다. 우리는 하나만 가지고 있습니다.



논리 볼륨에 이름을 할당합니다. 이름을 할당할 때 논리 그룹 이름 형식의 접두사를 사용하는 것이 가장 정확합니다(예: vg_sata_root, vg_ssd_root 등).



새 논리 볼륨의 볼륨을 지정합니다. 루트에 10GB를 할당하는 것이 좋지만 논리 볼륨은 항상 확장될 수 있으므로 더 적게 할당하는 것이 좋습니다.



위의 예와 유사하게 다음과 같은 논리 볼륨을 생성합니다.

  • vg_sata_home - 사용자 디렉터리용으로 20GB.
  • vg_sata_opt - 애플리케이션 소프트웨어 설치용 10GB.
  • vg_sata_var - 시스템 로그 및 기타 프로그램과 같이 자주 변경되는 데이터용으로 10GB.
  • vg_sata_tmp - 임시 데이터용 5GB, 임시 데이터 양이 많으면 더 많은 작업을 수행할 수 있습니다. 이 예에서는 이 섹션이 불필요하게 생성되지 않았습니다.
  • vg_sata_swap - 볼륨과 동일 랜덤 액세스 메모리. 이것은 스왑을 위한 섹션으로, 하이퍼바이저의 RAM이 부족할 경우를 대비해 안전망으로 만듭니다.

모든 볼륨을 생성한 후 관리자의 작업을 완료합니다.



이제 운영 체제 파티션을 생성할 수 있는 여러 볼륨이 생겼습니다. 각 파티션에는 자체 논리 볼륨이 있다는 것을 추측하는 것은 어렵지 않습니다.



각 논리 볼륨에 대해 동일한 이름의 파티션을 생성합니다.



변경 사항을 저장하고 기록합니다.



디스크 레이아웃 변경 사항을 저장하면 기본 시스템 구성 요소가 설치되기 시작하고 추가 시스템 구성 요소를 선택하고 설치하라는 메시지가 표시됩니다. 모든 구성 요소 중에서 ssh-server 및 표준 시스템 유틸리티가 필요합니다.



설치 후 생성되어 디스크에 기록됩니다. GRUB 부트로더. 부팅 파티션이 저장된 물리적 디스크, 즉 /dev/sda에 설치합니다.




이제 부트 로더가 디스크에 쓰기를 마칠 때까지 기다리고 알림 후에 하이퍼바이저를 재부팅합니다.





시스템이 재부팅된 후 SSH를 통해 하이퍼바이저에 로그인합니다. 우선 루트 아래에 작업에 필요한 유틸리티를 설치합니다.

$ sudo apt-get install -y sudo htop screen net-tools dnsutils 바인딩9utils sysstat telnet Traceroute tcpdump wget 컬 gcc rsync

원하는 대로 SSH를 구성합니다. 키를 사용하여 즉시 인증을 수행하는 것이 좋습니다. 서비스를 다시 시작하고 기능을 확인하십시오.

$ sudo nano /etc/ssh/sshd_config $ sudo systemctl restart sshd; sudo systemctl 상태 sshd

가상화 소프트웨어를 설치하기 전에 물리 볼륨과 논리 그룹의 상태를 확인해야 합니다.

$sudo pvscan $sudo lvs

하이퍼바이저 인터페이스에 네트워크 브리지를 생성하기 위해 가상화 구성 요소와 유틸리티를 설치합니다.

$ sudo apt-get 업데이트; apt-get 업그레이드 -y $ sudo apt install qemu-kvm libvirt-bin libvirt-dev libvirt-daemon-system libvirt-clients virtinst bridge-utils

설치 후 하이퍼바이저에서 네트워크 브리지를 구성합니다. 네트워크 인터페이스 설정에 대해 설명하고 새 설정을 설정합니다.

$ sudo nano /etc/network/인터페이스

내용은 다음과 같습니다.

자동 br0 iface br0 inet 정적 주소 192.168.1.61 넷마스크 255.255.255.192 게이트웨이 192.168.1.1 브로드캐스트 192.168.0.61 dns-nameserver 127.0.0.1 dns-search 사이트 bridge_ports enp2s0 bridge_stp off bridge_waitport 0 bridge_fd 0

하이퍼바이저로 작업할 사용자를 libvirt 및 kvm 그룹에 추가합니다(RHEL의 경우 그룹을 qemu라고 함).

$ sudo gpasswd -a iryzhevtsev kvm $ sudo gpasswd -a iryzhevtsev libvirt

이제 하이퍼바이저와 함께 작동하도록 논리 그룹을 초기화하고, 실행하고, 시스템이 시작될 때 시작에 추가해야 합니다.

$ sudo virsh 풀 목록 $ sudo virsh 풀 정의-as vg_sata 논리적 --target /dev/vg_sata $ sudo virsh 풀 시작 vg_sata; sudo virsh pool-autostart vg_sata $ sudo virsh 풀 목록

정보

LVM 그룹이 QEMU-KVM과 제대로 작동하려면 먼저 virsh 콘솔을 통해 논리 그룹을 활성화해야 합니다.

이제 설치할 배포판을 다운로드하십시오. 게스트 시스템그리고 원하는 폴더에 넣어주세요.

$ sudo wget https://mirror.yandex.ru/debian-cd/9.5.0/amd64/iso-cd/debian-9.5.0-amd64-netinst.iso $ sudo mv debian-9.5.0-amd64-netinst .iso /var/lib/libvirt/images/; ls -al /var/lib/libvirt/images/

VNC를 통해 가상 머신에 연결하려면 /etc/libvirt/libvirtd.conf 파일을 편집합니다.

$ sudo grep "listen_addr = " /etc/libvirt/libvirtd.conf

주석을 제거하고 Listen_addr = "0.0.0.0" 줄을 변경해 보겠습니다. 파일을 저장하고 하이퍼바이저를 재부팅한 후 모든 서비스가 시작되어 작동하는지 확인합니다.

계속 이용은 회원만 가능합니다

옵션 1. "사이트" 커뮤니티에 가입하여 사이트의 모든 자료를 읽으세요.

지정된 기간 내에 커뮤니티에 가입하면 모든 Hacker 자료에 액세스할 수 있고 개인 누적 할인이 증가하며 전문적인 Xakep 점수 등급을 누적할 수 있습니다!

서버 준비

프로세서의 지원 확인:

고양이 /proc/cpuinfo | egrep "(vmx|svm)"

명령이 아무것도 반환하지 않으면 서버가 가상화를 지원하지 않거나 BIOS 설정에서 비활성화된 것입니다. KVM 자체는 이러한 서버에 설치될 수 있지만 하이퍼바이저 제어 명령을 입력하려고 하면 "WARNING KVM 가속을 사용할 수 없습니다. "qemu"를 사용합니다"라는 오류가 표시됩니다. 이 경우 서버를 재부팅하고 BIOS로 들어가서 가상화 기술(Intel VT 또는 AMD-V)에 대한 지원을 찾아서 활성화해야 합니다.

가상화와 관련된 모든 것을 저장할 디렉터리를 만들어 보겠습니다(기본적으로 제공되는 디렉터리는 편리하지 않습니다).

mkdir -p /kvm/(이미지,iso)

* 카탈로그 /kvm/이미지을 위한 가상 디스크; /kvm/iso- iso 이미지의 경우.

설치 및 실행

설치는 다음 명령을 사용하여 저장소에서 수행됩니다.

냠 설치 qemu-kvm libvirt virt-install

* 어디 qemu-kvm— 하이퍼바이저 자체 libvirt— 가상화 관리 라이브러리 가상 설치— 가상 머신 관리를 위한 유틸리티입니다.

자동 시작 허용:

systemctl libvirtd 활성화

KVM 실행:

systemctl start libvirtd

네트워크 구성

이 매뉴얼에서는 네트워크 브리지를 사용하는 방법을 살펴보겠습니다.

원격 연결을 통해 네트워크 브리지를 설정할 때 입력된 데이터를 주의 깊게 확인하세요. 오류가 발생하면 연결이 종료됩니다.

브리지와 함께 작동하도록 패키지를 설치하십시오.

냠 브리지 유틸리티 설치

네트워크 인터페이스 목록과 해당 설정을 살펴보겠습니다.

내 예에는 다음과 같은 데이터가 있습니다.

1:로: mtu 65536 qdisc noqueue 상태 알 수 없음 qlen 1
링크/루프백 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 범위 호스트 lo

inet6::1/128 범위 호스트
valid_lft 영원히 favorite_lft 영원히
2: enp4s0f0: mtu 1500 qdisc pfifo_fast 상태 UP qlen 1000

inet 192.168.1.24/24 brd 192.168.1.255 범위 전역 enp4s0f0
valid_lft 영원히 favorite_lft 영원히

valid_lft 영원히 favorite_lft 영원히
3: enp5s5:

4: virbr0:


valid_lft 영원히 favorite_lft 영원히
5: virbr0-nic:
링크/에테르 52:54:00:cd:86:98 brd ff:ff:ff:ff:ff:ff

* 이 중 우리에게 중요한 것은 enp4s0f0- IP 주소가 구성된 실제 네트워크 인터페이스 192.168.1.24 , 이를 통해 서버에 연결됩니다. 지역 네트워크(우리는 그것으로부터 다리를 만들 것입니다); 00:16:76:04:26:c6— 실제 MAC 주소 이더넷 어댑터; virbr0- 가상 네트워크 어댑터.

실제 어댑터의 설정 편집:

vi /etc/sysconfig/network-scripts/ifcfg-enp4s0f0

이를 형태로 만들어 보겠습니다.

ONBOOT=예
브리지=br0
유형=이더넷
장치=enp4s0f0
BOOTPROTO=없음

네트워크 브리지용 인터페이스를 만듭니다.

vi /etc/sysconfig/network-scripts/ifcfg-br0

장치=br0
유형=브리지
ONBOOT=예
BOOTPROTO=정적
IPADDR=192.168.1.24
넷마스크=255.255.255.0
게이트웨이=192.168.1.1
DNS1=8.8.8.8
DNS2=77.88.8.8

네트워크 서비스를 다시 시작합니다.

systemctl 네트워크 다시 시작

네트워크 설정을 변경해야 합니다. 제 경우에는 다음과 같습니다.

2: enp4s0f0: mtu 1500 qdisc pfifo_fast 마스터 br0 상태 UP qlen 1000
링크/에테르 00:16:76:04:26:c6 brd ff:ff:ff:ff:ff:ff
3: enp5s5: mtu 1500 qdisc pfifo_fast 상태 DOWN qlen 1000
링크/에테르 00:16:76:04:26:c7 brd ff:ff:ff:ff:ff:ff
4: virbr0: mtu 1500 qdisc noqueue 상태 DOWN qlen 1000
링크/에테르 52:54:00:cd:86:98 brd ff:ff:ff:ff:ff:ff
inet 192.168.122.1/24 brd 192.168.122.255 범위 전역 virbr0
valid_lft 영원히 favorite_lft 영원히
5: virbr0-nic: mtu 1500 qdisc pfifo_fast 마스터 virbr0 상태 DOWN qlen 1000
링크/에테르 52:54:00:cd:86:98 brd ff:ff:ff:ff:ff:ff
6:br0: mtu 1500 qdisc noqueue 상태 UP qlen 1000
링크/에테르 00:16:76:04:26:c6 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.24/24 brd 192.168.1.255 범위 전역 br0
valid_lft 영원히 favorite_lft 영원히
inet6 fe80::216:76ff:fe04:26c6/64 범위 링크
valid_lft 영원히 favorite_lft 영원히

우리는 네트워크 트래픽 리디렉션을 고집합니다.

vi /etc/sysctl.d/99-sysctl.conf

net.ipv4.ip_forward=1

설정을 적용합니다.

sysctl -p /etc/sysctl.d/99-sysctl.conf

libvirtd를 다시 시작합니다:

systemctl 재시작 libvirtd

가상 머신 생성

게스트 운영 체제에 사용 가능한 옵션을 살펴보겠습니다.

첫 번째 가상 머신을 생성하려면 다음 명령을 입력합니다.

virt-install -n FirstTest\
--noautoconsole\
--network=브리지:br0 \
--ram 1024 --arch=x86_64 \
--vcpus=1 --cpu 호스트 --check-cpu \
--disk 경로=/kvm/images/FirstTest-disk1.img,size=16 \
--cdrom /kvm/iso/CentOS-7-x86_64-Minimal-1611.iso \
--graphics vnc,listen=0.0.0.0,password=my_password \
--os-type linux --os-variant=rhel7 --boot cdrom,hd,menu=on

  • 첫 번째 테스트 -생성되는 머신의 이름
  • noautoconsole —생성 후 가상 머신 콘솔에 자동으로 연결되지 않습니다.
  • 네트워크 -네트워크 유형(이 예에서는 네트워크 브리지)
  • 램 -할당될 RAM의 양
  • vcpus —가상 프로세서 수;
  • 디스크 - 가상 디스크: path — 디스크 경로; 크기 - 볼륨;
  • CD 롬 -시스템 이미지가 있는 가상 드라이브
  • 제도법그래픽 콘솔을 사용하여 가상 머신에 대한 연결 매개변수( 이 예에서는 vnc 사용); 수신 - vnc 요청이 수신된 주소(이 예에서는 모두) 비밀번호 - vnc를 사용하여 연결하기 위한 비밀번호입니다.
  • OS 변형 —게스트 운영 체제(명령으로 전체 목록을 받았습니다. osinfo-쿼리 os, 이 예에서는 Rev Hat 7 / CentOS 7을 설치합니다.

생성된 VM에 대해 자동 시작을 허용합니다.

virsh 자동 시작 FirstTest

가상 머신에 연결

운영 체제를 추가로 설치하려면 VNC 클라이언트(예: TightVNC)를 관리자의 컴퓨터에 다운로드하여 설치하십시오.

서버에서는 생성된 머신이 VNC를 수신하는 포트를 확인합니다.

virsh vncdisplay FirstTest

내 경우에는 다음과 같았습니다.

이는 5900에 0을 더해야 함을 의미합니다. 명령 결과가 1 - 5900 + 1 = 5901 등인 경우.

방화벽에서 포트를 엽니다.

Firewall-cmd --permanent --add-port=5900-5905/tcp

방화벽-cmd --다시 로드

* 이 예에서는 6개의 TCP 포트가 5900 ~ 전에 5905 .

설치된 TightVNC 뷰어를 실행하고 열리는 창에서 KVM 서버의 IP 주소와 VM이 수신 대기 중인 포트(이 예에서는 5900)를 입력합니다.

딸깍 하는 소리 연결하다. 프로그램에서 비밀번호를 묻는 메시지가 표시됩니다. VM을 생성할 때 지정한 비밀번호를 입력하세요(이 예에서는 내_비밀번호). 모니터나 원격 KVM 콘솔이 연결된 것처럼 가상 머신에 연결하겠습니다.

Admin 및 명령 실행 시 생성된 비밀번호 엔진 설정. 로그인에 성공하면 웹 인터페이스를 통해 가상 머신을 관리할 수 있습니다.

WordPress 5.3 릴리스에서는 WordPress 5.0에 도입된 블록 편집기가 새로운 블록, 보다 직관적인 상호 작용 및 향상된 접근성으로 개선 및 확장되었습니다. 편집기의 새로운 기능 […]

9개월 간의 개발 끝에 FFmpeg 4.2 멀티미디어 패키지를 사용할 수 있습니다. 여기에는 다양한 멀티미디어 형식(녹화, 변환 및 […] 작업을 위한 애플리케이션 세트와 라이브러리 컬렉션이 포함되어 있습니다.

  • 새로운 기능 리눅스 민트 19.2 계피

    Linux Mint 19.2는 다음과 같은 릴리스입니다. 장기 지원 2023년까지 지원됩니다. 업데이트되어 제공됩니다 소프트웨어개선 사항과 많은 새로운 기능이 포함되어 있습니다 [...]

  • Linux Mint 19.2 배포판 출시

    릴리스 발표 리눅스 배포판 Mint 19.2는 Ubuntu 18.04 LTS 패키지 기반을 기반으로 하며 2023년까지 지원되는 Linux Mint 19.x 분기의 두 번째 업데이트입니다. 배포판은 완벽하게 호환됩니다 [...]

  • 버그 수정 및 기능 개선이 포함된 새로운 BIND 서비스 릴리스를 사용할 수 있습니다. 새 릴리스는 개발자 웹사이트의 다운로드 페이지에서 다운로드할 수 있습니다: [...]

    Exim은 캠브리지 대학에서 개발된 메시지 전송 에이전트(MTA)입니다. 유닉스 시스템인터넷에 연결되어 있습니다. [...]에 따라 무료로 사용할 수 있습니다.

    거의 2년 간의 개발 끝에 Linux 커널용 모듈로 설계된 ZFS 파일 시스템 구현인 Linux용 ZFS 0.8.0이 출시되었습니다. 이 모듈은 2.6.32부터 […]까지 Linux 커널로 테스트되었습니다.

  • WordPress 5.1.1은 사이트를 제어할 수 있는 취약점을 수정합니다.
  • 인터넷 프로토콜과 아키텍처를 개발하는 IETF(Internet Engineering Task Force)가 ACME(Automatic Certificate Management Environment) 프로토콜에 대한 RFC를 완성했습니다.

    커뮤니티가 관리하고 모든 사람에게 인증서를 무료로 제공하는 비영리 인증 기관인 Let's Encrypt는 지난 한 해의 결과를 요약하고 2019년 계획에 대해 이야기했습니다. […]

  • 나왔다 새 버전리브레오피스 – 리브레오피스 6.2
  • 공유하다