Proxmox Advent Calendar 2025 3日目 クリスマスを目標に Proxmox 9.1 で Minecraft の サーバーを立てる 検証環境編
こちらはProxmox Advent Calendar 2025 の3日目の記事になります。
こんにちは。とあるところでテクニカルサポートをやっている nesk です。 ひょんなことから、マインクラフトのサーバーをたてたいという話になり、どこのレンタルサーバーを借りるかみたいな話になったので、別に自分で立てればいいのでは?となり、がんばることになりました。
ただ、私の自宅サーバーの環境は vSphere 8.0U3 環境であり、さらにはこれから 9.0 の検証も控えています。 定期的に ESXi ホストが停止したり立て直しが発生するため、ゲームをするときにそれでは大変です。そこで Proxmox の環境を構築することにしました。
ただ、私は Proxmox にあまり詳しくないので、いきなり Proxmox の本番環境にあれこれをしてリストアするが大変になるのを避けるため、本番環境とは別に vSphere の環境に仮想 Proxmox のホストを立て、本番環境用には Proxmox 8.3 をインストールされたまま放置された物理サーバー(ML110G7)を使用することにしました。 以下が環境の図です。

今回の目標はクリスマスまでに Minecraft のサーバーを構築することが目標となります。
作業開始
まずは、Proxmox 検証環境のアップデートを実施します。 とりあえず公式ドキュメントを読んでおけという風潮なので読んでみます
アップグレード前の必須要件
すべてのノードを、Proxmox VE 8.x の最新バージョン (8.4.1 以降) にアップデートしておく必要があります。(だめだ!)
ハイパーコンバージドCephの場合: Proxmox VE 9.0へのアップグレードを開始する前に、CephクラスターをCeph 19.2 Squidにアップグレードしておく必要があります。(使わない!)
アクセス方法: SSH接続が切断されても作業が継続できるように、IKVM/IPMI や ターミナルマルチプレクサ(tmuxやscreen) を使用することが強く推奨されます。(なるほど)
ルートマウントポイントに最低 5GB(理想的には 10GB以上) の空きディスク容量が必要です。(そこそこ)
pve8to9 チェックリストスクリプトの実行
- Proxmox VE 8.4 パッケージに含まれている pve8to9 というチェックリストプログラムをアップグレードの前に必ず実行してください。(重要)
というわけなので、手順としては 8.3 から 8.4 、そこからの 9.0 系になる模様です。
現在の一台ある検証環境はこちら。
root@pve:~# pveversion pve-manager/8.3.0/c1689ccb1065a83b (running kernel: 6.8.12-4-pve)
何も考えずに apt updateとapt dist-upgrade を実行します。
root@pve:~# apt update Hit:1 http://security.debian.org bookworm-security InRelease Hit:2 http://ftp.jp.debian.org/debian bookworm InRelease Hit:3 http://ftp.jp.debian.org/debian bookworm-updates InRelease Get:4 http://download.proxmox.com/debian/pve bookworm InRelease [2,768 B] Get:5 http://download.proxmox.com/debian/pve bookworm/pve-no-subscription amd64 Packages [522 kB] Fetched 525 kB in 3s (174 kB/s) Reading package lists... Done Building dependency tree... Done Reading state information... Done 209 packages can be upgraded. Run 'apt list --upgradable' to see them. root@pve:~#
root@pve:~# apt dist-upgrade Reading package lists... Done Building dependency tree... Done Reading state information... Done Calculating upgrade... Done The following NEW packages will be installed: libdpkg-perl libfile-fcntllock-perl proxmox-kernel-6.8.12-17-pve-signed pve-nvidia-vgpu-helper virtiofsd The following packages will be upgraded: base-files bash bind9-dnsutils bind9-host bind9-libs bsdextrautils bsdutils busybox ca-certificates corosync criu curl debian-archive-keyring dirmngr distro-info-data e2fsprogs eject fdisk fonts-glyphicons-halflings gcc-12-base gnupg gnupg-l10n gnupg-utils gnutls-bin gpg gpg-agent gpg-wks-client gpg-wks-server gpgconf gpgsm gpgv grub-common grub-efi-amd64-bin grub-efi-amd64-signed grub-pc grub-pc-bin grub2-common init init-system-helpers initramfs-tools initramfs-tools-core krb5-locales libarchive13 libavahi-client3 libavahi-common-data libavahi-common3 libblkid1 libbpf1 libc-bin libc-l10n libc6 libcap2 libcap2-bin libcfg7 libcmap4 libcom-err2 libcorosync-common4 libcpg4 libcurl3-gnutls libcurl4 libexpat1 libext2fs2 libfdisk1 libfile-find-rule-perl libfreetype6 libgcc-s1 libglib2.0-0 libgnutls-dane0 libgnutls30 libgnutlsxx30 libgssapi-krb5-2 libgstreamer-plugins-base1.0-0 libgstreamer1.0-0 libicu72 libjs-bootstrap libjson-xs-perl libk5crypto3 libknet1 libkrb5-3 libkrb5support0 libldb2 liblzma5 libmount1 libnfsidmap1 libnozzle1 libnss-systemd libnvpair3linux libpam-systemd libperl5.36 libproxmox-acme-perl libproxmox-acme-plugins libproxmox-backup-qemu0 libproxmox-rs-perl libpve-access-control libpve-cluster-api-perl libpve-cluster-perl libpve-common-perl libpve-guest-common-perl libpve-http-server-perl libpve-network-api-perl libpve-network-perl libpve-notify-perl libpve-rs-perl libpve-storage-perl libpython3.11-minimal libpython3.11-stdlib libqt5core5a libqt5dbus5 libqt5network5 libquorum5 librabbitmq4 libsmartcols1 libsmbclient libsndfile1 libsqlite3-0 libss2 libssl3 libstdc++6 libsubid4 libsystemd-shared libsystemd0 libtasn1-6 libtpms0 libudev1 libunbound8 libuuid1 libuutil3linux libvotequorum8 libwbclient0 libxml2 libxslt1.1 libyaml-libyaml-perl libzfs4linux libzpool5linux locales login logsave lxc-pve mount nfs-common novnc-pve openssh-client openssh-server openssh-sftp-server openssl passwd perl perl-base perl-modules-5.36 proxmox-archive-keyring proxmox-backup-client proxmox-backup-file-restore proxmox-backup-restore-image proxmox-firewall proxmox-kernel-6.8 proxmox-kernel-helper proxmox-mail-forward proxmox-mini-journalreader proxmox-offline-mirror-docs proxmox-offline-mirror-helper proxmox-ve proxmox-widget-toolkit pve-cluster pve-container pve-docs pve-edk2-firmware pve-edk2-firmware-legacy pve-edk2-firmware-ovmf pve-esxi-import-tools pve-firewall pve-firmware pve-ha-manager pve-i18n pve-manager pve-qemu-kvm pve-xtermjs python3-pkg-resources python3-setuptools python3-urllib3 python3.11 python3.11-minimal qemu-server rsync samba-common samba-libs smbclient spiceterm spl sqlite3 ssh systemd systemd-boot systemd-boot-efi systemd-sysv tzdata ucf udev uidmap util-linux util-linux-extra vim-common vim-tiny vncterm wget xsltproc xz-utils zfs-initramfs zfs-zed zfsutils-linux 209 upgraded, 5 newly installed, 0 to remove and 0 not upgraded. Need to get 468 MB of archives. After this operation, 750 MB of additional disk space will be used. Do you want to continue? [Y/n] Y <--- 実行許可を聞かれているので Y を入力して Enter
700MB ぐらいのファイルをダウンロードしてきて、アップグレードを頑張ってくれます。
作業が終わったら、リブートを実行。
~~~~ update-initramfs: Generating /boot/initrd.img-6.8.12-4-pve Running hook script 'zz-proxmox-boot'.. Re-executing '/etc/kernel/postinst.d/zz-proxmox-boot' in new private mount namespace.. No /etc/kernel/proxmox-boot-uuids found, skipping ESP sync. Couldn't find EFI system partition. It is recommended to mount it to /boot or /efi. Alternatively, use --esp-path= to specify path to mount point. Processing triggers for ca-certificates (20230311+deb12u1) ... Updating certificates in /etc/ssl/certs... 0 added, 0 removed; done. Running hooks in /etc/ca-certificates/update.d... done. root@pve:~# pveversion pve-manager/8.3.0/c1689ccb1065a83b (running kernel: 6.8.12-4-pve) root@pve:~# reboot
リブート後にバージョンを改めて確認します。
root@pve:~# pveversion pve-manager/8.4.14/b502d23c55afcba1 (running kernel: 6.8.12-4-pve) root@pve:~#
バージョンが上がっていることを確認したら、pve8to9というスクリプトを実行します。
これで正しく 9.0 にアップデートすることができるか確認ができるようです。
root@pve:~# pve8to9
= CHECKING VERSION INFORMATION FOR PVE PACKAGES =
Checking for package updates..
PASS: all packages up-to-date
Checking proxmox-ve package version..
PASS: proxmox-ve package has version >= 8.4-0
Checking running kernel version..
PASS: running kernel '6.8.12-4-pve' is considered suitable for upgrade.
= CHECKING CLUSTER HEALTH/SETTINGS =
SKIP: standalone node.
= CHECKING HYPER-CONVERGED CEPH STATUS =
SKIP: no hyper-converged ceph setup detected!
= CHECKING CONFIGURED STORAGES =
PASS: storage 'local' enabled and active.
PASS: storage 'local-lvm' enabled and active.
INFO: Checking storage content type configuration..
PASS: no storage content problems found
PASS: no storage re-uses a directory for multiple content types.
INFO: Check for usage of native GlusterFS storage plugin...
PASS: No GlusterFS storage found.
INFO: Checking whether all external RBD storages have the 'keyring' option configured
SKIP: No RBD storage configured.
= VIRTUAL GUEST CHECKS =
INFO: Checking for running guests..
PASS: no running guest detected.
INFO: Checking if LXCFS is running with FUSE3 library, if already upgraded..
SKIP: not yet upgraded, no need to check the FUSE library version LXCFS uses
INFO: Checking for VirtIO devices that would change their MTU...
PASS: All guest config descriptions fit in the new limit of 8 KiB
INFO: Checking container configs for deprecated lxc.cgroup entries
PASS: No legacy 'lxc.cgroup' keys found.
INFO: Checking VM configurations for outdated machine versions
PASS: All VM machine versions are recent enough
= MISCELLANEOUS CHECKS =
INFO: Checking common daemon services..
PASS: systemd unit 'pveproxy.service' is in state 'active'
PASS: systemd unit 'pvedaemon.service' is in state 'active'
PASS: systemd unit 'pvescheduler.service' is in state 'active'
PASS: systemd unit 'pvestatd.service' is in state 'active'
INFO: Checking for supported & active NTP service..
PASS: Detected active time synchronisation unit 'chrony.service'
NOTICE: Less than 10 GB free space on root file system.
INFO: Checking if the local node's hostname 'pve' is resolvable..
INFO: Checking if resolved IP is configured on local node..
PASS: Resolved node IP '192.168.51.125' configured and active on single interface.
INFO: Check node certificate's RSA key size
PASS: Certificate 'pve-root-ca.pem' passed Debian Busters (and newer) security level for TLS connections (4096 >= 2048)
PASS: Certificate 'pve-ssl.pem' passed Debian Busters (and newer) security level for TLS connections (2048 >= 2048)
INFO: Checking backup retention settings..
PASS: no backup retention problems found.
INFO: checking CIFS credential location..
PASS: no CIFS credentials at outdated location found.
INFO: Checking permission system changes..
INFO: Checking custom role IDs
PASS: no custom roles defined
INFO: Checking node and guest description/note length..
PASS: All node config descriptions fit in the new limit of 64 KiB
INFO: Checking if the suite for the Debian security repository is correct..
PASS: found no suite mismatch
INFO: Checking for existence of NVIDIA vGPU Manager..
PASS: No NVIDIA vGPU Service found.
INFO: Checking bootloader configuration...
WARN: systemd-boot package installed on legacy-boot system is not necessary, consider removing it
INFO: Check for dkms modules...
SKIP: could not get dkms status
INFO: Check for legacy 'filter' or 'group' sections in /etc/pve/notifications.cfg...
INFO: Check for legacy 'notification-policy' or 'notification-target' options in /etc/pve/jobs.cfg...
PASS: No legacy 'notification-policy' or 'notification-target' options found!
INFO: Check for LVM autoactivation settings on LVM and LVM-thin storages...
PASS: all guest volumes on storage 'local-lvm' have autoactivation disabled
PASS: No problematic volumes found.
INFO: Checking lvm config for thin_check_options...
PASS: Check for correct thin_check_options passed
INFO: Check space requirements for RRD migration...
du: cannot access '/var/lib/rrdcached/db/pve2-vm': No such file or directory
PASS: Enough free disk space for increased RRD metric granularity requirements, which is roughly 1.87 MiB.
INFO: Checking for IPAM DB files that have not yet been migrated.
PASS: No legacy IPAM DB found.
PASS: No legacy MAC DB found.
INFO: Checking if the legacy sysctl file '/etc/sysctl.conf' needs to be migrated to new '/etc/sysctl.d/' path.
PASS: Legacy file '/etc/sysctl.conf' exists but does not contain any settings.
INFO: Checking if matching CPU microcode package is installed.
WARN: The matching CPU microcode package 'intel-microcode' could not be found! Consider installing it to receive the latest security and bug fixes for your CPU.
Ensure you enable the 'non-free-firmware' component in the apt sources and run:
apt install intel-microcode
SKIP: NOTE: Expensive checks, like CT cgroupv2 compat, not performed without '--full' parameter
= SUMMARY =
TOTAL: 43
PASSED: 34
SKIPPED: 6
WARNINGS: 2
FAILURES: 0
ATTENTION: Please check the output for detailed information!
root@pve:~#
チェックしたところ、WARNINGS に 2 個の項目があるようです。 この検証環境は 8.3 をインストールした直後でサブスクリプションは無償版しか適用していない環境です。
WARN: systemd-boot package installed on legacy-boot system is not necessary, consider removing it
WARN: The matching CPU microcode package 'intel-microcode' could not be found! Consider installing it to receive the latest security and bug fixes for your CPU.
Ensure you enable the 'non-free-firmware' component in the apt sources and run:
apt install intel-microcode
WARN: systemd-boot package installed on legacy-boot system is not necessary, consider removing it
どうやらapt remove systemd-bootを実行することで回避ができる模様です。
root@pve:~# apt remove systemd-boot Reading package lists... Done Building dependency tree... Done Reading state information... Done The following packages will be REMOVED: systemd-boot 0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded. After this operation, 250 kB disk space will be freed. Do you want to continue? [Y/n] y <---実行してもいいか聞かれているのでy (Reading database ... 54107 files and directories currently installed.) Removing systemd-boot (252.39-1~deb12u1) ... Processing triggers for man-db (2.11.2-2) ... root@pve:~#
pve8to9を再度実行してみます。
SKIP: NOTE: Expensive checks, like CT cgroupv2 compat, not performed without '--full' parameter = SUMMARY = TOTAL: 43 PASSED: 34 SKIPPED: 7 WARNINGS: 1 FAILURES: 0 ATTENTION: Please check the output for detailed information! root@pve:~#
1 個減りました。
WARN: The matching CPU microcode package 'intel-microcode' could not be found! Consider installing it to receive the latest security and bug fixes for your CPU. Ensure you enable the 'non-free-firmware' component in the apt sources and run: apt install intel-microcode
/etc/apt/sources.list を編集して以下の内容を追記
deb http://ftp.jp.debian.org/debian bookworm main contrib non-free non-free-firmware deb http://ftp.jp.debian.org/debian bookworm-updates main contrib non-free non-free-firmware deb http://security.debian.org bookworm-security main contrib non-free non-free-firmware
設定反映後、以下のコマンドを実行してインストール
apt update apt install intel-microcode
root@pve:~# pve8to9 = CHECKING VERSION INFORMATION FOR PVE PACKAGES = Checking for package updates.. PASS: all packages up-to-date Checking proxmox-ve package version.. PASS: proxmox-ve package has version >= 8.4-0 Checking running kernel version.. PASS: running kernel '6.8.12-17-pve' is considered suitable for upgrade. = CHECKING CLUSTER HEALTH/SETTINGS = SKIP: standalone node. = CHECKING HYPER-CONVERGED CEPH STATUS = SKIP: no hyper-converged ceph setup detected! = CHECKING CONFIGURED STORAGES = PASS: storage 'local' enabled and active. PASS: storage 'local-lvm' enabled and active. INFO: Checking storage content type configuration.. PASS: no storage content problems found PASS: no storage re-uses a directory for multiple content types. INFO: Check for usage of native GlusterFS storage plugin... PASS: No GlusterFS storage found. INFO: Checking whether all external RBD storages have the 'keyring' option configured SKIP: No RBD storage configured. = VIRTUAL GUEST CHECKS = INFO: Checking for running guests.. PASS: no running guest detected. INFO: Checking if LXCFS is running with FUSE3 library, if already upgraded.. SKIP: not yet upgraded, no need to check the FUSE library version LXCFS uses INFO: Checking for VirtIO devices that would change their MTU... PASS: All guest config descriptions fit in the new limit of 8 KiB INFO: Checking container configs for deprecated lxc.cgroup entries PASS: No legacy 'lxc.cgroup' keys found. INFO: Checking VM configurations for outdated machine versions PASS: All VM machine versions are recent enough = MISCELLANEOUS CHECKS = INFO: Checking common daemon services.. PASS: systemd unit 'pveproxy.service' is in state 'active' PASS: systemd unit 'pvedaemon.service' is in state 'active' PASS: systemd unit 'pvescheduler.service' is in state 'active' PASS: systemd unit 'pvestatd.service' is in state 'active' INFO: Checking for supported & active NTP service.. PASS: Detected active time synchronisation unit 'chrony.service' NOTICE: Less than 10 GB free space on root file system. INFO: Checking if the local node's hostname 'pve' is resolvable.. INFO: Checking if resolved IP is configured on local node.. PASS: Resolved node IP '192.168.51.125' configured and active on single interface. INFO: Check node certificate's RSA key size PASS: Certificate 'pve-root-ca.pem' passed Debian Busters (and newer) security level for TLS connections (4096 >= 2048) PASS: Certificate 'pve-ssl.pem' passed Debian Busters (and newer) security level for TLS connections (2048 >= 2048) INFO: Checking backup retention settings.. PASS: no backup retention problems found. INFO: checking CIFS credential location.. PASS: no CIFS credentials at outdated location found. INFO: Checking permission system changes.. INFO: Checking custom role IDs PASS: no custom roles defined INFO: Checking node and guest description/note length.. PASS: All node config descriptions fit in the new limit of 64 KiB INFO: Checking if the suite for the Debian security repository is correct.. PASS: found no suite mismatch INFO: Checking for existence of NVIDIA vGPU Manager.. PASS: No NVIDIA vGPU Service found. INFO: Checking bootloader configuration... SKIP: System booted in legacy-mode - no need for additional packages INFO: Check for dkms modules... SKIP: could not get dkms status INFO: Check for legacy 'filter' or 'group' sections in /etc/pve/notifications.cfg... INFO: Check for legacy 'notification-policy' or 'notification-target' options in /etc/pve/jobs.cfg... PASS: No legacy 'notification-policy' or 'notification-target' options found! INFO: Check for LVM autoactivation settings on LVM and LVM-thin storages... PASS: all guest volumes on storage 'local-lvm' have autoactivation disabled PASS: No problematic volumes found. INFO: Checking lvm config for thin_check_options... PASS: Check for correct thin_check_options passed INFO: Check space requirements for RRD migration... du: cannot access '/var/lib/rrdcached/db/pve2-vm': No such file or directory PASS: Enough free disk space for increased RRD metric granularity requirements, which is roughly 1.87 MiB. INFO: Checking for IPAM DB files that have not yet been migrated. PASS: No legacy IPAM DB found. PASS: No legacy MAC DB found. INFO: Checking if the legacy sysctl file '/etc/sysctl.conf' needs to be migrated to new '/etc/sysctl.d/' path. PASS: Legacy file '/etc/sysctl.conf' exists but does not contain any settings. INFO: Checking if matching CPU microcode package is installed. PASS: Found matching CPU microcode package 'intel-microcode' installed. SKIP: NOTE: Expensive checks, like CT cgroupv2 compat, not performed without '--full' parameter = SUMMARY = TOTAL: 43 PASSED: 35 SKIPPED: 7 WARNINGS: 0 FAILURES: 0 root@pve:~#
問題は解決できたので、8.4 から 9.1 への作業を開始。
リポジトリの更新作業を実施。
sed -i 's/bookworm/trixie/g' /etc/apt/sources.list sed -i 's/bookworm/trixie/g' /etc/apt/sources.list.d/pve-enterprise.list
cat > /etc/apt/sources.list.d/proxmox.sources << EOF Types: deb URIs: http://download.proxmox.com/debian/pve Suites: trixie Components: pve-no-subscription Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg EOF
apt updateとapt dist-upgradeを実行します。
作業後にはrebootを実行し、検証環境のアップデートは完了。
再起動後にバージョンを確認。
root@pve:~# pveversion pve-manager/9.1.1/42db4a6cf33dac83 (running kernel: 6.17.2-2-pve) root@pve:~#
現状だと、上記の手順を踏むことで 9.1 まで一気にアップデートできるんですね。 今回はインターネットに接続できる環境でアップデートを実施したのでそんなに苦もなく実施できましたがもしかするとISOファイル形式だと少し手順が異なるかも…
本番環境で使用している場合にはインターネット側に出ることができない場合もあると思うので、次回の本番環境で実施する際にはインターネットがつながらない前提でアップデートを実施してみようと思います。
来週ぐらいにアドベントカレンダーの続きを書きたいと思います。
Proxmox めんどくさい!
Proxmox の話を書こうとして久々にメジャーアップデートとかをやってたのですけど、普通にめんどくさい… 8.3 だったので 9.0 にあげようとしたら 8.4 にあげてから 9.0 にしないといけないので、そこそこに手順がある。 1台だけならまだいいけど、これクラスタであったら結構大変だなあと思った今日この頃
EVC クラスタの設定(vSAN 設定の場合)
vSphere の検証環境で簡易 vSAN 環境を使用していて vMotion を使用しようとしたら
「 EVC クラスタの設定がされていません」
となってしまい、クラスタの意味が無くなっていたので設定を見直そうと思ったらただ単純に EVC をオンにするだけではない模様。
KB 326970
How to enable EVC in vCenter Server 6.5/6.7/7.0/8.0 if VC VM is part of the same vSAN cluster
https://knowledge.broadcom.com/external/article/326970
何が言いたいのかというと、一度別の vSAN クラスタを作って EVC クラスタの設定を ONにしてからそこに既存のホストたちや vCenter をぶち込む必要があるらしい。
EVC設定プロセス
クラスタ作成と設定
vSAN設定
esxcfg-advcfg -s 1 /VSAN/IgnoreClusterMemberListUpdates
ホスト移行
- クラスタ内の最初のホストを選択し、すべてのVMを別ホストに移行。
- メンテナンスモード(データ移行なし)に設定しホストを切断。
- 新EVCクラスタへホストをドラッグ&ドロップして再接続、メンテナンスモード解除。
vCenter仮想マシン設定
EVCクラスタへのホスト追加
設定のリバース
- すべてのホストで以下のコマンドを実行してvSANユニキャスト更新を再有効化。
esxcfg-advcfg -s 0 /VSAN/IgnoreClusterMemberListUpdates
ヘルスチェック
- ネットワークパーティションが報告されていないことを確認。「vCenter state is authoritative」にエラーがあれば修正ボタンで解決。
内容は上記のものですけど、この作業をやり始めたのが 0 時くらいでいろいろ終わったのが朝の 4 時でした。vSANクラスタじゃなければそこまで EVC の設定を ON にすることは難しくないと思いますが。
Windows 環境へリモートデスクトップをした際、何故か日本語キーボード環境から接続しているのに英字キーボード判定になっている
Windows 環境を触る機会があったのですが、Mac でリモート接続したほうが楽なので Windows 環境のリモート接続を許可して接続してみた。
するとなんでか知らないけど Mac のキーボードが JIS キーボードなのにUS判定されてしまっている・・・。
大体この場合はレジストリを弄るパターンなので下記の手順でなんとかした。
Windows レジストリによるキーボード設定の詳細
Windows では、キーボードレイアウトの情報がレジストリに保存されている。リモートデスクトップ接続時に誤ったキーボードレイアウト(英字キーボードなど)で認識される場合、レジストリキーの設定が問題である可能性がある。
レジストリキーの場所
キーボードレイアウトに関係するレジストリキーは以下になる。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters
チェックすべきレジストリ値
上記パスにある以下の項目を確認する。
レジストリ名 データ型 正しい値 説明 LayerDriver JPN文字列 (REG_SZ) kbd106.dll日本語キーボードドライバー OverrideKeyboardIdentifier文字列 (REG_SZ) PCAT_106KEY日本語キーボード識別情報 OverrideKeyboardSubtypeDWORD 2キーボードサブタイプ OverrideKeyboardTypeDWORD 7日本語キーボード (106/109) を表す識別子
設定方法
(1) レジストリエディターでの修正
- [Windows] + [R] キーを押し、「
regedit」と入力してレジストリエディターを開きます。 - 上記のパスへ移動します。
LayerDriver JPNやOverrideKeyboardIdentifierなどの値を確認し、正しい値に修正します。- 修正が完了したらPCを再起動します。
(2) レジストリファイルを作成して修正
以下の内容を .reg ファイルとして保存して修正する方法です
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters]
"LayerDriver JPN"="kbd106.dll"
"OverrideKeyboardIdentifier"="PCAT_106KEY"
"OverrideKeyboardSubtype"=dword:00000002
"OverrideKeyboardType"=dword:00000007
*注意事項
- バックアップを必ず取る: レジストリ編集はシステムに重大な影響を与えるため、変更前にバックアップを取ってください。
- ドライバーの再インストール: 上記の修正後に問題が解決しない場合、キーボードドライバーを削除して再インストールする方法も検討してください。
とりあえず、リモートデスクトップ接続あるあるネタなのでメモとして書いておく。
ESXi 監視の Docker 版 Zabbix 7.0 構築
家の仮想基盤を監視する為なのと、Zabbix での ESXi 関連の知見をためたいと思ったので自宅に Zabbix 7.0 系を Docker で構築しました。
本当は K8s とかにのせてどうのこうのとかやりたかったんですけど、監視はシンプルにしたかったので、特にごちゃごちゃせずに仮想マシンを 1 台立ててその上に Docker でどかーんと立てました。
基本的な構成はこちら。
CPU は 2 コアでメモリも 4GB 。
ハードディスクは一応 128GB にしていますが、足りなければ増量も検討してます。
でも検証用なのでそこまでガチにやる気も無いですし、ローテーションさえなんとかすればいいかなと。

