Ubuntu22.04LTSをESXiにセットアップする

この記事で実現すること
この記事では24時間稼働させるサーバーとして、intel/AMDのESXi上にUbuntuをセットアップするケースを想定しています。従来のSSHで接続するコマンドラインベースだけではなく、WindowsやmaOSからGUIで接続するUbuntu環境になります。長期サポートの最新バージョンであるUbuntu22.04LTSを仮想環境であるESXi7.0上に導入します。リモートデスクトップに相当するクライアントソフトウェアはESXiに付属するVMware Remote Console(VMRC)を使います。Ubuntu22.04LTSのEOLは2027年4月であり、十分に長い期間のサポートがあります。
ESXiにおけるUbuntuのセットアップのポイント
サーバーとして動作させるUbuntuをESXiおよびVMRCで仮想マシンを操作する事のメリットはトラブルに強いという事でしょうか。直接ハードウェアにインストールする(いわゆるベアメタル)方式ですと、IPアドレス周りの設定変更で失敗するとSSHで繋がらなくなり、ディスプレイに本体を繋いでリカバリするなど面倒です。VMRCはESXi本体に接続し操作するため、仮想マシン上のネットワークがダウンしていても操作可能です。特に複数VLANに跨いだ環境を構築したり、ファイアウォール(ufw)を設定する場合はトラブルになりやすいため、復旧しやすい構成を目指します。
Requirements:
Ubuntu Desktop Edition
2 GHz dual core processor
4 GiB RAM (system memory)
25 GB (8.6 GB for minimal) of hard-drive space (or USB stick, memory card or external drive but see LiveCD for an alternative approach)
VGA capable of 1024x768 screen resolution
Either a CD/DVD drive or a USB port for the installer media
Internet access is helpful
Ubuntu documentation
https://help.ubuntu.com/community/Installation/SystemRequirements
実際には、動かすアプリケーションを想定し、CPU、メモリ、ストレージを増やしておくことになるでしょう。ここでは、一例として、2vCPU、4GBメモリ、64GBストレージで進めます。
また、Ubuntuのパッチ管理のために、Ubuntu Oneアカウントの申請および、ライセンス(個人利用は無償)の取得が必要となります(後述します)。
環境面の前提としては、仮想マシンからDHCPでIPアドレスおよびDNSが取得でき、インターネットに接続可能な環境とします。
Ubuntu22.04LTSのダウンロード
最初にUbuntu22.04LTSのダウンロードを行います。日本語Remix版を利用します。
Ubuntu 22.04 LTS 日本語Remix
https://www.ubuntulinux.jp/News/ubuntu2204-ja-remix
ファイル名は「ubuntu-ja-22.04-desktop-amd64.iso」です。
ESXiで仮想マシンを作成する
ESXiへのisoファイルのアップロード
ESXiのWebUIにログインします。
ESXiの左ペインメニューのストレージからデータストアブラウザを開き、そこにダウンロードしたUbuntuのisoファイル(ubuntu-ja-22.04-desktop-amd64.iso)をアップロードします。
ネットワークポートグループの作成(任意)
Ubuntuのネットワークで使うESXiのポートグループを用意します。新しく作成する場合は、左ペインメニューのネットワークからポートグループの追加を選択し、該当するvSwitch上に新しいポートグループを作成します。
仮想マシンの作成
左ペインメニューの仮想マシンから、仮想マシンの作成/登録をクリックし、新規仮想マシンの作成を選択します。ここでは仮想マシンの名前と仮想マシンのバージョンによる互換性とゲストOSの種類を指定します。互換性は特に理由がなければ一番新しいものを選んでください。ゲストOSファミリは”Linux”を、ゲストOSのバージョンは”Ubuntu Linxu(64ビット)”を選択します。

続いて仮想マシンを作成するストレージを選択します。



完了させたら、左ペインメニューの仮想マシンから、対象の仮想マシンを起動します。もし、クライアント端末(Windows,macOS)にVMRCをダウンロードしていなければダウンロードし、クライアント上でセットアップしておきます。


Ubuntuのセットアップ
最初は、キーボードレイアウトを選択します。下記の例ではJapanese(Macintosh)が選択されていますが、日本語キーボードのmacOSや一般的なWindowsの日本語キーボードは一番上の”Japanese”が一般的です。キーボード入力をここで試してくださいで実際のキー入力が確認できるのでここで試してから選択しましょう。インストール後にいつでも変更できます。

ここでは最小インストールを選択します。なお、ESXiの場合、サードパーティのドライバはここでは選択する必要はありません。最初の仮想マシン作成時に、VMware Toolsをインストールするように指示しましたから、”open-vm-tools”が自動的にインストールされます。

ここではディスクを削除してUbuntuをインストールを選択し”インストール”ボタンをクリックします。仮想マシン作成時に設定した64GBのディスクを初期化します。

