ミニPC「NucBox G2(Plus)」をProxmoxで仮想サーバー化、OpenWrtとWireGuardで最強サーバーを構築する

スポンサーリンク
02 Proxmox
本記事はPRによる消費税込みの価格表示です

仮想サーバーを構築すると1台のPCにさまざまなサーバー機能を構築することができます。

「仮想サーバー」というとなんだかすごく大きくて高価なPCサーバーが必要な気がしますが、そうではありません。

ちょっとした仮想サーバーなら今人気のミニPCを使って、2万円~3万円程度で仮想サーバー環境を構築することもできます。

本記事では人気のミニPC「GMKTec NucBox G2」を使ってProxmox VEによる仮想サーバーの構築、さらにDockerを使っていろんな機能を盛り込むまでを説明していきます。

  1. Proxmox仮想サーバー構築・運用に必要な機材
    1. ミニPC「NucBox G2(Plus)」
    2. 最新CPU N150搭載「NucBox G2 Plus」
    3. その他必要な機材
    4. 仮想システム「Proxmox VE(Virtual Environment)」
  2. Proxmoxインストールメディア(USBメモリ)作成
    1. Proxmoxインストールファイル(ISO)ダウンロード
    2. インストールメディア(USBメモリ)の作成
  3. GMKTec NucBox G2(Plus)にProxmoxをインストール
    1. Proxmoxのインストール
    2. Proxmox Web UIへアクセス
    3. リポジトリの変更
    4. ネットワーク設定
  4. Windows11仮想マシン(VM)の構築
    1. インストールに必要なもの
    2. 仮想マシン(VM)の構築
    3. 仮想マシン(VM)へWindows11をインストール
  5. LXCコンテナ(CT)でDockerサーバーを構築
    1. LXCコンテナのインストール
    2. LXCコンテナの起動と初期設定
    3. LXCコンテナへDockerをインストール
  6. DockerにPortainer-CE環境を構築する
    1. Portainer-ceのDockerイメージをインストール
  7. DockerでVPNサーバー環境、自宅クラウドを構築
    1. WireGuardで自宅クラウド
    2. Dockerアプリ「WG-Easy」で簡単WireGuard
  8. OpenWrtでオールインワンルーター化
    1. OpenWrtディスクイメージの取得
    2. OpenWrt仮想マシンの定義作成
    3. OpenWrtイメージファイルのインポート(仮想ディスクの作成)
    4. OpenWrt仮想マシンの最終設定
    5. OpenWrt仮想マシンのLAN環境構築
    6. 構築したネットワーク環境(LAN)の確認
    7. OpenWrt仮想マシンのWAN環境構築
    8. OpenWrt仮想マシンの全体環境設定
  9. まとめ、ミニPC「NucBox G2」で仮想サーバー構築
    1. いろいろ遊べるGMKTec NucBox G2(Plus)
    2. 最新CPU「INTEL N150」搭載のNucBox G2 Plus
    3. Windows11ライセンスの移行

Proxmox仮想サーバー構築・運用に必要な機材

本記事ではミニPC「GMKTec NucBox G2」を使ってProxmox仮想サーバーを構築していきます。

この作業において必要な機材等を先にご紹介しておきます。

ミニPC「NucBox G2(Plus)」

本記事ではミニPC「NucBox G2(1TBモデル)」を使ってProxmox仮想サーバーを構築していきます。

GMKtec EVO-X1 AI Mini PC AMD Ryzen AI 9 HX-370(最大5.1GHz 12コア/24スレッド)搭載 32GB LPDDR5X 7500MHz + 1TB PCIe 4.0 SSD Windows 11 Pro対応 3画面8K出力 デュアル2.5Gbps LAN (AMD Ryzen 5425U 16GB+1TB)
GMKtec
【次世代AIミニPC:AMD Ryzen 9 HX-370搭載】GMKtec EVO-X1ミニPCは、AMD Ryzen AI 300シリーズ「Strix Point」を搭載した次世代のAIミニPCです。最新のZen 5アーキテクチャに基づき、最大5.1GHzの高速パフォーマンスを発揮。スムーズなマルチタスクや高速な処理能力を提供し、仕事もゲームも快適にこなせます。65Wの低消費電力で、パフォーマンスと効率の完璧なバランスを実現し、環境にも優しい設計です。

最新CPU N150搭載「NucBox G2 Plus」

Intelの最新省電力CPUであるN150がリリースされたことで、NucBox G2(N100搭載)も新型のNucBox G2 Plusへとモデルチェンジしています。

先述のように本記事では旧モデル(?)「NucBox G2」を使って仮想サーバーを構築していきますが、今後新たにミニPCを購入される場合は新型モデルの「NucBox G2 Plus」となるでしょう。

搭載CPUがN100からN150へ変わったくらいで製品仕様に大きな違いはありません。

【ミニpc Intel N150初登場】 GMKtecミニpc 最新第12世代インテルTwin Lake-N150 mini pc Windows 11 Pro DDR5 12GB+512G SSD 4コア/4スレッド 7nm 最大周波数3.6GHz WIFI6/BT5.2 TDP 15W 小型 M.2 2242 SATA(PCIe3.0) パソコン RJ45有線LANポート付き 静音性
GMKtec
【第12世代Intel Core-N150初登場・Windows11 ProミニPC】GMKtec G2 PlusミニPCは最新の第12世代Twin Lake-N150(最大周波数3.6GHz、4コア/4スレッド、6MBキャッシュ)を搭載。従来モデルより性能が18%向上し、オンライン学習、ビジネス作業、Web閲覧、動画鑑賞など、さまざまな作業がスムーズに楽しめます。標準搭載のWindows 11Proにより、セキュリティ面でも安心してお使いいただけます。

なお、本記事ではNucBox G2とNucBox G2 Plusを総じて「NucBox G2(Plus)」と表記します。

その他必要な機材

LANケーブル

NucBox G2(Plus)にはWi-Fi6の無線LAN機能がありますが、Proxmoxなどサーバー利用する場合は有線LAN接続で利用する形態になります。

NucBox G2(Plus)には1GbEのLANポートが2個あるので、Cat5e以上の規格対応のLANケーブルを用意しておきましょう。

USBメモリー(インストール時に使用)

Proxmoxのインストール時にインストールメディアとしてUSBメモリを利用します。

Proxmoxのインストールメディアは容量が1.5GB程度なので、最小容量(8GB程度)のUSBメモリがあれば十分です。

私は手持ちのこんなやつを使いました。

なお、容量が足りていればどんなUSBメモリでも良いですが、インストールメディアを作るときにUSBメモリの中身はすべて削除されるのでご注意ください。

ディスプレイ(インストール時に使用)

ミニPCにはディスプレイもキーボードもありません。

仮想サーバーとして環境構築が完了すれば運用においてはディスプレイ・キーボードは不要ですがインストール時には必要です。

NucBox G2(Plus)にはディスプレイ出力としてHDMIが2口、DP(DisplayPort)が1口あるので、HDMI対応またはDP対応のディスプレイが必要です。

HDMIケーブル(インストール時に使用)

HDMI対応またはDP対応のディスプレイが必要であることから当然ディスプレイとミニPCを接続するケーブルが必要です。

NucBox G2(Plus)には製品にHDMIケーブル1本が標準添付されており、私はこの付属品ケーブル(HDMI)を利用しました。

キャプチャボードでPCへ画面出力

ディスプレイを使わなくても「HDMIキャプチャボード」を利用することでミニPCからの画面出力をデスクトップPCやノートPCの画面へ出力することができます。

この仕組みを使えばNucBox G2(Plus)をディスプレイに直接接続することなく、ノートPCなどを使ってNucBox G2(Plus)の画面出力を行うことが可能となります。

私は以下のキャプチャボードを使用しました(出力先はノートPCの標準カメラアプリ)。

