コンテンツにスキップ

1. mvdlx080

1.1. ホストマシンのスペック

Linuxのホストマシンのスペックを確認する方法

項目 仕様
アーキテクチャ x86_64
CPU 16コア
BIOS Vendor ID Intel(R) Corporation
モデル名 11th Gen Intel(R) Core(TM) i9-11900 @ 2.50GHz
メモリ 125GiB
Swap 4.0GiB
GPU GeForce RTX 3060 Lite Hash Rate
ディスク 240GiB (SATA SSD)
OS Rocky Linux 9.5 (Blue Onyx)
IP 192.168.1.180/21
Subnet 255.255.128.0
Gateway 192.168.1.1
DNS 192.168.1.160 192.168.3.160

1.1.1. ディスク情報の詳細

sdaはデータ領域 sdbにホストマシンをインストール nvme0n1に仮想マシンをインストール

NAME                 MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda                    8:0    0   5.5T  0 disk 
├ sda1                 8:1    0   1.8T  0 part /var/Project_80_2
├ sda2                 8:2    0   1.8T  0 part /var/Project_80_3
└ sda3                 8:3    0   1.8T  0 part /var/Project_80_4
sdb                    8:16   0 223.6G  0 disk 
├ sdb1                 8:17   0    32G  0 part /boot/efi
├ sdb2                 8:18   0     1G  0 part /boot
└ sdb3                 8:19   0 190.6G  0 part 
  ├ rl_mvdpc116-root 253:0    0    70G  0 lvm  /
  ├ rl_mvdpc116-swap 253:1    0     4G  0 lvm  [SWAP]
  └ rl_mvdpc116-home 253:2    0 116.6G  0 lvm  /home
nvme0n1              259:0    0   1.8T  0 disk 
└ nvme0n1p1          259:1    0 186.3G  0 part /mnt/mvdlx081

1.2. ホストマシン+仮想マシンの構成検討

最大10台の仮想マシンを立てることを想定しリソース配分を考える。

仮想マシン CPUコア数 メモリ ストレージ
仮想マシン1〜2 4コア 32GB 100GB
仮想マシン3〜5 2コア 16GB 50GB
仮想マシン6〜10 1〜2コア 8GB 50GB

1.2.1. 仮想サーバ1(mvdlx081)

KVM(Network Manager)で設定

1.2.1.1. 仮想マシンのスペック

項目 仕様
アーキテクチャ x86_64
CPU 4コア
BIOS Vendor ID --
モデル名 --
メモリ 32GiB
Swap 4.0GiB
GPU GeForce RTX 3060 Lite Hash Rate
ディスク 200GiB (M.2 SSD -> partition:mvdlx081)
OS Rocky Linux 9.5 (Blue Onyx)
IP 192.168.1.181/21
Subnet 255.255.128.0
Gateway 192.168.1.1
DNS 192.168.1.160 192.168.3.160

1.2.1.2. 仮想マシンの構築メモ

mvdlx081の構築メモ

1.3. ユーザとパスワード

マシン名 Host/Guest AD連携 IPアドレス ユーザ パスワード
mvdlx080 Host No 192.168.1.180 root MavissDesign1119_sne
mvdlx080 Host No 192.168.1.180 tuser Maviss
mvdlx081 Guest Yes 192.168.1.181 root MavissDesign1119_sne
mvdlx081 Guest Yes 192.168.1.181 domain users user setting password

1.4. 外付けSSDに仮想環境を作成する際の設定

1.4.1. ホストを再起動するとSSDのパーティションのマウントが外れる

1.4.1.1. 原因

OSが起動するときに/etc/fstabの内容を見てパーティションをマウントする。 /etc/fstabに設定を入れていなかったためリブート時にマウントが外れてしまった。

1.4.1.2. 対策

/etc/fstabに設定を記載する。

SSDのパーティション(mvdlx081)がどこにマッピングされているのか現状確認 (df -Th | grep mvdlx081)

[root@mvdlx080 mvdlx081]# df -Th | grep mvdlx081
/dev/nvme0n1p1               ext4       183G  7.0G  167G    5% /run/media/root/mvdlx081