住んでいる場所を指定します。

ホスト名、ユーザー名を設定します。ここで設定するホスト名・ユーザー名を使ってSSHで接続します。


インストールは完了です。再起動後、下記の画面が表示されるので、一旦Enterを押下します。

最初の起動画面です。ウェルカム画面というのでしょうか。初期案内のウィンドウが表示されます。

ここでは、Ubuntuシングルサインオンを行います。一旦、Ubuntuはこのままにして、クライアントのブラウザからUbuntuのOneアカウントサイトにアクセスします。
One account for everything on Ubuntu
https://login.ubuntu.com
ここでは、以下のようにアカウントを作成します。メールアドレス、フルネーム、ユーザー名、パスワードを入力します。このユーザー名はUbuntuへのログインユーザーと同じである必要はありません。

“Create account”ボタンをクリックし、アカウントを作成すると、登録したメールにコンファーメーションが行きますのでそこで確認のリンクをクリックしUbuntu Oneアカウントの登録は完了します。

続いて、再びUbuntuの画面に戻り、今作成したUbuntu Oneアカウントをここで入力します。

アカウントの照合がうまくいくと、キーリングの登録になります。これは第2パスワードというべき位置付けでもあり、Ubuntuにログインしていても重要な操作の前にはこのキーリングを求められます。Ubuntuをサーバーとして使うのであればGUIでログインする場合は設定変更が主な作業でしょうから、それなりの頻度で求められることになるためパスワード管理ソフトありきの長い覚えられないパスワードにすると実際の運用で大変になってしまうので注意してください。

さて、続いてUbuntuにパッチを適用する際のライセンスが必要です。Ubuntu22からはLivePatchに制限が付きます。個人アカウントは3台のUbuntuまでLivePatchが適用できます。このLivePatchが有効になっていると、可能な限りリブートなく最新パッチが自動的に更新される素晴らしい仕組みとなっています。
UbuntuのFirefoxを起動し、Ubuntu Advantageにアクセスします。
Ubuntu Advantage
https://ubuntu.com/advantage
Ubuntu Oneアカウントでログインします。


これで、パーソナルトークンが作成されました。Tokenに記載のある文字列をマウスで選択し、右クリックからコピーを選びます。
ウェルカム画面でUbuntu Oneのシングルサインオン完了後に次の画面に進むと、LivePatchのセットアップに進みます。別の方法として、”ソフトウェアの更新”アプリケーションから設定をクリックし、LivePatchのタブを選択することでも可能です。



Ubuntu Advantageのトークンを貼り付けします。Ubuntu Advantageの更新は少しタイムラグがあるようで、Tokenの作成直後は登録がうまく行かない場合があるので、その場合は数時間待ってください。

Open SSH Serverのインストール
UbuntuにSSHするために必ず必要なモジュールです。GUIでコマンドを扱うには端末というアプリケーションを起動します。 そこからopensshをインストールします。
1 | $ sudo apt update |
Ubuntuで端末アプリケーションを起動する場合、キーボードショートカットによる起動が便利です。セットアップ時のキーボードの選択によって内容は変わりますが、Widnowsは”Ctrl”+”Alt”+”T”で起動します。macOSでは”option”+”control”+”T”で起動します。
任意設定
VMRCとクライアントとのCopy -Paseteを連携する
WindowsやmacOSでブラウザで検索した結果をUbuntu上で貼り付けたい場合があります。この場合は仮想マシンをシャットダウンし、仮想マシンのオプションから以下のパラメータを設定します。
1 | isolation.tools.copy.disable FALSE |

Copy & Pasetを有効にする
https://kb.vmware.com/s/article/57122
フォルダのパスを英語に変更する
1 | $ LANG=C xdg-user-dirs-gtk-update |

VMRCの便利な起動方法
ESXiで該当する仮想マシンを開き、URLを確認すると、URLの末尾に仮想マシンNoとも言える2桁の番号が振られています。

この数字を使って以下のURLをブラウザのお気に入りに登録しておくことによって、ESXiの画面にログインしてから仮想マシンにアクセスすることなく、直接VMRCを起動し仮想マシンにアクセスできます。
vmrc://[ユーザー名]@[ESXiのホスト名]/?moid=[仮想マシンNo]
例:vmrc://root@192.168.1.1/?moid=20
セットアップ完了
ESXiにおけるUbuntu22.04LTSのセットアップは完了です。最後に、仮想マシンのバックアップを取得されることをお勧めします。Linuxには個人ユーザー向けの有力なウィルス対策ソフトが存在しないため、色々なサイトをブラウジングするには多少抵抗がありますが、限られたパッケージシステムのみをインストールし、自宅内のサーバーとして利用するにはESXiとの組み合わせは最適です。バックアップやスナップショットを活用し、トラブル時には迅速にロールバックできる環境はとても便利です。