【2023新登場 l キャプチャーボード】 USB3.0 & HDMI 変換アダプタ HD画質録画 HD1080P/4Kパススルー機能 HDMI ビデオキャプチャー ゲーム録画/HDMIビデオ録画/ライブ配信用キャプチャー ボード 電源不要 小型軽量 低遅延 Switch/PS5/PS4/PS3/Xbox用サポート Windows 7/8/10 Linux OBS Potplayer YouTube Niconico Twitch対応 日本語取扱説明書付き
Newluck
【HDMIキャプチャーボード】この HDMI ゲーム キャプチャは、ほとんどのデバイス コンバーター (スマートフォン、ゲーム コンソール、カムコーダー、テレビ、DVD など) に接続して、PC/ラップトップを使用して録画およびライブ ストリームを行うことができます。 既存の動画編集ソフトに適しており、映像は鮮明で遅延がありません。

キャプチャボードを使ってWindows標準カメラアプリなどへ画面出力することで、画面表示を録画・撮影することもできるので便利です。

USBワイヤレスキーボード&マウス(インストール時に使用)

Proxmox仮想サーバー環境の構築後はほぼすべての操作をブラウザ上で行うため、運用においてNucBox G2(Plus)用のキーボードやマウスなどは必要ありません。

しかし、Proxmoxのインストール時にはキーボードが必要です(マウスもあると便利)。

基本的にはUSBタイプのキーボード&マウスを利用すると良いです。

私は以下のエレコム製のものを使用しています。

USBのワイヤレスタイプで1個のUSBレシーバーでキーボードとマウスが使えるので便利、安いけどキーボードタッチもそこそこ快適です。

仮想システム「Proxmox VE(Virtual Environment)」

必要なハードウェアは上記の通りです。

次にソフトウェアとして「Proxmox VE(Virtual Environment)」が必要です。

Proxmox VEはVMWareのような仮想サーバー機能を提供するソフトウェアで、有償・無償で利用することができます。

Proxmox VE(Virtual Environment) | Proxmox

本記事では仮想システムソフトウェアとして「Proxmox VE(Virtual Environment)」を無償バージョンモードで利用していきます。

Proxmoxインストールメディア(USBメモリ)作成

Proxmox VEのインストール前にインストールメディア(USBメモリ)の作成を行います。

Proxmoxインストールファイル(ISO)ダウンロード

まずはProxmox VE(Virtual Environment)のISOファイルを以下からダウンロードしておきます。

Proxmox VE Downloads | Proxmox

インストールメディア(USBメモリ)の作成

ダウンロードしたISOファイルをUSBメモリへ書き込みます。

書き込みの一番簡単な方法は「rufus」というツールを使用することです。

「rufus」は以下からダウンロードできます。

Rufus | Rufusプロジェクト

以上、ダウンロードしたProxmox VEのISOファイルをrufusを使ってUSBメモリへ書き込むことで、インストールメディア(USBメモリ)の作成が完了します。

GMKTec NucBox G2(Plus)にProxmoxをインストール

ここからは実際にミニPC「NucBox G2(Plus)」へProxmoxをインストールしていきます。

ProxmoxのインストールからProxmoxのネットワーク構成までを説明していきます。

Proxmoxのインストール

ではProxmoxのインストールの流れを画面説明していきます。

なお、本画面画像はスクリーンショット採取のために別途仮想環境で実行した結果を採用しています。

インストール画面の選択

ProxmoxへOpenWrtをインストール

インストーラーが起動するとインストール画面の選択が必要です。

一番上の「Graphic」インストール画面を選んでおきましょう。

規約へ同意

ProxmoxへOpenWrtをインストール

規約同意を求められるので「Accept」しておきます。

インストールディスクの選択

ProxmoxへOpenWrtをインストール

インストールディスクの選択画面となります。

搭載されているSSD領域およびインストールメディアとして使っているUSBメモリの2つがディスク領域として選択可能となるため、間違いの内容にSSD領域を選択してください。

※Proxmoxのインストーラーでは本画面で指定することで、システム領域をRAID化することもできますが、NucBox G2(Plus)にはSSDが1枚しか搭載できないため残念ながらRAID設定はできません。

地域情報の設定

ProxmoxへOpenWrtをインストール

地域情報の設定画面となります。

地域判定可能なインターネット接続がある場合には自動判定されますが、本記事の環境では(たぶん)地域の自動判定は行われません。

よって、以下の設定を行います。

Country “Japan”を選択
Time zone “Asia/Tokyo”を選択
Keyboard Layout “Japanese”を選択

rootパスワードの設定

ProxmoxへOpenWrtをインストール

Proxmoxの管理者(rootユーザー)のパスワード設定を行います。

ここで設定したrootユーザーパスワードはProxmox Web UIのログインパスワードとなります。

ネットワークの設定

ProxmoxへOpenWrtをインストール

ネットワーク設定画面となります。

「Management Interface」ではリストに4つのポートの選択肢が出てくるので、一番目のポートが選択されていることを確認してください。

そのうえで、本記事では以下のように設定しています。

Management Interface 一番目を選択
Hostname(FQDN) おすきなホスト名(FQDN)
※本記事では”pve.local”
IP Address(CIDR) Proxmox IPアドレス
※本記事では「192.168.11.10/24」
Gateway 管理用IPアドレスの「.1」を設定
※本記事では「192.168.11.1
DNS Server 管理用IPアドレスの「.1」を設定
※本記事では「192.168.11.1

インストールパラメーターの確認とインストール

ProxmoxへOpenWrtをインストール

最後にインストールパラメーターの確認画面が表示されるので確認してインストールを実行します。

インストールの終了

インストールが完了すると画面(HDMI出力)はコンソール画面でログイン待ち状態となります。

これ以降はほぼすべての操作をProxmox Web UI(ブラウザ)で行っていきます。

Proxmox Web UIへアクセス

インストールが完了したProxmoxは、その後の操作はほぼすべてをブラウザを使ったWebUI上で行っていきます。

Proxmoxの管理画面(Web UI)は以下のアドレスでログイン画面へアクセス可能です。

https://<< Proxmox仮想サーバーのIPアドレス >>:8006/

本記事ではProxmoxサーバーのIPアドレスを「192.168.11.50」としているので、WebUIへのアクセスは「https://192.168.11.50:8006」となります。

Proxmox管理画面へのログイン

ブラウザでProxmox管理画面へアクセスすると以下のようなログイン画面が表示されます。

NucBoxG2(Plus)でProxmox

ユーザ名 root
パスワード インストール時に設定したrootパスワード
言語 お好きな言語を選択

上記を設定・入力し「ログイン」ボタンを押下します。

Proxmox管理画面の構成

リポジトリの変更

Proxmoxは無料で使える仮想サーバーですが、別途有償サポートも提供されています。

Proxmoxのインストール直後には「有償サポートバージョンのお試し利用」の環境になっており、これを「無償バージョン」へ変更する必要があります。

このため、リポジトリを無償バージョン(No-Subscription)へ変更します。

エンタープライズ(有償版)リポジトリの無効化

無償バージョンのリポジトリへの変更は、メニュー「ノード > リポジトリ」からリポジトリ管理画面へ遷移します。

NucBoxG2(Plus)でProxmox

この画面で、まずは「エンタープライズ(有償版)リポジトリ」を無効にします。

「APTリポジトリ」のリスト下部2行を無効化します。

それぞれの行を選び、画面上部の「無効」ボタンを押下することでエンタープライズ(有償版)リポジトリを無効にします。
※2行を無効にします。

NucBoxG2(Plus)でProxmox

以上で「エンタープライズ(有償版)リポジトリ」の無効化が完了です。

No-Subscription(無償版)リポジトリの追加

続いて「No-Subscription(無償版)リポジトリ」をAPTリストへ追加します。

画面上部の「追加」ボタンを押下します。

NucBoxG2(Plus)でProxmox

リポジトリの選択・追加の画面が表示されるので、リストから「No-Subscription」を選択し、「OK」ボタンで画面を閉じます。

NucBoxG2(Plus)でProxmox

以上で「No-Subscription(無償版)リポジトリ」の追加が完了です。

Proxmoxシステムの最新化

APTリポジトリを「No-Subscription(無償版)」へ変更したので早速システムを最新化しておきましょう。

Proxmox管理画面メニューの「ノード > シェル」画面のコンソールからシステム更新のコマンドを発行してシステムをアップデートします。