ゲスト OS は AlmaLinux にしました。
最近、サポート系も増えそうなニュースがあったので、知見も増えるのではないかと思ってます。
https://www.cybertrust.co.jp/pressrelease/2024/0918-fti-ctj.html
Zabbixの構築方法(コンテナベース)
前提条件
- インストール環境
DockerおよびDocker ComposeがインストールされたLinuxマシン - 基本コンポーネント
- Zabbix Server: データの収集および監視
- Zabbix Webインターフェース: 管理画面
- Zabbix Agent: 監視対象ホストにインストール
Docker Composeを使った構築
Docker Composeファイル作成
基本構成の docker-compose.yml ファイルを作成します。
version: '3.5'
services:
zabbix-server:
image: zabbix/zabbix-server-pgsql:alpine-7.0-latest
environment:
- DB_SERVER_HOST=zabbix-postgres
- POSTGRES_USER=zabbix
- POSTGRES_PASSWORD=zabbix_password
- ZBX_ENABLE_SNMP_TRAPS=1
depends_on:
- zabbix-postgres
ports:
- "10051:10051"
zabbix-web:
image: zabbix/zabbix-web-nginx-pgsql:alpine-7.0-latest
environment:
- DB_SERVER_HOST=zabbix-postgres
- POSTGRES_USER=zabbix
- POSTGRES_PASSWORD=zabbix_password
ports:
- "8080:8080"
zabbix-postgres:
image: postgres:13-alpine
environment:
- POSTGRES_USER=zabbix
- POSTGRES_PASSWORD=zabbix_password
- POSTGRES_DB=zabbix
Docker Compose 実行
作成した docker-compose.yml ファイルのあるディレクトリで以下を実行します。
docker-compose up -d
動作確認
- Webブラウザで
http://<ホストIP>:8080にアクセス - 初回セットアップウィザードでデータベース設定を入力
- DB Server Host:
zabbix-postgres - DB User:
zabbix - DB Password:
zabbix_password
- DB Server Host:
- 管理画面(デフォルトユーザー:admin、パスワード:zabbix)にログイン
Docker で立てる場合の注意点
Docker で立てるにはちゃんとインストールされていることが前提なので確認が必要です。
Ubuntu だと OS インストール時に Docker をインストールしてくれることもありますけど、どうなんだろう。
[nesk@localhost ~]$ docker -v
Docker version 27.5.1, build 9f9e405
あとこれは Docker の場合の注意点なんですけど本来変数とかって
cat /etc/zabbix/zabbix_agentd.conf
とかで編集すると思うのですが、それだと Docker を再起動する度にもどってしまうっぽい。
なので Docker 起動時に読み込む変数側を編集してあげないといけないです。
# ZBX_STARTALERTERS=3 # Available since 3.4.0
# ZBX_STARTLLDPROCESSORS=2
ZBX_JAVAGATEWAY=zabbix-java-gateway
# ZBX_JAVAGATEWAYPORT=10052
# ZBX_STARTJAVAPOLLERS=5 # #を削除する
# ZBX_STARTVMWARECOLLECTORS=5 # #を削除する
# ZBX_VMWAREFREQUENCY=60 # #を削除する
# ZBX_VMWAREPERFFREQUENCY=60 # #を削除する
# ZBX_VMWARECACHESIZE=8M # #を削除する
# ZBX_VMWARETIMEOUT=10 # #を削除する
# ZBX_ENABLE_SNMP_TRAPS=true # #を削除する
# ZBX_SOURCEIP=
# ZBX_SMSDEVICES=
# ZBX_HOUSEKEEPINGFREQUENCY=1
# ZBX_MAXHOUSEKEEPERDELETE=5000
# ZBX_PROBLEMHOUSEKEEPINGFREQUENCY=60
# ZBX_CACHESIZE=8M
"zabbix-docker/env_vars/.env_srv"
今回、vSphere や、仮想マシンを監視したいと考えているので、上記の項目に関しては入力しないといけない。(あまりこの項目について書かれている情報がないのはなんで・・・・?)

自分は自宅の温度とかも計測に使っていたりいろいろやってます。
アラート関連をもう少しきれいにしたいところですね。
ESXi の上に Proxmoxを立てよう。
最近のご案内
ここ数日、Zabbixの設定とか、Obsidianの設定とかいろいろやったのでちょっといろいろ自分のメモがてらいろいろ書こうと思ってます。結構ボリュームが大きくなってきたかも。
一応、はてなブログもあるんですけど、最近運用方法についてどうしようか考えてます。
というのも、ドメイン運用しているのはこの当ブログなのですが、はてなブログは無料版なのでつかうことができないのです。
ただ、はてなブログに関してはProxmox関連の情報をいろいろ書いていたりしているので。どちらかに統合するのもいいのかとは考えていたのですがせっかくなのでVMware関連の情報はこっちのブログにつらつら書いておこうと思い、ここに垂れ流すことにしました。
Proxmoxは時間があればやる感じなので、更新頻度は少なめですかね。
2月2日は都内でも雪が降りそうな気配がありますが、どうでしょうかね。
