忍者ブログ

ひつ(じのひよこが)プログラミングします。
お仕事や趣味で困ったこととか、何度も「あれ?どうだったかしら」と調べたりしたこととか、作ったものとか、こどものこととかを書きます
★前は週末定期更新でしたが今は不定期更新です

2024/11    10« 1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  »12

Ubuntu 14.04 LTS を PXE ブートを使ってネットワークインストールする

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

コメント

ただいまコメントを受けつけておりません。

Ubuntu 14.04 LTS を PXE ブートを使ってネットワークインストールする

サーバが増える

サーバの稟議が通った!サーバが届くぞ!」という喜びの声。そして、届くサーバ15台……「えっ、これ全部に Ubuntu Server をインストールするの?」

インストール用の CD を15台に入れては抜いて入れては抜いてをしなくて済む方法としてネットワークインストールがある。が、インターネットで見つかった手順書は若干古いものが多かった。ので、実際にやった時の記録。

構成

以下のような構成になる。

┏━━━━┓
┃ルーター┃
┗━┯━━┛┏━━━━━┓   
  ├───┨PXE サーバ┃
  │   ┗━━━━━┛
  │   ┏━━━━━━┓   
  ├───┨新しいサーバ┃
  │   ┗━━━━━━┛
  │
  ...

PXE サーバと新しいサーバ群は同じネットワーク上にある必要がある。

PXE サーバの準備

注意点:DHCP サーバは除いとく

まず、ルーターが DHCP サーバを兼ねていたらルーターの DHCP サーバ機能をオフにする。これは PXE サーバが DHCP サーバになるためである。

手順概要

以下の手順で実施する。

  1. PXE サーバに Ubuntu 14.04 LTS をインストールする
  2. PXE サーバに DHCP サーバをセットアップする
  3. PXE サーバに tftp サーバをセットアップする
  4. PXE サーバにインストールイメージを配置する
  5. 新しいサーバを PXE ブートする

PXE サーバに DHCP サーバをセットアップする

まず、 DHCP サーバをインストールする。
# apt-get install isc-dhcp-server

設定ファイルを編集する。 /etc/dhcp/dhcpd.conf である。末尾に以下を記述する。

# subnet と netmask でネットワークを指定。
# range は新しいサーバに付与する IP アドレスの最小値/最大値を入れる。
subnet 192.168.237.0 netmask 255.255.255.0 {
          range 192.168.237.2 192.168.237.12;
}
# DNS サーバの IP アドレスを入れること
option domain-name-servers 192.168.1.1 ;
# ネットワークインストールのメディアへのパス
filename="ubuntu/install/netboot/pxelinux.0";

設定したのでサーバを再起動するのだが、再起動した後にログを見ると不穏なメッセージが載っている。
# service isc-dhcp-server restart
# cat /var/log/apt/isc-dchp-server6.log
Please Create and configure /etc/dhcp/dhcpd6.conf to fix the problem.

どうにも /etc/dhcp/dhcpd.conf ではなく /etc/dhcp/dhcpd6.conf という名の config ファイルが必要らしい。インストール直後に配置されるのは /etc/dhcp/dhcpd.conf だというのに。内容は /etc/dhcp/dhcpd.conf と同じでよいので複製する。
# cp /etc/dhcp/dhcpd.conf /etc/dhcp/dhcpd6.conf
# service isc-dhcp-server restart

PXE サーバに tftp サーバをセットアップする

tftp サーバのセットアップをおこなう。さほど注意点はない。

とりあえずインストール。
# apt-get install tftpd-hpa

設定を行う。 /etc/default/tftpd-hpa を編集し、以下の二行を追記。

RUN_DAEMON="yes"
OPTIONS="-l -s /var/lib/tftpboot"

PXE サーバにインストールイメージを配置する

インストールイメージを入手する。
$ cd
$ wget http://releases.ubuntu.com/14.04.4/ubuntu-14.04.4-server-amd64.iso

DHCP の設定と tftp の設定で記述した場所に iso イメージを配置する。
# mount -t iso9660 -o loop /home/ubuntu/ubuntu-14.04.4-server-amd64.iso /var/lib/tftpboot/

新しいサーバを PXE ブートする

新しいサーバを起動し、ブートメニューから PXE ブートを選択。インストールを開始できる。何台でもやれる。

インストールの自動化

PXE ブートと preseed.cfg を使って Ubuntu 14.04 LTS のインストールを自動化する

用語集

PXE

ピクシー、と発音する。Preboot Execution Environment の略。ネットワーク経由でコンピュータを遠隔地から起動するための規格。より詳しい話は Preboot Execution Envionment (PXE) Specification Version 2.1 に。

PXE サーバ

PXE を利用するために起動用のメディアを提供するサーバ。PXE サーバは特別な機能を持たない普通の物理サーバを利用して作ることができる。逆に、インストールする側のサーバは PXE ブートに対応している必要がある。

TFTP

Trivial File Transfer Protocol の略。FTP に似ていてファイル転送を行うプロトコル。FTP とは違い、認証は行われない。また、転送の効率に重きをおいた代わりに信頼性を犠牲にしている。

PR

コメント

ただいまコメントを受けつけておりません。

ブログ内検索

P R