NucBoxG2(Plus)でProxmox

コンソールから投入するコマンドは以下の通りです。

### Proxmoxシステム最新化 ###
apt update && apt -y upgrade

上記コマンドの投入により、Proxmox VEのシステムが「No-Subscription(無償バージョン)」モードで最新化されます。

ネットワーク設定

Proxmoxを仮想サーバーとして構築していく前にサーバー自体のネットワークを構成しておきます。

今回インストールしたNucBox G2(Plus)には1GbEのLANポートが2個あります。

インストール直後のネットワーク状態はインストール時に使用したLANポートのみが有効となっており、もう一方のLANポートは無効(利用できない)状態となっています。

この状態から「LAN1/LAN2は同じIPアドレス」へ変更します。つまり「2ポートハブ」と同じ仕組みにします。

ネットワークの初期状態

Proxmox管理メニューの「ノード > ネットワーク」にはProxmox仮想サーバーのネットワーク環境が定義されています。

本記事手順の初期状態では以下のような設定となっています。

名前 種別 ポート/スイッチ CIDR
enp1s0 ネットデバイス
enp4s0 ネットデバイス
vmbr0 Linux Bridge enp1s0 192.168.11.50/24
wlp2s0 不明

ここで「enp1s0/enp4s0」はNucBox G2(Plus)の物理LANポート(LAN1/LAN2)です。

これに対して論理デバイス(Linux Bridge)である「vmbr0」が定義されており、このvmbr0には物理ポート「enp1s0」が割り当てられており、そのCIDR(IPアドレス)は「192.168.11.50/24」となっている状態です。

そして、Proxmox仮想サーバーはすべてこの論理デバイスである「vmbr0」を使ってネットワーク通信を行います。

これが初期状態です。

2つめのLANポートを使えるようにする

現在は上記のように論理デバイス「vmbr0」には物理ポート「enp1s0」のみが割り当てられているので、NucBox G2(Plus)のLAN1ポートのみが利用可能な状態です。

これに対し、もう一方のLAN2ポートを使えるように、LAN2ポートを論理デバイス「vmbr0」に組み込みます。

NucBoxG2(Plus)でProxmox

「ネットワーク」画面から「vmbr0」を選び「編集」ボタンで編集モードに入ります。

NucBoxG2(Plus)でProxmox

編集画面では「ブリッジポート」欄に「enp1s0 enp4s0」と2つのポートを入力します。
※半角スペースで区切ります。

ブリッジポートを設定したら「OK」ボタンで編集画面を閉じます。

これで論理デバイス「vmbr0」の定義が変更されましたが、この状態はまだ保留状態でありシステム反映されていません。

ネットワーク画面上部の「設定を適用」ボタンを押下することで、この保留状態の設定をシステム反映させます。

NucBoxG2(Plus)でProxmox

以上でNucBox G2(Plus)の2つの物理ポート(LAN1/LAN2)が同じIPアドレスで利用できるようになりました。

名前 種別 ポート/スイッチ CIDR
enp1s0 ネットデバイス
enp4s0 ネットデバイス
vmbr0 Linux Bridge enp1s0 enp4s0 192.168.11.50/24
wlp2s0 不明

以上でNucBox G2(Plis)の2つのLANポート(LAN1/LAN2)の両方がIPアドレス「192.168.11.50/24」で利用可能となりました。

Windows11仮想マシン(VM)の構築

Proxmoxのインストールが一応完了したので、さっそく仮想マシンを構築してみましょう。

ProxmoxではWindows系・Linux系のどちらの仮想マシンも構築することができますが、まずはWindows11の仮想マシンを構築してみます。

インストールに必要なもの

ProxmoxでWindows11の仮想マシンを構築する場合に必要なものは以下の2つになります。

Windows11仮想マシン構築に必要なもの

  • Windows11インストールISO
  • VirtIOドライバーISO

どちらもネット上からダウンロードすることができます。

Windows11インストールISOのダウンロード

Windows11のインストールISOは以下のURLからダウンロードすることができます。

上記ページから「Windows11ディスクイメージ(ISO)」をダウンロードします。

Windows11 ダウンロードセンター | Microsoft

NucBoxG2(Plus)でProxmox

Windows11インストールISOのアップロード

ダウンロードしたWindows11インストールISOファイルは、Proxmox仮想サーバーへアップロードします。

Proxmox管理画面のメニュー「ストレージ(local) > ISOイメージ」画面から「アップロード」ボタンを押下します。

NucBoxG2(Plus)でProxmox

ファイル選択ダイアログが表示されるので、ダウンロードしたWindows11インストールISOを選択し、Proxmox仮想サーバーへアップロードします。

正常にアップロードされると「ISOイメージ」画面のリスト上に表示されます。

NucBoxG2(Plus)でProxmox

以上でWindwos11インストールISOファイルの事前準備は完了です。

VirtIOドライバーISOのダウンロード

もうひとつ、必要なファイルとして「VirtIOドライバーISOファイル」を準備します。

VirtIOドライバーとはProxmox上でWindows系OSを稼働させるために必要な各種ドライバーファイルです。

VirtIOドライバーを適用しなくても動作しますが、VirtIOドライバーを適用することでより高い性能で動作する環境にすることができます。

VirtIOドライバーのダウンロード

VirtIOドライバーは以下のURLよりダウンロードできます。

Virtio-win-pkg-scripts | github

上記ページから「Stable virtio-win ISO」をダウンロードします。

NucBoxG2(Plus)でProxmox

VirtIOドライバーのアップロード

ダウンロードしたVirtIOドライバーISOファイルは、Windows11インストールISOファイルと同様にProxmox仮想サーバーへアップロードしておきます。

NucBoxG2(Plus)でProxmox

ダウンロードしたVirtIOドライバーISOファイルが正常にPoroxmox仮想サーバーへアップロードされると、Proxmox管理画面の「ISOイメージ」は先にアップロードしたWindows11インストールISOファイルと合わせて以下のようになります。

NucBoxG2(Plus)でProxmox

以上でVirtIOドライバーおよびWindows11インストールファイルの準備は完了です。

仮想マシン(VM)の構築

Windows11仮想マシン構築に必要な2つのファイルが揃ったのでいよいよProxmoxにWindows11仮想マシンを構築していきます。

基本的にはWindows11の(物理PCへの)インストールと同じ手順ですが、VirtIOドライバのインストールがあるために若干の説明を加えていきます。

仮想マシンの作成

まずは仮想マシン(VM)を作成します。

物理で言えば、中身空っぽのPCを買ってくる、みたいな段階です。

Proxmox管理画面の上部「VMを作成」ボタンから仮想マシン(VM)を作成していきます。

NucBoxG2(Plus)でProxmox

以降、仮想マシン(VM)作成に必要な情報の入力がウィザード形式で流れていくので必要な情報を入力していきます。

「全般」タブ画面

ウィザードの最初(第一画面)は「全般」タブ画面となります。

この画面では仮想マシンの名前を定義します。

NucBoxG2(Plus)でProxmox

本記事では仮想マシン名として「v-windows11」と定義します。

「OS」タブ画面

「OS」タブ画面では仮想マシンにインストールするOSの概要を定義します。

大きく分けて「Linux系OS」と「Windows系OS」に分けることができますが、今回はWindows11をインストールしていきます。

NucBoxG2(Plus)でProxmox

まず仮想マシンにDVD/CDデバイスを搭載し、そこにWindows11インストールメディアを設定するために以下の設定を行います。

CD/DVDイメージファイルを使用 チェックする
ISOイメージ アップロードしているWindows11インストールISOを一覧選択する

また、インストールするOSはWindows11なので以下の設定を行います。

ゲストOS:種別 “Microsoft Windows”を選択

そして、Windows系OSを仮想マシンとして構築する場合に必要となる「VirtIOドライバー」の設定を行います。

VirtIOドライバ用の追加ドライブを追加 チェックする
ISOイメージ アップロードしているVirtIOドライバISOを一覧選択する
「システム」タブ画面

「システム」タブ画面では仮想マシンのシステム設定を行います。

物理パソコンで言えばBIOS/UEFI設定画面に該当するかな(?)と思います。