デバイス名 (/dev/nvme0n1p1) はリブート後に変わる可能性があるので、UUID を使う法が良いので確認(blkid

[root@mvdlx080 mvdlx081]# blkid /dev/nvme0n1p1
/dev/nvme0n1p1: LABEL="mvdlx081" UUID="4f8e8d54-34a2-45cb-b6ad-81d14527613e" TYPE="ext4" PARTUUID="47ff4ab8-ab37-4914-ba2e-bf3e61b7cc7e"

/etc/fstabにUUIDを追記する

# 2TB SSD (partision: mvdlx081)
UUID=4f8e8d54-34a2-45cb-b6ad-81d14527613e  /mnt/mvdlx081  ext4  defaults,nofail,x-systemd.device-timeout=30  0  2

マウント先のフォルダを作成

mkdir -p /mnt/mvdlx081

リブート
SSDのパーティションがマウントされていればOK。 もしマウントされていなければ、手動で試し原因を調査する mount -a

新しく仮想マシンを立てるときは/mnt/mvdlx081を割り当てる。 もともと作成していた仮想ディスクのパスと違うのでシンボリックリンクを張ってあげる * 仮想ディスクのソースパス: * /run/media/root/mvdlx081/Ext4.qcow2 * マウントした場所: * /mnt/mvdlx081

mkdir -p /run/media/root/mvdlx081
ln -s /mnt/mvdlx081/Ext4.qcow2 /run/media/root/mvdlx081/Ext4.qcow2

1.5. 仮想環境の設定

1.5.1. 状況確認

1.5.1.1. デバイスの確認(nmcli device)

[root@mvdlx080 ~]# nmcli device
DEVICE   TYPE      STATE            CONNECTION 
enp4s0   ethernet  ????         enp4s0     
lo       loopback  ???? (??)  lo         
docker0  bridge    ???? (??)  docker0    
virbr0   bridge    ???? (??)  virbr0     
vnet4    tun       ???? (??)  vnet4  
  • enp4s0(Ethernet) 物理的な有線LANインターフェース。LANケーブルでルーターやスイッチに接続されている。
  • lo(Loopback) ローカルホスト専用の仮想インターフェース(127.0.0.1 など)。
  • docker0(Bridge) Dockerコンテナ用の仮想ブリッジ。Dockerコンテナがこのネットワークを通じて通信する。
  • virbr0(Bridge) libvirt(KVM, QEMU などの仮想化環境)によって作成される仮想ブリッジ。仮想マシン(VM)用の内部ネットワーク。
  • vnet4(TUN/TAP インターフェース) 仮想マシンのネットワークインターフェースの1つで、おそらく virbr0 に接続されている。
                 +----------------------+
                 |  インターネット       |
                 +----------------------+
                          |
                          | (ISP / ルーター)
                          |
                     +----+----+
                     | enp4s0  |  (有線LANインターフェース)
                     +----+----+
                          |
          -------------------------------------
          |               |                  |
      +------+       +--------+          +---------+
      | virbr0|      | docker0|          |  vnet4  |
      +------+       +--------+          +---------+
      (仮想ブリッジ)  (Docker)            (仮想NIC: VM)

1.5.1.2. デバイスの詳細を確認する(nmcli device show

[root@mvdlx080 ~]# nmcli device show enp4s0
GENERAL.DEVICE:                         enp4s0
GENERAL.TYPE:                           ethernet
GENERAL.HWADDR:                         D8:BB:C1:19:10:52
GENERAL.MTU:                            1500
GENERAL.STATE:                          100 (????)
GENERAL.CONNECTION:                     enp4s0
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveConnection/2
WIRED-PROPERTIES.CARRIER:               ??
IP4.ADDRESS[1]:                         192.168.1.180/22
IP4.GATEWAY:                            192.168.1.1
IP4.ROUTE[1]:                           dst = 0.0.0.0/0, nh = 192.168.1.1, mt = 100
IP4.ROUTE[2]:                           dst = 192.168.0.0/22, nh = 0.0.0.0, mt = 100
IP4.DNS[1]:                             192.168.1.160
IP6.ADDRESS[1]:                         fe80::5422:ed53:ba70:4611/64
IP6.GATEWAY:                            --
IP6.ROUTE[1]:                           dst = fe80::/64, nh = ::, mt = 1024
[root@mvdlx080 ~]# nmcli device show virbr0
GENERAL.DEVICE:                         virbr0
GENERAL.TYPE:                           bridge
GENERAL.HWADDR:                         52:54:00:F5:6E:ED
GENERAL.MTU:                            1500
GENERAL.STATE:                          100 (???? (??))
GENERAL.CONNECTION:                     virbr0
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveConnection/4
IP4.ADDRESS[1]:                         192.168.122.1/24
IP4.GATEWAY:                            --
IP4.ROUTE[1]:                           dst = 192.168.122.0/24, nh = 0.0.0.0, mt = 0
IP6.GATEWAY:                            --

1.5.1.3. 接続の確認(nmcli connection show)

[root@mvdlx080 ~]# nmcli connection show
NAME     UUID                                  TYPE      DEVICE  
enp4s0   f7067e1c-df27-4185-8a42-7f940698d93e  ethernet  enp4s0  
lo       ab7a85bd-0548-4fc9-8fa1-110a18cc8dec  loopback  lo      
docker0  278e592a-9771-474c-aef1-edd8e4a168b9  bridge    docker0 
virbr0   cf2eebed-26b1-4fa6-92bf-2fd2fa42fece  bridge    virbr0  
vnet4    828baa0a-846a-4fbe-9a22-efd413822c03  tun       vnet4   
enp3s0   50c62f65-0f1e-3dbe-87e0-2a1e8f8840df  ethernet  --    

enp3s0という接続がいるがデバイスにはない。別用途のSSDを流用したため設定が残っているのかも。

1.5.2. 仮想環境用の接続を作成する

適宜ネットワークの確認コマンドを打ちながら下記の手順で実行する。 * nmcli device show * nmcli connection show

手順 1. ブリッジ(bridge-br0)を作成する(nmcli connection add type bridge ifname br0) → bridge-br0が作成される 2. ブリッジ(bridge-br0)のスパニングツリーの確認(nmcli connection show bridge-br0 | grep bridge.stp) 3. ブリッジ(bridge-br0)のスパニングツリーの確認結果が「はい」ならスパニングツリーの無効化 (nmcli connection modify bridge-br0 bridge.stp no) 4. ブリッジ(bridge-br0)の設定を行う (nmcli connection modify bridge-br0 ipv4.method manual ipv4.addresses "192.168.1.180/21" ipv4.gateway "192.168.1.1" ipv4.dns "192.168.1.160") 5. ブリッジ(bridge-br0)をNIC(enp4s0)に接続する (nmcli connection add type bridge-slave ifname enp4s0 master bridge-br0) → bridge-slave-enp4s0が作成される 6. 不要になったenp4s0を削除する(nmcli connection delete enp4s0) → この時、4.の設定がうまくいっていないとネットワークが切れるので注意。DHCPで適当なIPにつながる。サーバ室に直行し4の設定を再度行いreboot!!!

手順6まで実行した後の状態

[root@mvdlx080 ~]# nmcli device
DEVICE   TYPE      STATE            CONNECTION          
br0      bridge    ????         bridge-br0          
enp4s0   ethernet  ????         bridge-slave-enp4s0 
lo       loopback  ???? (??)  lo                  
docker0  bridge    ???? (??)  docker0             
virbr0   bridge    ???? (??)  virbr0              
[root@mvdlx080 ~]# nmcli connection
NAME                 UUID                                  TYPE      DEVICE  
bridge-br0           d4f01856-bf4a-4fdc-8291-27364ef9d380  bridge    br0     
bridge-slave-enp4s0  c04f4d28-ff76-4a3b-bfeb-7b55540d7a3f  ethernet  enp4s0  
lo                   7d369d9c-f3c5-49d9-8670-cae867ab9ef6  loopback  lo      
docker0              7d05a1d1-c844-4ca3-9d09-fd534864af53  bridge    docker0 
virbr0               b0d921c3-f860-4761-ae40-dcdc107fb587  bridge    virbr0  
bridge-slave-eth0    9f36fccc-3f3f-4ad2-95df-38970a271b2d  ethernet  --      
enp3s0               50c62f65-0f1e-3dbe-87e0-2a1e8f8840df  ethernet  --    
[root@mvdlx080 ~]# nmcli device show br0
GENERAL.DEVICE:                         br0
GENERAL.TYPE:                           bridge
GENERAL.HWADDR:                         D8:BB:C1:19:10:52
GENERAL.MTU:                            1500
GENERAL.STATE:                          100 (????)
GENERAL.CONNECTION:                     bridge-br0
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveConnection/3
IP4.ADDRESS[1]:                         192.168.1.180/21
IP4.GATEWAY:                            192.168.1.1
IP4.ROUTE[1]:                           dst = 192.168.0.0/21, nh = 0.0.0.0, mt = 425
IP4.ROUTE[2]:                           dst = 0.0.0.0/0, nh = 192.168.1.1, mt = 425
IP4.DNS[1]:                             192.168.1.160
IP6.ADDRESS[1]:                         fe80::6702:c920:1621:3d41/64
IP6.GATEWAY:                            --
IP6.ROUTE[1]:                           dst = fe80::/64, nh = ::, mt = 1024
root@mvdlx080 ~]# nmcli device show br0
GENERAL.DEVICE:                         br0
GENERAL.TYPE:                           bridge
GENERAL.HWADDR:                         D8:BB:C1:19:10:52
GENERAL.MTU:                            1500
GENERAL.STATE:                          100 (????)
GENERAL.CONNECTION:                     bridge-br0
GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/ActiveConnection/3
IP4.ADDRESS[1]:                         192.168.1.180/21
IP4.GATEWAY:                            192.168.1.1
IP4.ROUTE[1]:                           dst = 192.168.0.0/21, nh = 0.0.0.0, mt = 425
IP4.ROUTE[2]:                           dst = 0.0.0.0/0, nh = 192.168.1.1, mt = 425
IP4.DNS[1]:                             192.168.1.160
IP6.ADDRESS[1]:                         fe80::6702:c920:1621:3d41/64
IP6.GATEWAY:                            --
IP6.ROUTE[1]:                           dst = fe80::/64, nh = ::, mt = 1024
[root@mvdlx080 ~]# nmcli connection show bridge-br0
connection.id:                          bridge-br0
connection.uuid:                        d4f01856-bf4a-4fdc-8291-27364ef9d380
.
.
.
長いので省略

1.5.3. 仮想環境のネットワークを変更した後

+---------------------------+
|         LAN               |
|  192.168.1.0/21           |
|    (Gateway: 192.168.1.1) |
+---------------------------+
           |
           | (192.168.1.180)
           |
       +---+---+        +-----------------+
       | br0   |        |   virbr0 (NAT)  |  (libvirt仮想ブリッジ)
       +---+---+        +-----------------+
           |
       +---+---+
       | enp4s0 | (物理NIC)
       +-------+

ここまででHost側の設定は完了。

1.6. 仮想サーバのネットワーク設定

仮想サーバのネットワークはデフォルト(virtio)になっているので作成したブリッジ(br0)に接続してあげる必要がある。 変更は仮想マシンマネージャからGUIで設定できる。 alt text

1.7. Hostマシンはドメインに入れない

間違ってドメインに入れた場合はドメインから出る realm leave maviss.local

確認 no such userと出ればドメインから出ている id hirano@maviss.local

1.8. rootでsshできるようにする

「/etc/ssh/sshd_config」を変更する

#PermitRootLogin prohibit-password
PermitRootLogin yes

sshdを再起動する systemctl restart sshd

1.9. how to

1.9.1. CPUがKVMをサポートしているかチェック

egrep -c '(vmx|svm)' /proc/cpuinfo 出力が1以上であれば、仮想化がサポートされており、KVMを利用することができます。

1.9.2. kvmモジュールがカーネルにロードされているか確認

lsmod | grep kvm kvm_intel(Intel CPUの場合)またはkvm_amd(AMD CPUの場合)モジュールが表示されていればKVMは有効

モジュールがロードされていない場合 sudo modprobe kvm_intel or sudo modprobe kvm_amd

1.9.3. kvmパッケージがインストールされているか確認

rpm -q qemu-kvm rpm -q libvirt qemu-kvm-9.0.0-10.el9_5.x86_64のようなバージョンが表示されればOK

パッケージがインストールされていない場合 sudo dnf -y install qemu-kvm dnf install -y virt-install

1.9.4. 仮想化の設定が有効か確認

sudo virt-host-validate

確認結果の例

  QEMU: Checking for hardware virtualization                                 : 成功
  QEMU: Checking if device '/dev/kvm' exists                                 : 成功
  QEMU: Checking if device '/dev/kvm' is accessible                          : 成功
  QEMU: Checking if device '/dev/vhost-net' exists                           : 成功
  QEMU: Checking if device '/dev/net/tun' exists                             : 成功
  QEMU: Checking for cgroup 'cpu' controller support                         : 成功
  QEMU: Checking for cgroup 'cpuacct' controller support                     : 成功
  QEMU: Checking for cgroup 'cpuset' controller support                      : 成功
  QEMU: Checking for cgroup 'memory' controller support                      : 成功
  QEMU: Checking for cgroup 'devices' controller support                     : 成功
  QEMU: Checking for cgroup 'blkio' controller support                       : 成功
  QEMU: Checking for device assignment IOMMU support                         : 成功
  QEMU: Checking if IOMMU is enabled by kernel                               : WARN (IOMMU appears to be disabled in kernel. Add intel_iommu=on to kernel cmdline arguments)
  QEMU: Checking for secure guest support                                    : WARN (Unknown if this platform has Secure Guest support)
  • IOMMUが無効
  • IOMMU(Input-Output Memory Management Unit)は、デバイスがメモリにアクセスする際に、アクセスを制御する機能です。これが有効でないと、特にデバイスパススルー(PCIデバイスの仮想マシンへの割り当てなど)を行う際に問題が発生することがあります。
  • IOMMUを有効にする
  • GRUB設定ファイルを編集
    • sudo vi /etc/default/grub
    • GRUB_CMDLINE_LINUX_DEFAULT="xxx yyy zzz"に「intel_iommu=on」or「amd_iommu=on」を追加 (コマンドとコマンドの間は半角の空白!)
  • GRUB設定を更新
    • sudo grub2-mkconfig -o /boot/grub2/grub.cfg
  • Systemを再起動する
    • sudo reboot
  • 有効になったかの確認
    • dmesg | grep -i iommu or sudo virt-host-validate

sudo grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg /sbin/grub2-mkconfig: line 286: /boot/efi/EFI/centos/grub.cfg.new: No such file or directory

EFIシステムのディレクトリ構造に基づき、GRUB設定ファイルの格納場所は通常、/boot/efi/EFI/<ディストリビューション名>/grub.cfgです -> 「/boot/efi/efi/rocky/grub.cfg」にあった

通常、UEFIブート環境では、EFIパーティション内に EFI というディレクトリが存在し、その中に各ディストリビューションやブートローダーの設定ファイルが格納されます。たとえば、/boot/efi/EFI/rocky/grub.cfg のように、Rocky Linuxの場合、rockyというディレクトリの中にGRUB設定ファイルが保存されることが期待されます。

しかし、現状では /boot/efi/efi に rocky/grub.cfg が格納されています。efi という名前のディレクトリは、通常は EFI という名前のディレクトリにするべきです。ディレクトリ名が違っているだけで、システムにとっては「誤った場所」にGRUBの設定がある状態です。

rocky linuxは大文字と小文字を区別していない模様。EFIではなくefiを指定してあげると設定が入った

Generating grub configuration file ...
Adding boot menu entry for UEFI Firmware Settings ...
done

sudo grub2-mkconfig -o /boot/efi/efi/rocky/grub.cfg * Secure Guestサポートが不明

1.10. 仮想マシンを外付けSSDに割り当てるためにディスクのパーティションを作成する

仮想マシンを立てる際にSSDのパーティションを事前に切っておく必要がある。 コマンドでもできるがGUIで行った方が簡単。 ※ 後から気づいたがSSDのパーティションを細かく切るのではなく全領域のパーティションを切ってから、各仮想サーバの作成時にパーティションを切りなおした方が容易かも

  1. アクティビティからディスクアプリを起動する
    alt text
  2. 目的のディスク(2TBディスク)>空き領域>+(未割当領域にパーティションを作成)を順にクリック
    alt text
  3. 適当なパーティションサイズを設定
    alt text
  4. ボリューム名とボリュームのタイプを設定
  5. Ext4:
    • 一般的な用途で最も推奨されるファイルシステムです。Linuxで非常に広く使用されています。 ★選択!
  6. LUKS (Linux Unified Key Setup):
    • ディスクの暗号化が必要な場合に使用します。ディスク全体を暗号化して、データ保護を行いたい場合に選択します。
  7. FAT (FAT32など):
    • 特定のアプリケーションや、互換性のために使用することがあります。
      一般的には、Linuxシステムには推奨されませんが、Windowsとの互換性が必要な場合に使用されることがあります。
      alt text
  8. ボリュームに作成したパーティションが追加される。
    まだ未マウントなので注意!!!
    デバイスの場所は/dev/nvme0n1p2と記載あり。
    alt text
  9. /mnt以下にパーティションをマウントする
  10. /dev/nvme0n1p2は名前が変更になる可能性があるのでUUIDを調べる(blkid )
    UUID="f5acaa01-bd46-4759-b946-9a1b8d282244"
    sh [root@mvdlx080 ~]# blkid /dev/nvme0n1p2 /dev/nvme0n1p2: LABEL="mvdlx082" UUID="f5acaa01-bd46-4759-b946-9a1b8d282244" TYPE="ext4" PARTUUID="ee3d80e1-440a-4b31-a026-2a64d4283fb0"
  11. 「/etc/fstab」にUUIDを登録し、サーバが再起動しても自動起動するようにする。
    sh # 2TB SSD (partision: mvdlx081) UUID=4f8e8d54-34a2-45cb-b6ad-81d14527613e /mnt/mvdlx081 ext4 defaults,nofail,x-systemd.device-timeout=30 0 2 UUID=f5acaa01-bd46-4759-b946-9a1b8d282244 /mnt/mvdlx082 ext4 defaults,nofail,x-systemd.device-timeout=30 0 2
  12. fstabの変更を反映させるためにデーモンをリロードする systemctl daemon-reload
  13. マウント先のフォルダを作成し、マウントを行う。(mount -t タイプ デバイス マウント先ディレクトリ)
    sh mkdir /mnt/mvdlx082 mount -U f5acaa01-bd46-4759-b946-9a1b8d282244 /mnt/mvdlx082
  14. ディスクアプリ、または、mount | grep mvdlx082でマウントされたことを確認
    alt text

1.11. 仮想マシンマネージャで仮想マシンを立ち上げる

root権限を持ったアカウントを使う必要あり。
事前にディスク割り当て予定のパーティションを作ってマウントしておく。
仮想OSはRocky linux 9.5(Rocky Linux 8.10も同じ手順)

  1. 仮想マシンマネージャをGUIで起動する alt text
  2. 新しい仮想マシン(パソコンマーク)の作成をクリック ローカルにISOを準備しておきそこからインストールする alt text alt text
  3. メモリは32GB (32768)、CPUは4つ alt text
  4. この仮想マシンにストレージを割り当てるにチェック、カスタムストレージの選択または作成をクリック alt text
  5. +ボタン(プールの追加)で先ほどパーティションを切った空間に対してプールを作成する
  6. この時lost+foundというフォルダが作成されるがこれはボリュームとしては使わず削除
  7. 別途、Ext4というボリュームをqcow2フォーマットで作成する
    ※ lost+found:ファイルシステムの修復中に、破損したファイルや不完全なファイルが fsck(ファイルシステムチェック)によって回収される場所
    qcow2: スナップショットや圧縮、暗号化機能が必要な場合や、ストレージを効率的に使用したい場合。
    raw: 高パフォーマンスが求められる場合や、ディスクのオーバーヘッドを最小限にしたい場合。
  8. 「/mnt/mvdlx082/Ext4.qcow2」を選択し「次へ」クリック
  9. インストールの前にカスタマイズするにチェックを入れる
    ブリッジデバイスは事前にホストマシンで設定したブリッジを選択する。
    ※ macvtapを使えばブリッジ作らなくても直接ホストマシンのネットワークに接続できるかも。
    alt text
  10. カスタマイズ
  11. 概要
    alt text
  12. OSの情報
    alt text
  13. CPU数
    alt text
  14. メモリー
    alt text
  15. ブートオプション
    ホスト起動時に仮想マシンを起動する設定を入れる。
    alt text
  16. VirtIOディスク1
    alt text
  17. SATA CDROM1
    alt text
  18. NIC:b6:47:43
    alt text
  19. タブレット
    alt text
  20. ディスプレイVNC
    alt text
  21. コンソール1
    alt text
  22. Channel(qemu-ga)
    alt text
  23. ビデオ Virtio
    alt text
  24. コントローラーUSB
    alt text
  25. コントローラーPCIe
    alt text
  26. RNG/dev/urandom
    alt text
  27. インストールの開始
    1. 「Install Rocky Linux 9.5」を選択
      alt text
    2. 言語は「日本語」を選択 alt text
    3. インストール概要をみて一部変更する
      alt text
    4. rootパスワード
      root SSHログインを許可にチェック
      alt text
    5. ユーザーの作成
      テスト用のユーザを作成する ユーザを管理者に設定するにチェック
      alt text
    6. ソフトウェアの選択
      サーバー(GUI使用)を選択
      その他のソフトはDNSおよびメールサーバー以外をとりあえずインストールする
      alt text
    7. インストール先は中身を見て問題なければそのまま完了
    8. ネットワークとホスト名からIPv4の設定を行う。
      alt text
  28. インストールの開始 alt text
  29. インストールが完了したら再起動 alt text

1.12. Zabbixとの連携

1.12.1. エージェントのインストール

Zabbixサーバで社内サーバを監視するには各社内サーバにZabbixエージェントを入れる必要がある。 1. 公式サイト:Get Zabbixにアクセス。
2. 「Zabbix Packages」を選択 alt text 3. 「Choose your platform」で次を選択する alt text 1. ZABBIX VERSION 1. 7.0 LTS 2. OS DISTRIBUTION 1. Red Hat Enterprise Linux 2. 仮想OSはRocky Linux 9.5であるがRed Hatベースなので適切 3. ZABBIX COMPONENT 1. 9 4. DATABASE 1. --- 5. WEB SERVER 1. --- 4. 「Install and configure Zabbix for your platform」のコマンドを実行する alt text 1. uninstall EPEL's Zabbix Pacage code /etc/yum.repos.d/epel.repo sh [epel] ... excludepkgs=zabbix* 2. repogitory install sh rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rhel/9/x86_64/zabbix-release-latest-7.0.el9.noarch.rpm dnf clean all 3. zabbix agent install
dnf install zabbix-agent 4. zabbix agent process start sh systemctl restart zabbix-agent systemctl enable zabbix-agent systemctl status zabbix-agent 4. Zabbix agentのポート開放 1. firewall-cmd --list-portsを実行。 2. ログを確認する。10050/tcpが空いていればOK。
22/tcp 3000/tcp 3100/tcp 3389/tcp 5900-5999/tcp 8000/tcp 8929/tcp 9000/tcp 10050/tcp 10083/tcp 3. 必要であれば10050/tcpを追加する。 firewall-cmd --zone=public --add-port=10050/tcp --permanent 4. Zabiixサーバの基本情報をセッティングする。 code /etc/zabbix/zabbix-agentd.conf sh Server=127.0.0.1,192.168.1.180 ServerActive=127.0.0.1,192.168.1.180 Hostname=mvdlx080 systemctl restart zabbix-agent

1.12.2. Zabbixサーバでの設定

  1. Zabbixの管理コンソールにアクセス
  2. 「ホスト」を選択し上部の入力欄からマシンを登録する alt text
  3. 登録内容を変更する際は一覧からマシン名をクリックする alt text