仮想サーバー構築

【サーバ構築:第2巻】KickStart設定ファイルを作成しよう!【KickStart】

2020年3月22日

前回は、 「VmWare Workstation Player」 上へ、RHEL7.5をインストールしました。

今回は、前回使用したKickStart設定ファイルの中身についてみていきます。

KickStart設定ファイルとは(おさらい)

Red Hat Enterprise Linux インストールプロセスでは、インストールしたシステムの設定が自動的にキックスタートファイルに記述されます。

このファイルは常に 「/root/anaconda-ks.cfg」というファイル名で保存されます。

同一設定のインストールを繰り返したり、別のシステム用にコピーに修正を加えて使用することができます。

つまり、普通にRHELをインストールすると、そのサーバー内の「/root」ディレクトリ配下へ「anaconda-ks.cfg(設定ファイル)」と言うファイルが作成されるので、それを修正してKickStartに使用します。

構築環境概略図

各サーバは、http経由で「node0」からKickStart設定ファイルを読み込みます。

本記事では、KickStart設定ファイルの格納場所として、サーバー「node0]を前提として説明していますが、自前のPCにApacheなどをインストールして、代用しても問題ありません。

 要はブラウザからKickStart設定ファイルの内容が参照できる環境があれば問題ありません。

Kickstart設定ファイル

ここからは、「KickStart設定ファイル」の設定内容について説明していきます。

ネットワークの設定

KickStart設定ファイルへネットワークの設定を記述します。

スタティック設定

実際の環境構築の場合、「DHCP」を使用する現場はありません。

本記事では「スタティック」設定で解説していきます。

  • wb01

上記は「wb01」サーバーへのネットワーク設定例になります。

「wb01」 は、NIC冗長化は行わないため、付与するIPアドレスは1つ(ens33)です。
残りの(ens34、ens35)は予備として作成しています。

  • ap01(ap02はIPアドレスとホスト名を修正)

「ap01」 は、NIC冗長化は行うため、付与するIPアドレスは2つ(ens33、ens34)です。
残りの(ens35)は予備として作成しています。

  • db01 (db02はIPアドレスとホスト名を修正)

「db01」 は、NIC冗長化は行うため、付与するIPアドレスは2つ(ens33、ens34)です。
残りの(ens35)は予備として作成しています。


KickStartのNetwork設定オプションは以下の通り。

オプション

  • 「--bootproto」:"static"で静的設定
  • 「--device」:デバイス名設定
  • 「--ip、--netmask」:IP設定
  • 「--gateway」:VmWare Workstation Player 上へ作成する為、自動で付与されます。
  • 「--nameserver 」:上記同様
  • 「--noipv6 」:ipv6無効化
  • 「--activate 」:boot時にデバイス有効化
  • 「--nodefroute 」:GWと通信なし設定
  • 「--hostname」:ホスト名指定

DHCP設定

ブートローダー設定

ブートローダを指定します。

デフォルト設定例) anaconda-ks.cfg

ディスクフォーマット指定

対象ディスクの既存パーティションを全て削除します。

パーティション設定

partコマンドでパーティションを指定します。

ここでは、「/boot(ext4)」ディスクを1GB、「sda(pv)」を100000(約100GB)で指定します。
PVサイズは、仮想マシン作成時に指定したディスク容量を超えるとエラーになります。

オプション

  • 「--fstype」:ファイルシステムタイプ設定
  • 「--ondisk」:パーティション作成ディスク指定
  • 「--size」:パーティションサイズ設定
  • 「--label」:ラベル設定

LVM設定

論理ボリュームを設定します。

本記事では、ディスクフォーマットに「ext4」を使用します。
昨今では「xfs」形式のファイルフォーマットも増えてきましたが、既存の資産を引き継ぐため「ext4」を選択する企業は多いです。

  • wb01

Webサーバー上で稼働するサービスは「httpd」のみを想定しているため、パーティションの設定は特に神経質になる必要はないでしょう。

  • ap01