NucBoxG2(Plus)でProxmox

「システム」タブ画面では初期値に対して以下の設定を行います。

EFIストレージ “local-lvm”を一覧選択
QEMUエージェント チェックする
TPMストレージ “local-lvm”を一覧選択
「ディスク」タブ画面

「ディスク」タブ画面では仮想マシンに割り当てるハードディスク/SSD領域を定義します。

NucBoxG2(Plus)でProxmox

今回はとりあえず50GBをWindows11のCドライブとして割り当てます。

なお、ディスク領域は後から「ディスク容量の拡大」「ディスクの追加」が可能です。
※ディスク領域の縮小、はできません。

「CPU」タブ画面

「CPU」タブ画面では仮想マシン(VM)に割り当てるCPUコア数を定義することができます。

より多くのコアを割り当てるとより高性能な仮想マシンとなります。

NucBoxG2(Plus)でProxmox

NucBox G2(Plus)に搭載されている物理CPUは「4コア/4スレッド」なので割り当て上限の目安としては「4コア」となります。

今回はとりあえず「2コア」をWindows11仮想マシンへ割り当てておきます。

なお、CPUコア数もあとから変更することができます。

「メモリ」タブ画面

「メモリ」タブ画面では仮想マシンへ割り当てるメモリ容量を定義します。

より大容量のメモリを割り当てることで、より高性能な仮想マシンとなります。

NucBoxG2(Plus)でProxmox

NucBox G2(Plus)は標準で12GBの物理メモリを搭載しているのでその範囲内で仮想マシンへのメモリ割り当てを行います。

今回はとりあえず「4GB」のメモリ割り当てを行います。

メモリ容量はあとからでも変更することができます。

「ネットワーク」タブ画面

仮想マシンに割り当てるネットワークデバイス(LANカードに相当)を定義します。

本記事のここまでの手順では仮想マシンで使えるネットワークデバイスは「vmbr0」のみなので、そのデバイスを割り当てます。

NucBoxG2(Plus)でProxmox

作成された仮想マシン

NucBoxG2(Plus)でProxmox

仮想マシン(VM)へWindows11をインストール

仮想マシン(空っぽのPC)ができたので、ここからはその仮想マシン(VM)へWindows11をインストールしていきます。

Windows11のインストール手順は物理PCへのインストールとほぼ同じですが、仮想ドライバ「VirtIO」のインストールがちょっと注意する程度です。

本記事では詳細なWindows11インストール手順は割愛し、VirtIOドライバの取り扱いに絞って説明していきます。

Windows11インストーラの起動

仮想マシン(VM)を作成した時点で仮想マシンにはWindows11インストールディスクとVirtIOドライバーズディスクはCD/DVDに装着された状態になっています。

よって、仮想マシンを起動(電源オン)すれば自動的にWindows11インストールディスクからインストーラーが起動されます。

仮想マシン(VM)の起動はProxmox管理メニュー「仮想マシン(v-windows11) > コンソール」からコンソール画面(ディスプレイに相当)を開き画面中央の「Start Now」ボタンを押下します。

NucBoxG2(Plus)でProxmox

「Start Now」ボタンを押下すると仮想マシンが電源オンとなり、Windows11のインストーラーが起動されます。

VirtIOドライバのインストール

Windows11のインストーラーが進むとインストール先ディスクを選択する画面に到達します。

しかし、本記事手順では下図のようにインストールすべきディスク領域が表示されません。

NucBoxG2(Plus)でProxmox

これはProxmox仮想マシンでのディスクドライバーがVirtIOドライバーとなっているため、事前にVirtIOドライバーをインストールしないとディスク領域にアクセスできないからです。

このため、まずは「ドライバーの読み込み」からVirtIOドライバーのインストールを行います。

NucBoxG2(Plus)でProxmox

「ドライバーの読み込み」リンクをクリックするとドライバー読み込み確認のダイアログが表示されるので「参照」ボタンを押下します。

NucBoxG2(Plus)でProxmox

参照すべきドライブの一覧が表示されるのでVirtIOドライバーディスク(本記事ではドライブD)を選択します。

ディレクトリ VirtIOドライバー
Baloon w11 amd64 チップセットドライバ
NetKVM w11 amd64 NETデバイスドライバ
Vioscsi w11 amd64 SCSIディスクドライバ

NucBoxG2(Plus)でProxmox

Windows11の起動とVirtIOドライバ最終設定

VirtIOドライバーのインストール後は通常のWindows11インストーラーが進みます。

インストールが正常終了しWindows11が起動してきたら最終設定を行いましょう。

Windows11のインストール後に、最終的なVirtIOドライバーおよびQEMUゲストツールをインストールしておきます。

Explorer(エクスプローラー)でVirtIOドライバーディスク(本記事ではDドライブ)を開きます。

NucBoxG2(Plus)でProxmox

VirtIOドライバーディスクから、以下の2ファイルを実行(ダブルクリック)してインストールしておきます。

ダブルクリックしてインストール

  • virtiowin-gt-x64
    ⇒ VirtIOドライバー
  • virtio-win-guest-tools
    ⇒ QEMUゲストエージェント

以上の最終的なドライバーインストールを行うことで、Windows11の仮想マシン(VM)構築は完了です。

LXCコンテナ(CT)でDockerサーバーを構築

せっかくの仮想サーバーなので流行りのDocker環境を構築してみます。

Docker環境は仮想マシン(VM)としてLinuxサーバーを構築しDockerをインストールすれば良いのですが、本記事では(せっかくなので)LXCコンテナ(CT)環境でLinuxサーバー環境を構築し、そこへDockerをインストールしてみます。

仮想マシン(VM)ではなくLXCコンテナ(CT)を使うことで、Linux環境を簡単に素早く構築することができます。

LXCコンテナのインストール

Proxmoxサーバー環境へ「Debian-12-Standard」をインストールしていきます。

Proxmoxは標準でLXCコンテナ環境に対応しており、さまざまなLXCテンプレートからLXCコンテナを構築することができます。

コンテナテンプレートの更新

まず、Proxmoxが対応しているLXCコンテナ環境で利用可能なLXCテンプレートのリストを最新化しておきましょう。

メニュー「ノード(自分のサーバー)⇒シェル」からテンプレートのアップデートコマンドを発行しておきます。

NucBoxG2(Plus)でProxmox

以下のような実行結果となります。

root@pve05:~# pveam update
update successful
root@pve05:~#

以上でProxmoxのLXCコンテナテンプレートリストは最新化されます。

LXCコンテナテンプレートのダウンロード

メニュー「ストレージ(local)⇒CTテンプレート」から「テンプレート」ボタンを押下します。

NucBoxG2(Plus)でProxmox

Proxmoxで利用可能なLXCコンテナテンプレートの一覧が表示されます。

検索欄に「debian」を入力すると、一覧が絞り込まれて「Debian 12 Bookworm(standard)」が表示されます。

Proxmox LXCコンテナ

種別 パッケージ 説明
lxc Debian-12-standard Debian 12 Bookworm(standard)

上記「debian-12-standard」を選択して「ダウンロード」ボタンを押下します。

Proxmox LXCコンテナ

「TASK OK」のメッセージが出たらダウンロード処理が終了しています。

ダウンロードが終了したら画面右上の「×」をクリックしてダウンロード画面を閉じます。

Proxmox LXCコンテナ

テンプレートの一覧画面に今ダウンロードしたテンプレートが登録されています。

LXCコンテナのインストール

ダウンロードしたテンプレートを使って「debian-12-standard」をインストールしていきます。

ProxmoxでのLXCコンテナインストールはウィザード形式で行っていきます。

画面上部(右上)から「CTを作成」を押下します。

NucBoxG2(Plus)でProxmox

全般:コンテナウィザード①

コンテナ作成ウィザードの「全般」タブが表示されます。
NucBoxG2(Plus)でProxmox

以下のように入力してください。

ノード 初期値のまま
CT ID 初期値のままでよい
※またはお好きなID
ホスト名 構築するコンテナのホスト名を指定
※本記事では”v-docker”
非特権コンテナ チェック
ネスト チェック
リソースプール 未指定
パスワード コンテナへログインするときのパスワード
パスワードの確認 パスワードと同じものを入力
ssh Public Key 未指定

