仮想機械(virtual machine)を管理するための抽象化ライブラリ。 抽象化しているため、さまざまな仮想機械を制御できるAPIを提供している。現在は、XenとQEMUおよびKVMを制御することが出来る。 また、ライセンスとしては、LGPLで配布される。このため、Xenのパッケージに含まれるソースコードがすべてGPLになっているのにくらべ使いやすい。 また、コマンドラインとしては、virshも同梱されている。これは、Xenのパッケージでは、xmコマンドに相当する。
やりたいこと 対象 インストール 0. KVM の インストールと設定 LINUX Kernel の設定 1. 環境確認 2. kernel パラメータの調整 (IOMMU を有効化) 参考: オプションの種類を確認する方法 3. kernel モジュールのロード設定 4. grub へ反映 5. 再起動 KVM の設定 6. KVM の hook 設定 VM の設定と起動 7. UEFI 起動を可能にする 8. 対象の VM を設定する 9. GPU を VM に設定する 10. 対象のVMを起動する 参考文献 やりたいこと libvirt で仮想マシンを立てているが、GPU を使いたい 対…
1. Qemuを生で起動 1.1 libvirtからの起動を模擬したい場合 マスターキー Qemuモニター 仮想ネットワーク 1.2 とにかくQemuが使いたい場合 2. Qemuモニター 2.1 HMP (readline) 2.2 QMP (control) 2.3 libvirt配下のQemuに対するモニターコマンド 3. リモートからのvirt-manager 3.1 リモートでvirt-managerを動かす 3.2 リモートvirt-managerを使って、音声を聞く 4. ディスクイメージ操作 4.1 guestfish 4.2 LIO/tcmu-runner 5. その他小ネタ…
引用元:linux-kvm.org 前の記事 本記事では、KVMの初期設定が完了していることを前提としています。 初期設定手順に興味のある方は、以下の記事もご参照ください。 endy-tech.hatenablog.jp virt-manager、Cockpitのセットアップについては、以下の記事をご参照ください。 endy-tech.hatenablog.jp endy-tech.hatenablog.jp お伝えしたいこと KVMの基本操作をケース別に紹介します。 基本はCLIの手順紹介がメインです。 virt-managerとCockpitのスクリーンショットも載せていますが、今後画面の…
libvirtに備わっているネットワークフィルタ機能 (nwfilter) をVMに適用してみる。 libvirtの公式ドキュメントを参考に作業を進める。 nwfilterは(バックエンドがnftablesであっても)iptablesを使ってフィルタリングを行うので、まずはnwfilter未設定時のiptables設定を確認する。 # iptables -nvL Chain INPUT (policy ACCEPT 0 packets, 0 bytes) pkts bytes target prot opt in out source destination 161 14807 LIBVIRT…
KVMでLVMベースのストレージプールを作ってデフォルトにしてみる。 LVMベースのストレージプールは、基本的に(通常の方法では)シンプロビジョニングは使えないが、性能面では有利らしい。 一番最初に、LVMベースのストレージプールに対応しているか確認。 $ export LIBVIRT_DEFAULT_URI='qemu:///system' $ virsh pool-capabilities | grep "'logical' supported='yes'" <pool type='logical' supported='yes'> 次に、現在定義されているストレージプールを確認。 $ v…
KVMで稼働中のVMにディスクをオンラインで追加してみる。 ディスクのイメージファイルを作成してVMにアタッチする。 host$ dd if=/dev/zero of=vdb.img bs=1M seek=2048 count=0 host$ virsh attach-disk kvmdom --source $PWD/vdb.img --target vdb VM側でディスク追加を確認する。 host$ virsh console kvmdom kvmdom# fdisk -l /dev/vdb Disk /dev/vdb: 2 GiB, 2147483648 bytes, 4194304 …
KVMで最初のディスクドライブ以外からブートさせてみる。 libvirtのドキュメントを参考に、 対象VM(ここではkvmdom)のXMLファイルを書き換える。 $ virsh edit kvmdom <os> <type arch='x86_64' machine='pc-q35-4.2'>hvm</type> - <boot dev='hd'/> </os> ... <disk type='file' device='disk'> <driver name='qemu' type='qcow2'/> <source file='.../vdb.img'/> <target dev='vdb…
Internal error:Failed to initialize a valid firewall backend というエラーで仮想NATが起動しませんでした 前まではebtablesを入れることで治りましたが 最近公式リポジトリからebtablesが消滅したのでiptables-nftを入れてください sudo pacman -S --needed iptables-nft dnsmasq libvirtdを再起動してください sudo systemctl restart libvirtd https://superuser.com/questions/1063240/libvirt…
前の記事 KVMとlibvirtの初期設定、及びlibvirt CLI (virt-install, libvirt) について基本操作を紹介しました。 endy-tech.hatenablog.jp お伝えしたいこと Cockpit から QEMU+KVM を操作するための初期設定を紹介しつつ、イメージが湧きそうなスクリーンショットを貼りたいと思います。 Cockpit はわかりやすい画面構成なので、細かい使い方については説明不要かなと思います。 使い方で迷った場合は、libvirtの基本として前の記事を参照してみてください。 前の記事 お伝えしたいこと 前提 Cockpit のインストール…
引用元:linux-kvm.org 前の記事 前回はKVM, QEMU, libvirt の概要について紹介しました。 endy-tech.hatenablog.jp お伝えしたいこと 本記事では、KVM+QEMUによる仮想化システムのインストール手順と、libvirt CLI (virt-install, virsh) によるVM作成手順を紹介します。 その後、KVMが本当に正しく構成されているのかを確認する手順と、正しく構成されていなかった場合の対処法について紹介します。 libvirtベースのCLI/GUIツールの概要については、前の記事のlibvirt を利用している製品を先にお読みく…
登録日: 2023-12-01 更新日: 2023-12-04 「Xubuntu 22.04 LTS」および「Windows11」(22H2) の「VirtualBox 7.0」の仮想マシンに、色々なLinux ディストリビューションをインストールして、自分に最適なものはないか試しています。 それらの仮想マシン(ボックス)の管理で手間を減らすツールとして、開発環境では「Vagrant」(ベイグラント) というソフトがよく使われるようです。 - 「Vagrant」について学ぶため、色々と作業時に参考にできそうな項目を書き出しました。 確認が不十分だし勘違いもありそうです。 確認が取れたらその都度…
Red Hat のテクニカルサポートエンジニアの田中です。 ここしばらくのバージョンの Red Hat OpenStack Platform(以降 RHOSP)では Director を使用して OpenStack クラスタをデプロイします。 Director は Upstream では TripleO(OpenStack-On-OpenStack)と呼ばれており、まずアンダークラウドと呼ばれる1台構成の OpenStack クラスタを作り、アンダークラウドの Heat や Ironic、Neutron といった機能と Ansible/Puppet などの構成管理ツールを活用してオーバークラウ…
こんにちは、Red Hatでソリューションアーキテクトをしている石川です。 今回はOpenShift上でVMを構築し管理するOpenShift Virtualizationについて紹介したいと思います。 OpenShift VirtualizationはOSSのKubevirtをOpenShiftの機能の一つとして提供しているものです。 Kubevirtは2016年にRed Hatがプロジェクトを開始しOSSとして公開され、その後CNCFプロジェクトの一部となりました。現在はCNCFの中でIncubatingプロジェクトの一つとして位置付けられています。 そんなKubevirtですが今年に入り…
はじめに pocketに記事を突っ込んで入るけど突っ込みっぱなしになっていることが多いのでアーカイブ作業がてらブログにも何か残しておこうと思う。別にハイライト機能を使って線を引いてコメントを書いてもいいけどなんとなくオンラインの媒体に残しておくのが気が引き締まっていいんじゃないかと勝手に思っている アーカイブ https://kumagi.hatenablog.com/entry/write-beautiful-code リポジトリ内にメモ帳としてのマークダウンの断片的なファイルを用意しておいて、コードからドキュメントへのリンクを貼っておく まとまりや関連があるものはまとめるなり参照なりしてお…
■debian bookwormにKVMを入れてみる 以下のときとあまり変わらないみたい debian stretchにKVMを導入する。 https://labunix.hateblo.jp/entry/20180501/1525182562 $ lsb_release -d No LSB modules are available. Description: Debian GNU/Linux 12 (bookworm) ■やり方は基本的に以下と同じ WheezyにQEMU-KVMを導入 https://labunix.hateblo.jp/entry/20130716/1373901127…
Ⅰ. はじめに Ⅱ. 環境 Ⅲ. 手順 1. BIOS設定を変更する 2. UEFIを利用してUbuntuをインストールする 3. GRUBを編集する 4. GRUBの設定を反映する 5. 再起動する 6. IOMMUが有効になったか確認する 7. 仮想化ソフトウェアをインストールする 8. ユーザのグループにkvm, libvirt を追加する 9. QEMUの設定を変更する 10. libvirtの設定を変更する 11. libvirtdを実行する 12. libvirtネットワークを自動起動する 13. 仮想化設定確認 14. virtioのWindows用ドライバ(ISOファイル)をダ…
日本語化 # apt -y install language-pack-ja-base language-pack-ja # localectl set-locale LANG=ja_JP.UTF-8 LANGUAGE="ja_JP:ja" # source /etc/default/locale パッケージインストール # apt install qemu-kvm libvirt-daemon libvirt-daemon-system libvirt-clients virtinst libosinfo-bin bridge-utils ovmf ブリッジ作成 # vi /etc/netp…
前の記事で、リプレース後の自宅サーバはAlma Linux+KVMで行くことにしました。 今回は設定を詰めていきます。 www.suzu-ha.com 目次 コンソール表示関連 コンソール表示の手段 VNCのリッスンIPアドレスの指定 ファイアウォール パフォーマンスプロファイル ネットワークをブリッジ構成にする NATかブリッジか ブリッジインターフェースの作成 仮想ネットワーク(NAT)の削除 ストレージ関連 ストレージ ストレージプール コンソール表示関連 コンソール表示の手段 cockpitを利用する場合、KVM仮想マシンのコンソール表示(画面表示)する選択肢は3つあります。 ①シリア…
こちらの続きです。 www.suzu-ha.com インストール インストールメディアは、AlmaLinux 9.2 x86_64版(AlmaLinux-9.2-x86_64-dvd.iso)をダウンロードしました。 https://mirrors.almalinux.org/isos.html これを、Win32 Disk Imager RenewalでUSBメモリに書き込みました。 github.com 余談ですが、READMEの内容が脱線しまくっていて面白いです。書いているのは天才・登大遊氏です。 なお、Alma Linuxのwikiでは、USBメモリへの書き込みツールとして Windo…
事前準備 Windows11のダウンロード https://www.microsoft.com/en-us/software-download/windows11 https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/ 必要パッケージのインストール # dnf install edk2-ovmf # dnf install swtpm swtpm-tools Windows11のインストール 仮想ディスクの作成 # mkdir /var/lib/libvirt/images/win11 #…
L2TP/IPsec について L2TP/IPSec と一言でいっても、Linux上では、次の3つの機能によって成り立ってる。 ipsec ( ikev1 ) xl2tpd pppd このうち、xl2tpd + pppd はペアで1つのPPP接続(≒vpn)を作る、ipsecは暗号化である。ipsecで指定したIP/ポートを暗号化するトンネル(xfrm)を作る。ipsecのESP(カプセル化)の中身にL2TPを通してパケットを安全に転送する機能である。xfrm のfrm はtransform のfrm である なので、次の2つが独立して動作している。 ipsec xl2tpd+pppd ips…
概要 Linuxを触るので久しぶりに再勉強した内容をメモしておく。 概要 ssh 仮想マシン コンテナ ブートプロセス systemd ターゲット 主なターゲット ターゲットの居場所 ターゲットの管理 systemctl プロセス プロセス関連のコマンド ジョブ GUI環境 X Windos System 代表的なウィンドウマネージャ 統合デスクトップ環境 代表的な統合デスクトップ環境 ディスプレイマネージャ X Window Systemの起動 XサーバーとXクライアント ファイルの所有者と所有グループ アクセス権 chmod umask SUID SGID スティッキービット SUID/S…
OpenWRTが起動して動作してるが、Read Onlyになっていて、ext4 のフォーマットがエラーになっていたので修正する。 [ 5.150903] EXT4-fs (vda2): warning: mounting unchecked fs, running e2fsck is recommended [ 5.161300] EXT4-fs (vda2): re-mounted. Opts: (null) [ 5.248627] EXT4-fs (vda1): warning: mounting unchecked fs, running e2fsck is recommended マウ…
apt で libvirt を入れる。 sudo apt -y install qemu-kvm libvirt-daemon-system \ libvirt-daemon virtinst bridge-utils libguestfs-tools virt-top libvirt 経由でNVRAMとUEFIを使って起動する・ NAME=u2204-02 DIR=/var/lib/libvirt/images NVRAM=$DIR/$NAME-AAVMF_VARS.fd UEFI=/usr/share/AAVMF/AAVMF_CODE.fd DISK=$DIR/u2204-04.qcow2…