wb01との違いは「Jboss」の格納領域を追加しています。
「Jboss」とはオープンソースで開発されているJava EEアプリケーションサーバの一つです。

  • db01

wb01との違いは「oracle」の格納領域を追加しています。
「oracle」とはリレーショナルデータベースシステムの一つです。

データベースのデータ領域は、DBMSシステムをインストールしたディスク(上記の設定)とは、別のディスク上へ作成するのが一般的です。

別ディスクに作成することで、ディスクIOの分散化やDBMSをインストールしたディスクが破損しても、データ領域への影響を最小限に抑えることが出来る為です。

オプション

  • 「--fstype」:ファイルシステムタイプ設定
  • 「--size」:パーティションサイズ設定
  • 「--name」:ロジカルボリューム名設定
  • 「--vgname」:ボリュームグループ名設定

パッケージ設定

本記事内での構築環境は、すべてのサーバーへ同一パッケージのインストールを想定しています。
x-windows-systemを同時にインストールし、GUI環境での操作を可能とします。

「%packages」コマンドを使用して、インストールしたいパッケージをリストするキックスタートファイルのセクションを開始します 。

また、このセクションは 「%end」 コマンドで終了する必要があります。

サービス設定

サービス設定の有効化/無効化の設定を行います。

本記事では、全サーバーに「chronyd」サービスを有効化の設定をしておきます。

オプション

  • 「--enabled」:有効化設定
  • 「--disabled」:無効化設定

rootパスワードの設定

「root」のパスワードを設定します。その際、パスワードを暗号化して設定します。

パスワードの暗号化にはいくつかの方法がありますが、ここでは「Python」による暗号化設定を行います。

パスワード:「P@ssW0rd」

KickStartの設定ファイルへは、上記の2行目(暗号化されたパスワード)を設定します。

オプション

  • 「--iscrypted」:暗号化パスワード設定

ユーザー設定

ユーザーとグループの設定を行います。

本記事では、「root」以外に構築専用のユーザ「infusr(infusr,wheel )」を作成します。

ユーザー追加の際、パスワードが平文で記述されるため注意してください!


例)Oracle

複数グループを設定する場合は、カンマ区切りで設定します。

実行モード

インストールを行う際の実行モードを設定します。

本記事では、ターミナルからの遠隔インストールを想定しているため、実行モードは「text」モードを採用します。

上記では、「テキスト」モードでインストール実行を想定しているため、「 graphical 」をコメント化しています。

SELINUX無効化設定

selinuxを無効化に設定します。

オプション

  • 「--enabled」:有効化設定
  • 「--disabled」:無効化設定
  • 「--permissive」:警告出力設定

設定ファイル例

例)wb01

よく読まれている記事

1

独立前は、誰もが不安でいっぱい。近い将来、フリーランスとして独立を考えている方が独立初期に躓かないために「独立前にやるべきことチェックリスト」をご紹介します。 当記事は前編となる「お金まわり編」。全て ...

2

ゲームなどのエンタメ分野での導入が進んでいるVR。言葉自体は耳にしたことがあっても、その意味を詳しく知らないという人も多いのではないでしょうか。また、次世代の新たな技術をビジネスに積極的に活用していく ...

3

フリーランスの確定申告には、青色申告と白色申告の2種類があります。いったいどちらの申告方法を選ぶべきなのでしょうか。 この記事では、青色申告と白色申告、それぞれのメリット・デメリットを把握することでベ ...

4

フリーランスの仕事場は、自宅をはじめとし、カフェや図書館、コワーキングスペースなど自由に選べます。しかし全ての場所で100%集中ができるどうかは、人それぞれです。どのような環境が自身の仕事場として快適 ...

5

フリーランスのITエンジニアとして、一番難しいのは「自己管理」と言えるでしょう。 自分の体調管理はもとより、仕事のスケジュール等すべて自分で管理します。もちろんフリーランスに有給休暇等ありませんから休 ...

-仮想サーバー構築

Copyright© Beエンジニア , 2020 All Rights Reserved.