入力したら「次へ」。

テンプレート選択:コンテナウィザード②

「テンプレート」タブが表示されます。

Proxmox LXCコンテナ

先ほどダウンロードした「debian-12-standard」を選択してください。

ディスク:コンテナウィザード③

「ディスク」タブが表示されます。

proxmoxのLXCコンテナでtailscale環境構築

ディスクを作成するストレージを選択し、「次へ」。

CPU:コンテナウィザード④

「CPU」タブ画面が表示されます。

proxmoxのLXCコンテナでtailscale環境構築

CPUスペックを設定します。

後から変更できるので、ここでは「1 Core」として設定します。

メモリ:コンテナウィザード⑤

「メモリー」タブ画面が表示されます。

proxmoxのLXCコンテナでtailscale環境構築

メモリーも後から変更可能なので、ここでは「512 MB」と設定します。

※もっと小さく「128 MB」でもよかったです・・・

ネットワーク:コンテナウィザード⑥

「ネットワーク」タブ画面が表示されるので、LXCコンテナのネットワーク設定(IPアドレス)を行います。

NucBoxG2(Plus)でProxmox

我が家の自宅ネットワークは「192.168.11.0/24」としており、今回のdockerサーバー(debian-12-standard)のIPv4アドレスは「192.168.11.4/24」と設定しました。

また、IPv6アドレスは利用しません。

本記事では以下のように設定しました。

IPv4
アドレス
IPv4 「静的」をチェック
IPv4/CIDR LXCコンテナのIPv4アドレスを設定
※本記事では「192.168.11.4/24」
ゲートウェイ
(IPv4)
自宅ネットワークのゲートウェイを設定
※本記事では「192.168.11.1/24」
IPv6
アドレス
IPv6 「静的」をチェック
IPv6/CIDR IPv6アドレスは使用しないので空白のまま
ゲートウェイ
(IPv6)
IPv6アドレスは使用しないので空白のまま

なお、IPv4アドレス(IPv4/CIDR)をDHCPとして設定することも可能ですが、DHCPからIPv4アドレスを取得する設定の場合はLXCコンテナ起動時にかなり時間がかかります。

よって、「DHCP」を選択しない方が良いです。

DNS:コンテナウィザード⑦

「DNS」タブ画面が表示されます。

proxmoxのLXCコンテナでtailscale環境構築

初期値のままで「次へ」。

確認:コンテナウィザード⑧

「確認」タブ画面が表示されます。

Proxmox LXCコンテナ

設定した内容を確認し「完了」ボタンを押下。

Proxmox LXCコンテナ

しばらくコンテナ作成のタスクが実行されます。

「TASK OK」が表示されたらコンテナ作成完了です。

LXCコンテナの起動と初期設定

メニュー「データセンター⇒LXCコンテナ」に今作成したコンテナが一覧表示されています。

では、このコンテナを起動してみます。

サブメニュー「コンソール」を選んで画面上の「開始」ボタンを押下すると、コンソール画面上でコンテナが起動します。

NucBoxG2(Plus)でProxmox

rootユーザーでログインします。パスワードはコンテナ作成時に「全般」タブで設定したパスワードです。

NucBoxG2(Plus)でProxmox

モジュールの最新化

ログインしたら、最初にDebianのモジュールを最新化しておきましょう。

### Debianを最新化 ###
apt update && apt -y upgrade

以上でDebian(debian-12-standard)のモジュールが最新化されます。

タイムゾーン(Asia/Tokyo)の設定

インストール直後のLXCはタイムゾーンが世界標準時となっています。

これを「Asia/Tokyo」へと変更設定しておきます。

### TimeZoneを"Asia/Tokyo"へ設定 ###
timedatectl set-timezone Asia/Tokyo

以上でタイムゾーンが「Asia/Tokyo」になります。

引き続き、作成したLXCコンテナ(Debian)へDockerモジュールをインストールしていきます。

LXCコンテナへDockerをインストール

「LXCコンテナでDockerコンテナを動かす」と言うと「1つのDockerコンテナを1つのLXCコンテナで動かす」というイメージになりますが、そうではありません。

LXCコンテナを使ってLinuxサーバーを構築、そのLinuxサーバー(LXCコンテナ)の中にDockerをインストールし、あとはお好きなDockerコンテナを使っていく、という使い方になります。

つまりDockerを動かすサーバーを仮想マシン(VM)として使うかLXCコンテナで使うか、という違いになります。

Debian(LXCコンテナ)へのDockerのインストールは超簡単です。

以下のコマンドをコピペすることで、一発インストールです。

### curlをインストール ###
apt install -y curl

### dockerインストールスクリプトを実行 ###
curl fsSL https://get.docker.com | sh

以上でLXCコンテナを使ってのDockerサーバーが構築完了です。

Dockerが正しくインストールされたかどうかは以下のコマンドでバージョン確認してみると良いでしょう。

### dockerバージョンを確認 ###
root@v-docker:~# docker --version
Docker version 27.4.1, build b9d17ea
root@v-docker:~# 

DockerにPortainer-CE環境を構築する

LXCコンテナを使ってDockerサーバーの構築が完了しました。

あとはさまざまなDockerアプリケーションをインストールすることでいろんな便利機能をDockerサーバー上に構築していくことができます。

その前にDockerアプリの管理機能としてPortainer CE(Community Edition)をインストールしてみます。

Portainer CEはDockerサーバー上で稼働するDockerアプリの動作監視や起動・停止などの管理機能を提供してくれるDocker管理機能であり、それ自体がDockerアプリとして提供されています。

Simple Docker Management System | Portainer

Portainer-ceのDockerイメージをインストール

Portainer-ceはDockerイメージとして配布されているので、簡単にインストールすることができます。

Proxmox管理画面のメニュー「LXCコンテナ(docerサーバー) > コンソール」画面のコンソールを開きます。

NucBoxG2(Plus)でProxmox

コンソールから以下の「docker run」コマンドをコピペするだけで、portainer-ceのDockerイメージをインストールすることができます。

### Portainerをインストール ###
docker run -d \
--name portainer \
-p 9000:9000 \
-p 9443:9443 \
--restart unless-stopped \
-v /var/run/docker.sock:/var/run/docker.sock \
-v portainer_data:/data \
portainer/portainer-ce

インストール後は「http://:9000」または「https://:9443」でPortainer-ce管理画面へアクセスすることができます。

NucBoxG2(Plus)でProxmox

インストール後に初めてアクセスする場合には管理者「admin」に対するパスワード設定が必要ですが、初期値ではパスワードは「12桁以上の英数字」となっています。
※パスワードポリシーは変更可能です。

初期パスワードを設定し最初のログイン後、「Get Started」をクリックします。

NucBoxG2(Plus)でProxmox

メニュー(画面左側)の「Local」メニュー欄にDockerアプリケーションの管理機能があります。

「Containers(コンテナ)」を選択すると以下のようにportainerアプリケーション自身が稼働(running)しているのがわかります。

NucBoxG2(Plus)でProxmox

以上でPortainer CE(Community Edition)のインストールは完了です。

あとはお好きなDockerアプリケーションをインストールして便利サーバーを構築してください。

DockerでVPNサーバー環境、自宅クラウドを構築

Proxmoxの仮想サーバー環境を使って様々な便利環境を構築すると、自宅内からだけでなく外出先からも使いたくなります。

それを実現してくれるのがVPN(Virtual Private Network)環境です。

VPNを構築する手段はたくさんありますが、本記事では次世代VPNと言われるWireGuardを使ったVPN環境、およびそのWireGuardプロトコルを使った次世代VPNソリューションとして人気にTailscaleを環境構築してみます。

どちらの機能もDockerを使って簡単構築してみます。

WireGuardで自宅クラウド

Dockerを使って簡単にWireGuard VPNサーバー環境を構築してみます。

この環境を構築することで、外出先からも自宅内と全く同じようにネットワークを利用することができます。

Dockerアプリ「WG-Easy」で簡単WireGuard

