LoginSignup
1
1

More than 5 years have passed since last update.

Cobblerで「netboot=Falseの時に生成される設定ファイル」を変更する方法

Posted at

2行で、What is Cobbler

Cobblerを使えば、PXEブート環境が簡単に構築することができる。
さらにはサーバに応じて、適用するKickstartファイルの内容を変更することもできる。

Cobblerはマシンのインストール完了を検知する仕組みを持っている

CobblerではOSインストール後に適用するscript(Kickstartで言う[%post],Preseedで言う[late_command])でcobblerサーバのAPIを叩くようにし、インストールの正常終了をCobblerサーバに通知してOSインストール完了を検知することができる。
そうすることで、rebootして再びpxebootしても、ローカルディスクからブートする設定ファイルに変更/適用することができるようになる。(もし、この機構がなかった場合、BIOSブートオーダでPXEブートを最優先にしていると、OSインストールの無限ループになってしまう。)

実際に、cobblerの2.0以上では、
OSインストールが完了したサーバには、下記のpxe設定ファイルを適用して、ネットブートではなくディスクからブートするように変更している。(chain.c32のブートローダを使用して、チェインロードし、ディスクからブートする)

/etc/cobbler/pxe/pxelocal.template
DEFAULT local
PROMPT 0
TIMEOUT 0
TOTALTIMEOUT 0
ONTIMEOUT local

LABEL local
        KERNEL chain.c32

んで今回は、

このOSインストールした後に適用するPXE設定の内容を変更したい

言い換えると、netboot=Falseの時に生成される設定ファイルの内容を変更したい

結論から言うと、直接 /etc/cobbler/pxe/pxelocal.template を変更すればよいみたい。

ちなみに、なんで僕がlocalbootの方法を変えたかったかというと、うまくチェインロードできないサーバがあったので、チェインロードしないでlocalbootを使いたかったからである。なのでこんな感じに変更した。

/etc/cobbler/pxe/pxelocal.template
DEFAULT local
PROMPT 0
TIMEOUT 0
TOTALTIMEOUT 0
ONTIMEOUT local

LABEL local
        localboot 0

でも、この逆にlocalbootがうまくいかないサーバーもあるので、サーバによってチェインロードするかlocalbootするかを変更しようと思う。この辺はTemplateエンジンでCheetahが使われているので、簡単にできると思う。

1
1
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
1