1
4

Proxmox VE 8.2 の自動インストールを試してみた

Last updated at Posted at 2024-04-26

はじめに

この記事は、Proxmox VE 8.2での新機能: Automated Installation を行った際の記録です。
検証したところ、5分程度でインストールが完了しました。

共著

これまで

Proxmoxのインストールに使用する、ベアメタルISOインストーラは、自動化には対応していませんでした。自動化したい場合、Debianをセットアップし、Proxmoxのコンポーネントをインストールするなど、手間がかかる方法しかありませんでした。

新機能

今回のリリースに含まれる Automated Installation は、ISOインストーラに私たちがインストールの際に入力する設定をanswer.tomlとして内包することで、GUIやCLIでの設定画面をスキップし、自動的にインストールされるというもののようです。

Answerを渡す方法は主に3つあります。

  1. ISOインストーラにanswer.tomlを直接内包する
  2. 特定の名前proxmox-ais or PROXMOX-AISが付けられたパーティションから読み込む
  3. http経由で取得する

いずれの場合でも後述のproxmox-auto-install-assistantツールを用いてインストーラに手を加える必要があり、それぞれで引数に渡す値が異なります。

使い方

proxmox-auto-install-assistantは、Proxmoxの無償版リポジトリにあります。
既にProxmoxがインストールされているマシンがある場合はそちらを使って作成することができますが、今回はPCのみで作成したいので、Dockerにて作成を行います。Windowsの方はwslを使用した方が手軽で良いかもしれません。

proxmox-ve_8.2-1.isoは公式サイトから最新のISOインストーラーをダウンロードして配置してください。

今回は一番手軽なISOインストーラにanswer.tomlを内包する方法を試してみます。

環境

PC
$ tree
.
├── Dockerfile
├── answer.toml
└── proxmox-ve_8.2-1.iso
answer.toml
[global]
keyboard = "jp" # en-us
country = "jp"
fqdn = "pve01.example"
mailto = "mail@example"
timezone = "Asia/Tokyo"
root_password = "proxmox"
# root_ssh_keys = [
#     "ssh-ed25519 AAAA..."
# ]

[network]
source = "from-answer" # or "from-dhcp"
cidr = "192.0.2.1/24"
dns = "192.0.2.254"
gateway = "192.0.2.254"

# NICが複数ある場合、どのNICかを選択するためフィルタをかける必要がある
filter.ID_NET_NAME_MAC = "*e43d1afa379a"
# filter.ID_NET_NAME = "enp0s25"

[disk-setup]
filesystem = "ext4"
lvm.swapsize = 0
lvm.maxvz = 0
disk_list = ['sda']
Dockerfile
FROM --platform=linux/amd64 debian:bookworm-slim

# apt リポジトリの更新と必要なパッケージのインストール
RUN apt update && apt install -y \
    wget \
    xorriso

# Proxmox VE 自動インストールアシスタントのダウンロードとインストール
RUN wget http://download.proxmox.com/debian/pve/dists/bookworm/pve-no-subscription/binary-amd64/proxmox-auto-install-assistant_8.2.5_amd64.deb \
        -O proxmox-auto-install-assistant.deb && \
    dpkg -i proxmox-auto-install-assistant.deb

# /proxmox ディレクトリに移動
WORKDIR /proxmox

CMD bash

イメージの作成

PC
$ docker build -t proxmox-auto-docker .
$ docker run --rm -it -v ./:/proxmox proxmox-auto-docker
Docker
$ proxmox-auto-install-assistant prepare-iso proxmox-ve_8.2-1.iso \
  --fetch-from iso --answer-file answer.toml --output pve-auto_8.2.1.iso

インストールメディアの作成

作成されたpve-auto_8.2.1.isoをUSBメモリ等に書き込んでインストールメディアを作成します。

起動

インストールメディアをインストール対象のサーバに接続して、ブート順位を変更するなどして"インストールメディアから"起動します。
すると、そこからは何も触らずにインストール&再起動が行われます。

参考文献

1
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
4