WireGuardサーバー機能をDockerアプリとして提供されている「WG-Easy」をご紹介します。

Dockerサーバー環境があれば、簡単にDockerコマンドだけでWireGuardサーバー環境が構築できてしまいます。

さらにWireGuardの運用でちょっと面倒な公開鍵・秘密鍵などの管理も一覧形式で自動管理してくれる機能まである優れものです。

WG-Easy

上記のようなWG-Easy管理画面により、面倒なユーザー管理・鍵管理までを自動構築・一覧管理ができてしまう優れものです。

WG-Easyを使ったWireGuardサーバー環境構築については以下の記事に詳細手順をまとめているので参考にしてみてください。

OpenWrtでオールインワンルーター化

NucBox G2(Plus)には1GbEのLANポートが2つあります。

LANポートが2つ以上あれば、1つをLAN側ポートもうひとつをWAN側ポートとして設定することでミニPCをルーターとして使うことも可能になります。

本記事ではここまでNucBox G2(Plus)を使って仮想サーバーを構築してきましたが、さらに仮想マシン(VM)としてルーターOS「OpenWrt」を導入することでNucBox G2(Plus)へルーター機能を盛り込むこともできます。

仮想サーバーに加えてルーター機能までもNucBox G2(Plus)に構築することで、オールインワンの万能仮想サーバーとなります。

OpenWrtディスクイメージの取得

Proxmox仮想環境へ仮想マシンとしてOpenWrtをインストールする場合、「インストールする」というイメージではなく「提供されているOpenWrtディスクイメージをProxmox用に変換する」というやり方で構築します。

ProxmoxはLinuxのKVMという仮想環境なので、公開されているOpenWrtディスクイメージをKVMで使えるイメージに変換して、Proxmoxの仮想マシンに組み込む、という感じです。

まず、公開されているOpenWrtのディスクイメージファイルをダウンロードします。

デバイス用のOpenWrtファームウェアをダウンロード | OpenWrtプロジェクト

上記リンクにて、OpenWrtのディスクイメージが公開されています。

複数のダウンロードファイルがありますが、必要なのは「COMBINED(SQUASHFS)」です。

ProxmoxへOpenWrtをインストール

上記のダウンロードリンクを右クリックしてダウンロードファイルのリンクをコピーしておきます。

次にProxmoxサーバーの管理画面から「シェル」を開き、このリンクを「wget」コマンドを使ってダウンロードします。

ProxmoxへOpenWrtをインストール

Proxmoxサーバーのシェルから実行

root@pve:~# wget https://downloads.openwrt.org/releases/23.05.2/targets/x86/64/openwrt-23.05.2-x86-64-generic-squashfs-combined.img.gz
リンクが長いのでURLはダウンロードリンクをコピペすると良いです

なお、今回はダウンロードリンクを使ってProxmox上に直接ダウンロードしましたが、パソコンにダウンロードしてftpコマンドでProxmoxサーバーへアップロードしてもよいです。

ダウンロードしたイメージファイルは圧縮されているので、解凍しておきます。

ProxmoxへOpenWrtをインストール

Proxmoxサーバーのシェルから実行

root@pve:~# gunzip openwrt-23.05.2-x86-64-generic-squashfs-combined.img.gz
root@pve:~# ls -l
-rw-r--r-- 1 root root 126353408 Nov 15 10:10 openwrt-23.05.2-x86-64-generic-squashfs-combined.img
root@pve:~# 
リンクが長いのでURLはダウンロードリンクをコピペすると良いです

上記で「ファイル名.img.gz」が解凍されて「ファイル名.img」になっていることを確認してください。

以上でディスクイメージファイルの取得および解凍は完了です。

OpenWrt仮想マシンの定義作成

では、OpenWrtの仮想マシンを作成していきます。

Proxmoxのメニューボタン「VMを作成」より仮想マシンの定義を行います。

「全般」定義

ProxmoxへOpenWrtをインストール

仮想マシンの名前はご自由につけてください。

「OS」定義

ProxmoxへOpenWrtをインストール

「OS」はCD/DVDイメージなどからインストールするのではなく、ダウンロードしたイメージファイルを変換して作成します。

よってここでは「メディアを使用しない」を選択します。

「システム」定義

ProxmoxへOpenWrtをインストール

「システム」定義は初期値のままでよいです。

「ディスク」定義

ProxmoxへOpenWrtをインストール

「ディスク」はダウンロードしたイメージファイルを変換して作成するため、ここで作成するディスクは後で削除します。

よって「ディスク」定義は初期値のままでよいです。

「CPU」定義

ProxmoxへOpenWrtをインストール

「CPU」はお好きに設定してください。

本記事では「1コア」として設定します。

「メモリ」定義

ProxmoxへOpenWrtをインストール

「メモリ」はお好きに設定してください。

作成後の自宅ルーター利用状況を見て、もしスペックが足りないようなら後からでもメモリーを増やすとよいでしょう。

本記事では「256MB」として設定します。

「ネットワーク」定義

ProxmoxへOpenWrtをインストール

「ブリッジ」に「vmbr0」を選択します。

これは先に作成したProxmoxの仮想ブリッジの中で、「LANインターフェース」に相当する仮想ブリッジです。

もうひとつの「WANインターフェース」に相当する仮想ブリッジは後で追加します。

作成した仮想マシン

以上で作成した仮想マシンは以下のように構成されています。

ProxmoxへOpenWrtをインストール

以上の構成に対して、次の修正を行います。

  • 「ハードディスク」を削除
  • 「CD/DVDドライブ」を削除
  • 「ネットデバイス」を追加
「ハードディスク」を削除

ハードディスクはダウンロードしたイメージファイルから作成するため不要です。

メニューの「デタッチ」でハードディスクを構成リストから取り外したうえで「削除」します。

「CD/DVDドライブ」の削除

CD/DVDドライブは使用しないので削除します。

あっても構わないという人は残しておいてもよいです。

「ネットデバイス」を追加

構成に含まれている「vmbr0」はLANインターフェース相当の仮想ブリッジです。

「WAN/WAN6インターフェース」に相当する仮想ブリッジ「vmbr1」を「追加」します。

仮想マシンの最終構成

以上の結果、最終的な仮想マシン構成は下図のようになります。

ProxmoxへOpenWrtをインストール

OpenWrtイメージファイルのインポート(仮想ディスクの作成)

ではダウンロードしたOpenWrtのイメージファイルから仮想マシンのディスクを作成していきます。

イマージファイルの変換はProxmoxのコンソールから以下のコマンドで変換します。

qm importdisk <ダウンロードファイル名> <ディスクを作成する場所>

「VM ID」は仮想マシンのIDであり、「101」などです。

「ディスクを作成する場所」はイメージファイルを仮想ディスクへ変換したものをどこに作成するかの指定であり、標準だと「local-lvm」などになります。

よって「VM ID = 101」「ディスクをlocal-lvmに作成」「イメージファイル名はopenwrt.img」とすると、以下のコマンドとなります。

qm importdisk 101 openwrt.img local-lvm

ではイメージ変換してみましょう。

Proxmoxサーバーのコンソールで実行

root@pve02:~# qm importdisk 105 openwrt-23.05.2-x86-64-generic-squashfs-combined.img local-lvm
importing disk 'openwrt-23.05.2-x86-64-generic-squashfs-combined.img' to VM 105 ...
  Rounding up size to full physical extent 124.00 MiB
  Logical volume "vm-105-disk-0" created.
