Otama's Playground > サーバー > LXDの後継「Incus」を試す:Ubuntu 24.04での構築メモ(GUIあり)

LXDの後継「Incus」を試す:Ubuntu 24.04での構築メモ(GUIあり)

コンテナ環境を手軽に扱いたいな〜と思っていたら、「LXDのフォークであるincusがいい感じらしい」という話をキャッチ。Canonicalから独立して開発が進められているようで、最近じわじわ注目されています。

というわけで今回は、Ubuntu 24.04 LTSにincusをインストールして、初期設定を終えるまでの流れを自分用のメモも兼ねてまとめておきます。GUIの導入までやってみたので、これから触ってみたい人の参考になれば嬉しいです。

incusのインストール

この項にはincusの初期化が完了するまでの作業を載せておきます。

  1. ホストOSのインストール
  2. incusをインストール
  3. incusを初期化

ホストOSのインストール

incusはLXDと同じくUbuntuでの動作が安定していそうなので、今回は素直にUbuntu 24.04 LTSを選択しました。

もしサーバーとして運用したい場合は、インストール時にstatic IPを設定しておくと、あとからSSHやGUIでのアクセスがめちゃくちゃラクになります。

ファイルシステム構成は以下のようにしています:

  • /boot/efi: fat32(ESP)
  • /boot: ext4(btrfsだとちょっと不安なので)
  • /: btrfs(incusで活かしたいので)

btrfsを使用したい方は、この時点でフォーマットしておくのがベターです。

incusをインストール

以下のリポジトリからインストール

参考: https://linuxcontainers.org/incus/docs/main/installing/#linux

Bash
# リポジトリキーの追加
sudo curl -fsSL https://pkgs.zabbly.com/key.asc -o /etc/apt/keyrings/zabbly.asc

# リポジトリ追加(6.0 LTS)
sudo sh -c 'cat <<EOF > /etc/apt/sources.list.d/zabbly-incus-lts-6.0.sources
Enabled: yes
Types: deb
URIs: https://pkgs.zabbly.com/incus/lts-6.0
Suites: $(. /etc/os-release && echo ${VERSION_CODENAME})
Components: main
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/zabbly.asc

EOF'

# incusとGUIをインストールする
sudo apt-get update
sudo apt-get install incus

incusを初期化

インストールが完了したら

Bash
sudo incus admin init

以下の内容が聞かれるので、状況に合わせて設定する

Bash
Would you like to use clustering? (yes/no) [default=no]: yes
What IP address or DNS name should be used to reach this server? [default=192.168.100.101]:
Are you joining an existing cluster? (yes/no) [default=no]: no
What member name should be used to identify this server in the cluster? [default=incus1]:
Do you want to configure a new local storage pool? (yes/no) [default=yes]:
Name of the storage backend to use (dir, lvm, btrfs) [default=btrfs]:
Would you like to create a new btrfs subvolume under /var/lib/incus? (yes/no) [default=yes]:

Do you want to configure a new remote storage pool? (yes/no) [default=no]: no
Would you like to use an existing bridge or host interface? (yes/no) [default=no]:
Would you like stale cached images to be updated automatically? (yes/no) [default=yes]:
Would you like a YAML "init" preseed to be printed? (yes/no) [default=no]:

GUIのインストール

zabblyバージョンのincusではUI(incus-ui-canonical)も提供されています。見た目はLXD用のUIとほぼ同じで、コマンドをincus用に入れ替えたものとのこと。

この項では、GUIのインストールと初期化までを説明します。

incus-ui-canonicalのインストール

zabblyリポジトリの追加はincusインストール時に済んでいるとします。

Bash
sudo apt-get install incus-ui-canonical

incus-ui-canonicalにアクセス

以下のコマンドでGUIのIPを確認します。

Bash
sudo incus config get core.https_address

設定で確認したIPにブラウザからアクセス。以下のような画面が出れば成功

incus-ui-canonicalの接続設定

ここら辺は画面にインストラクションが出てるので、それに沿えば良いはず。

※ crtファイルのやり取りはscpコマンドで行いました。

Bash
scp /mnt/c/.../incus-ui.crt username@[ip_address]:/home/username

ログインを確認する

証明書のインストールまで完了したらブラウザを再起動します。再度GUIにアクセスすると、ログイン後の画面が表示されるはずです。

最後に

ひとまずこれで、Ubuntu 24.04 LTS上に incus を導入し、GUIで管理できる環境の構築まで完了しました。初期設定を一通り済ませた今なら、コンテナの作成やネットワーク設定、プロファイルのカスタマイズなど、実際の運用フェーズに進めるかと思います。

実際環境を作成してみたりクラスタ構成での運用も試してみたりについては、次回以降のテーマにします。気になった方は是非また来てください。

返信を残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です