transferred 0.0 B of 120.5 MiB (0.00%)
transferred 2.0 MiB of 120.5 MiB (1.66%)
transferred 4.0 MiB of 120.5 MiB (3.32%)
transferred 6.0 MiB of 120.5 MiB (4.98%)
transferred 8.0 MiB of 120.5 MiB (6.64%)
transferred 10.0 MiB of 120.5 MiB (8.30%)
transferred 12.0 MiB of 120.5 MiB (9.96%)
transferred 14.0 MiB of 120.5 MiB (11.62%)
transferred 16.0 MiB of 120.5 MiB (13.28%)
transferred 18.0 MiB of 120.5 MiB (14.94%)
transferred 20.0 MiB of 120.5 MiB (16.60%)
transferred 22.0 MiB of 120.5 MiB (18.26%)
transferred 24.0 MiB of 120.5 MiB (19.92%)
transferred 26.0 MiB of 120.5 MiB (21.58%)
transferred 28.0 MiB of 120.5 MiB (23.24%)
transferred 30.0 MiB of 120.5 MiB (24.90%)
transferred 32.0 MiB of 120.5 MiB (26.56%)
transferred 34.0 MiB of 120.5 MiB (28.22%)
transferred 36.0 MiB of 120.5 MiB (29.88%)
transferred 38.0 MiB of 120.5 MiB (31.54%)
transferred 40.0 MiB of 120.5 MiB (33.20%)
transferred 42.0 MiB of 120.5 MiB (34.85%)
transferred 44.0 MiB of 120.5 MiB (36.51%)
transferred 46.0 MiB of 120.5 MiB (38.17%)
transferred 48.0 MiB of 120.5 MiB (39.83%)
transferred 50.0 MiB of 120.5 MiB (41.49%)
transferred 52.0 MiB of 120.5 MiB (43.15%)
transferred 54.0 MiB of 120.5 MiB (44.81%)
transferred 56.0 MiB of 120.5 MiB (46.47%)
transferred 58.0 MiB of 120.5 MiB (48.13%)
transferred 60.0 MiB of 120.5 MiB (49.79%)
transferred 62.0 MiB of 120.5 MiB (51.45%)
transferred 64.0 MiB of 120.5 MiB (53.11%)
transferred 66.0 MiB of 120.5 MiB (54.77%)
transferred 68.0 MiB of 120.5 MiB (56.43%)
transferred 70.0 MiB of 120.5 MiB (58.09%)
transferred 72.0 MiB of 120.5 MiB (59.75%)
transferred 74.0 MiB of 120.5 MiB (61.41%)
transferred 76.0 MiB of 120.5 MiB (63.07%)
transferred 78.0 MiB of 120.5 MiB (64.73%)
transferred 80.0 MiB of 120.5 MiB (66.39%)
transferred 82.0 MiB of 120.5 MiB (68.05%)
transferred 84.0 MiB of 120.5 MiB (69.71%)
transferred 86.0 MiB of 120.5 MiB (71.37%)
transferred 88.0 MiB of 120.5 MiB (73.03%)
transferred 90.0 MiB of 120.5 MiB (74.69%)
transferred 92.0 MiB of 120.5 MiB (76.35%)
transferred 94.0 MiB of 120.5 MiB (78.01%)
transferred 96.0 MiB of 120.5 MiB (79.67%)
transferred 98.0 MiB of 120.5 MiB (81.33%)
transferred 100.0 MiB of 120.5 MiB (82.99%)
transferred 102.0 MiB of 120.5 MiB (84.65%)
transferred 104.0 MiB of 120.5 MiB (86.31%)
transferred 106.0 MiB of 120.5 MiB (87.97%)
transferred 108.0 MiB of 120.5 MiB (89.63%)
transferred 110.0 MiB of 120.5 MiB (91.29%)
transferred 112.0 MiB of 120.5 MiB (92.95%)
transferred 114.0 MiB of 120.5 MiB (94.61%)
transferred 116.0 MiB of 120.5 MiB (96.27%)
transferred 118.0 MiB of 120.5 MiB (97.93%)
transferred 120.0 MiB of 120.5 MiB (99.59%)
transferred 120.5 MiB of 120.5 MiB (100.00%)
transferred 120.5 MiB of 120.5 MiB (100.00%)
Successfully imported disk as 'unused0:local-lvm:vm-105-disk-0'
root@pve02:~# 

以上でOpenWrtイメージファイルがProxmoxの仮想マシンで利用可能な仮想ディスクに変換されました。

ではOpenWrt仮想マシンのハードウェア構成を確認してみます。

ProxmoxへOpenWrtをインストール

上記のようにハードウェア構成に「未使用のディスク」としてイメージファイルが取り込まれています。

この「未使用のディスク」を「編集」で開き、そのまま閉じることで仮想マシンに取り込みます。

ProxmoxへOpenWrtをインストール

「未使用のディスク」を「編集」で開き、そのまま「追加」ボタン押下します。

ProxmoxへOpenWrtをインストール

以上のようにOpenWrtイメージファイルから変換作成した仮想ディスクがOpenWrt仮想マシンに取り込まれました。

OpenWrt仮想マシンの最終設定

仮想マシンはできあがりました。

これに加えて仮想マシンの動作オプションを少し変更しておきます。

  • 仮想マシンのブートデバイス変更
  • 仮想マシンの自動起動設定

OpenWrt仮想マシンのブートデバイス設定

仮想マシンメニュー「オプション」を見ると以下のようになっています。

ProxmoxへOpenWrtをインストール

現在、「ブート順」は「net0」のみとなっており、現在の設定ではネットワークブートのみとなっています。

これは先の手順にていったん作成した仮想ディスクを「デタッチ」「削除」したことでハードディスクが起動デバイスから削除されてしまったためです。

現在、OpenWrtイメージファイルを使って新しい仮想ディスクを作成し仮想マシン構成に組み込んだので、このハードディスクを起動デバイスとして定義します。

ProxmoxへOpenWrtをインストール

「オプション」メニューの「ブート順」から、取り込んだ仮想ディスク「scsi0」の「有効」をチェックし、仮想ディスクを起動デバイスとします。

さらに左端の三本線をマウスでつまんで一番上へドラッグし、起動デバイス順位を最上位とします。

ProxmoxへOpenWrtをインストール

上図のように、「scsi0」デバイス(ハードディスク)を起動デバイスとして有効化(チェック)および起動順位一番とします。

OpenWrt仮想マシンの自動起動設定

また、「オプション」メニュー「ブート時に起動」が「いいえ」となっています。

ProxmoxへOpenWrtをインストール

OpenWrt仮想マシンはProxmoxが再起動する場合には自動起動にしておいたほうがよいでしょう。

「ブート時に起動」を「編集」で「ブート時に起動 = はい」に設定しておきます。

OpenWrt仮想マシンのLAN環境構築

OpenWrtの仮想マシンが出来上がりました。

では、出来上がったOpenWrt仮想マシンを起動し、ネットワーク設定を行います。

ここで行うネットワーク設定とは「OpenWrtのLANインターフェースアドレスを自宅ネットワークに合わせる」という設定です。

本記事では「自宅ネットワーク = 192.168.11.0/24」であり、ルーター(OpenWrt仮想マシン)のIPアドレスは「192.168.11.1」です。

OpenWrtルーターはインストール直後はLANインターフェースのIPアドレスは「192.168.1.1」となります。

まずはOpenWrt仮想マシンのコンソールから現在のIPアドレスを確認します。


##
## LANインターフェース確認
##
root@OpenWrt:/# uci show network.lan
network.lan=interface
network.lan.device='br-lan'
network.lan.proto='static'
network.lan.ipaddr='192.168.1.1'
network.lan.netmask='255.255.255.0'
network.lan.ip6assign='60'
root@OpenWrt:/# 

上記のようにLANインターフェースは「192.168.1.1/24」と設定されていることがわかります。

この「192.168.1.1」を本記事での自宅ネットワークである「192.168.11.1」に変更します。


##
## IPv4アドレスを変更(192.168.1.1→192.168.11.1)
##
root@OpenWrt:/# uci set network.lan.ipaddr='192.168.11.1'
root@OpenWrt:/# 
##
## IPv4アドレスを確認(192.168.1.1→192.168.11.1)
##
root@OpenWrt:/# uci show network.lan
network.lan=interface
network.lan.device='br-lan'
network.lan.proto='static'
network.lan.ipaddr='192.168.11.1'
network.lan.netmask='255.255.255.0'
network.lan.ip6assign='60'
root@OpenWrt:/# 
##
## 設定を反映
##
root@OpenWrt:/# uci commit network
root@OpenWrt:/# 

以上のコマンド操作でOpenWrt仮想マシンのLAN側IPアドレスは「192.168.11.1」に変更されました。

まだWAN側の設定が残っていますが、ここまでのLAN側の設定により現在使っているWi-Fiルーターと置き換えることができるはずです。
※WAN設定がまだなのでインターネットにはつながりませんが・・・

なお、OpenWrt仮想マシンのコンソールは英語キーボード環境となっています。

このため、日本語キーボードを使っての入力は思った通りの文字が入力できない場合があります。

この場合、以下のように代替キーを入力します。

入力文字 日本語キーボード 代替キー
※英語キーボード
=(イコール) Shift+「=/-/ほ」 ~/へ
‘(アポストロフィ) Shift+「’/7」 */:/け

OpenWrt仮想マシンの再起動(LAN環境の反映)

ではここまで構築したGMKTec NucBox G2(Plus)を現在使っているWi-Fiルーターと置き換えてみます。

「置き換える」とは現在のWi-FiルーターにつながっているLANケーブルをNucBox G2(Plus)のポートに差し替える、ということです。

現在、NucBox G2(Plus)には作業用パソコンがLANケーブルでNucBox G2(Plus)の1番目のポート(Proxmox管理用ポート)につながっています。

この状態から、以下のようにケーブルの結線を変更します。

1 LAN1 作業用PCを刺す
※またはスイッチングハブを接続する
2 LAN2 Wi-FiルーターのWANポートケーブルを刺す

つまり、今まで使っていた自宅ルーターから今回構築した「NucBox G2(Plus)」ルーターに移行する、ということです。

なお、今回構築したNucBox G2(Plus)の環境ではLANポートは1ポートしかありません。

LANポートが1ポートで足りない場合にはNucBox G2(Plus)のLANポートにスイッチングハブを接続してください。

以上の結線が完了したら、作業用パソコンからOpenWrt仮想マシンおよびProxmoxサーバーを再起動します。

構築したネットワーク環境(LAN)の確認

再起動後、LANポートに接続したパソコンからProxmox管理画面およびOpenWrt管理画面(LuCI)がブラウザで開ければLAN環境は完成です。

運用LANポートからのネットワーク確認

RJ03のLANポートに接続したパソコンからProxmox管理画面およびOpenWrt管理画面(LuCI)が見れることを確認してください。

Proxmoxサーバーの運用環境(LANポート環境)におけるIPアドレスは本記事では「192.168.11.10」となっています。

また、現時点でOpenWrt管理画面(LuCI)はIPアドレス「192.168.11.1」となっています。

ProxmoxへOpenWrtをインストール

自宅ルーターのIPアドレスによりOpenWrtログイン画面が表示されれば成功です。

ブラウザキャッシュの注意点

OpenWrtのIPアドレス(本記事では192.168.11.1)をブラウザに入力しても「接続できません」と表示される場合、ブラウザキャッシュに今まで使っていた自宅ルーターのキャッシュが残っているからかもしれません。

この場合はまずブラウザのキャッシュを削除してみます。

また、OpenWrt管理画面(LuCI)のIPアドレスだけでなく完全なURL「http://192.168.11.1/cgi-bin/luci/」と入力してみてください。

OpenWrt仮想マシンのWAN環境構築

運用環境(LANポート環境)からOpenWrt管理画面(LuCI)を開くことができたら、最後にOpenWrtのWAN環境を構築します。

OpenWrtルーターのWAN/WAN6環境は初期値ではDHCPクライアント/DHCPv6クライアントと設定されています。

このため、OpenWrtルーターの上位がホームルーターなどのDHCPデバイスである場合にはそのままでインターネット接続ができるはずです。

インターネット接続が「PPPoE接続」や「IPv4 over IPv6接続」の場合にはWAN/WAN6インターフェースの設定変更を行います。

ProxmoxへOpenWrtをインストール

PPPoE接続の設定

PPPoEによるプロバイダー接続の場合、以下の記事を参考にして「WANインターフェース」にPPPoE設定を行います。

IPv6 DS-Lite接続の設定

上位がIPv6 DS-Lite接続事業者の場合、OpenWrtルーターでDS-Liteの設定を行います。

以下の記事を参考にしてDS-Lite接続設定を行います。

OpenWrt仮想マシンの全体環境設定

OpenWrt仮想マシンは現時点で「パスワードなし」「管理画面・タイムゾーンが日本語対応していない」などの状態です。

OpenWrtの基本設定は以下の記事を参考にしてください(本記事では説明は省略します)。

また、仮想マシン独自の設定としてソフトウェア「qemu-ga」モジュールをインストールしておく、という点があります。

このモジュールは仮想マシン(OpenWrt)をProxmoxサーバーから電源管理するためのモジュールであり、これをインストールしておかないとProxmoxのシャットダウン時・再起動時に仮想マシンがシャットダウンできずにいつまでもProxmoxは起動状態のままとなってしまいます。

OpenWrtルーター管理画面(LuCI)のメニュー「ソフトウェア」から「qemu-ga」のインストールをお忘れなく!

まとめ、ミニPC「NucBox G2」で仮想サーバー構築

本記事では人気のミニPC「GMKTec NucBox G2(Plus)」を使って仮想サーバーを構築、さらに仮想マシンとしてWindows11とDockerサーバーの構築までを説明してきました。

さらにNucBox G2(Plus)の2つのLANポートを活用してOpenWrtによるNucBox G2(Plus)のルーター化まで説明しています。

2万円~3万円程度のミニPCで仮想サーバーで遊べる、さらには超高性能な自宅ルーターとしても活用することが可能です。

いろいろ遊べるGMKTec NucBox G2(Plus)

GMKTec NucBox G2(Plus)の特徴は省電力・高性能なN100/N150のCPUを搭載し、さらにLANポートが2個あることです。

LANポートが複数あることで仮想サーバーの運用LANと管理LANを分けるなどの幅が広がります。

また、本記事記載のようにLANポート/WANポートとして使うことで超高性能なルーターとしても使うことができます。

本体価格は2万円台で販売されていることから、ちょっと仮想環境で遊んでみたい!という方にピッタリのミニPCだと言えます。

最新CPU「INTEL N150」搭載のNucBox G2 Plus

INTELがN100のクロックアップ版として発表した新しい省電力CPUがN150です。

大体、N100に比べて処理能力が10%程度向上しています。
※その反面、消費電力性能はちょっと劣ります。

現在は新型CPUであるN150搭載モデルへモデルチェンジしており、「GMKTec NucBox G2 Plus」として販売されています。

【ミニpc Intel N150初登場】 GMKtecミニpc 最新第12世代インテルTwin Lake-N150 mini pc Windows 11 Pro DDR5 12GB+512G SSD 4コア/4スレッド 7nm 最大周波数3.6GHz WIFI6/BT5.2 TDP 15W 小型 M.2 2242 SATA(PCIe3.0) パソコン RJ45有線LANポート付き 静音性
GMKtec
【第12世代Intel Core-N150初登場・Windows11 ProミニPC】GMKtec G2 PlusミニPCは最新の第12世代Twin Lake-N150(最大周波数3.6GHz、4コア/4スレッド、6MBキャッシュ)を搭載。従来モデルより性能が18%向上し、オンライン学習、ビジネス作業、Web閲覧、動画鑑賞など、さまざまな作業がスムーズに楽しめます。標準搭載のWindows 11Proにより、セキュリティ面でも安心してお使いいただけます。

今後購入される方は、(おそらく)こちらのモデルでの購入となるでしょう。

Windows11ライセンスの移行

NucBox G2(Plus)には標準でOEM版のWindows11 Proライセンスが付属しています。

初期状態(購入直後)で起動すると自動的にOEM版としてライセンス認証が行われます。

NucBox G2付属のWindowsライセンスについては以下の記事も参考にしてみてください。

初期状態ではWindowsは「デジタルライセンス認証」の状態となっていますが、この時点でマイクロソフトアカウントによる「マイクロソフトアカウントによるデジタルライセンス認証」に切り替えておくと良いでしょう。

「マイクロソフトアカウントによるデジタル認証」状態にしておくことで(もしかすると)仮想化したあとの仮想マシンとしてそのライセンスが使えるかもしれませんよ(自己責任)。

タイトルとURLをコピーしました