投稿者:ITインフラ担当

こんにちは。日本情報通信の荘司と申します。

2020年度入社の私が最初にアサインされたプロジェクトが、オンプレミスの構築でした。
筆者は入社当時IT未経験で、当然ながらオンプレミスの構築自体も初挑戦です。
この記事では、自分への備忘録を兼ねて、実際の作業の流れをまとめました。
まだまだ勉強中の身ゆえ間違いなどあるかもしれません。ご了承ください。

構成について


今回の構成は、ハードウェアのサーバーにハイパーバイザーを導入し、仮想マシン4台を作成します。
図1.png
・ハードウェア:ThinkSystem SR650 7X06
 ハードウェアはL2スイッチと接続していて、インターネットには繋がっていない。
・ハイパーバイザー:VMware vSphere Hypervisor(以降ESXiと表記)
・仮想マシン×4 OS:Red Hat Enterprise Linux Server release 8.2(以降RHELと表記)

事前準備


構築作業を滞りなく行うために、事前に作業手順や作業に必要な物を用意しておきます。

●作業手順
ハードウェアのパーツの取り付けやRHELのインストール・初期設定の方法など、構築に必要な作業を洗い出し、タイムチャートを計画の上、作業手順書を作成します。
下記2点は私が直面して思ったことですので事前に気を付けるべきポイントとして挙げておきます。

  • 初めての場合は何をするかも分からないので、全体の設定手順また設定にかかる時間をネットで調べたり経験者に聞いたりなど情報を集めることはとても大切です。
  • ハードウェアのパーツの取り付け方や内部の正しい配線の理解のため、サーバー製品のセットアップガイドの確認は必須です。Lenovoのサーバー製品はパーツの取り付け手順を動画で説明しているものもあるので、映像で確認した方がより分かりやすく方法を覚えることができると思います。

●メディアの作成
サーバーや仮想マシンにハイパーバイザー・OSを導入するためにはインストーラーが必要なので、構築作業前にインストーラーメディアを作成する必要があります。
自分が実施したプロジェクトでは、必要なメディアは3つでした。

1.最新のファームウェア
構築前のハードウェアは最新のファームウェアでないことがあり、更新作業が必要になることがあります。それを想定して、最新のファームウェアをisoファイルやディスク等のメディアで用意します。私の場合はDVDで準備しました。
この作業では、Lenovo XClarity Essentials Bootable Media Creatorを使用して最新のファームウェアを入手しました。

2.ESXiインストーラー
サーバーに導入するハイパーバイザーです。
VMware社のカスタマーコネクトから入手できます。

3.RHELインストーラー
仮想マシンに導入するOSです。
Red Hat社のカスタマーポータルから入手できます。

※3についてはRHELのサブスクリプションに注意が必要です。
サブスクリプションとはソフトウェアのライセンスに相当するもので、システムに割り当てると、利用期間中はRHEL を利用するための技術サポートやバグ修正/アップデートの入手など、様々なサービスを受けられる権利のことです。
このサービスの中にはRHELのインストーラーも含まれており、サブスクリプションの期間内でないと、RHELのインストーラーを入手できません。
ですので、構築期間を考慮したサブスクリプションの購入をお勧めします。

構築


事前準備が完了したら、いよいよ実際にデータセンターに行って構築作業に入ります。
流れは以下の通りです。

1.キッティング
ここではハードウェアに構成パーツを取り付けていく作業のことを指します。
このプロジェクトで取り付けたパーツは以下の通りです。


HDD(600GB 15K 12Gb SAS 2.5型 HS 512n HDD)
メモリ(16GB TruDDR4 2666MHz (1Rx4 1.2V) RDIMM)
RAIDコントローラー(RAID 930-16i 8GB Flash PCIe 12Gb アダプター)
PCI拡張スロット(Intel I350-T4 PCIe 1Gb 4ポート RJ45 Eth Adp)
追加電源(1100W (230V/115V) Platinum HS 電源機構)


取り付け・内部の配線等は、事前にセットアップガイドや動画を見ていたおかげで、作業はスムーズにできたと思います。
また、パーツ取り付けの際にはドライバーが必須です。データセンターで借りられるところもありますが、自分が使い慣れたドライバーを持参するのが良いと思います。 
特にトルクスドライバーはレールの取り付けに必要だったので、持っているのであればトルクスドライバーを持っていくと良いです。

2.ラッキング
キッティングできたハードウェアを、データセンター内のラックに搭載する作業です。
当然ながら重いので2人以上の人手が必要です。

3.ケーブリング
電源のケーブルやL2スイッチと接続するLANケーブルを結線する作業です。
どことどこが接続しているかを分かりやすくするためにケーブルにタグをつけ、他のサーバー機器との邪魔にならないようにケーブルをラック横に結束しました。

4.初期設定(ハードウェア)
ハードウェアの管理ツールである「XClarity Controller」を使用して初期設定を行います。
このプロジェクトでは以下の設定を行いました。

  • システム名設定
    システム名を登録します。
  • IPアドレス設定
    IPv6を無効化します。
  • 初期パスワード変更
    初期パスワードの「PASSW0RD」から変更します。
  • ファームウェア更新
    作成したメディアを読み込ませて更新を行います。
    今回はCDを挿入し、XClarity Controllerのコンソールを開いてそのまま待てば、アップデート画面が表示されます。
  • RAID構成
    追加したHDDでRAID5を組んでいます。うち一本はホット・スペアです。
    RAID設定は「XClarity Provisioning Manager」を開いて設定します。

5.ESXiインストール・セットアップ
ハードウェアの初期設定後、ESXiをインストールします。
インストール後は以下の作業を行いました。

  • ESXiのIPアドレス設定
  • ESXiのライセンスキー割り当て

6.仮想マシン作成
先程インストールしたESXiホストにログイン後、仮想マシンの作成を行います。このプロジェクトでは4台作成しました。

7.RHELインストール・セットアップ
仮想マシンの作成後、RHELのインストールメディアをセットし、ESXiから仮想マシンのコンソールを開いてインストールを行います。その後、以下の設定を行います。

  • ホスト名、ドメイン名設定
    仮想マシンのホスト名・ドメイン名を設定します。
  • IPアドレス設定
    仮想マシンのIPアドレスを設定します。
    お客様がお持ちのセグメントのIPアドレスを利用しました。
  • ベース環境の選択
    インストールするアドオンを選ぶ作業です。
    選択したベース環境によって選べるアドオンが違います。
  • タイムゾーン設定
    ハードウェアの仕様で、UTCが既に生産国の時間に設定されている場合があります。
    UTCが日本時間に設定されている状態で、タイムゾーンをJTCに設定すると時間のずれが起こるので、このプロジェクトではUTCに設定しました。
  • パーテーションの設定
    仮想マシンのパーテーションを設定します。
  • rootパスワードの設定
    rootユーザーのパスワードを設定します。
  • システム登録
    RHELにサブスクリプションを適用する作業です。
  • SELinux設定
    Firewall機能の一つです。
    このプロジェクトではFirewalldを利用するため無効にしています。
  • Firewalld設定
    Firewalldはデフォルトの設定にしています。
    デフォルトの設定は、外部から仮想マシンへの通信はicmp, ssh, dhcpv6-clientのみ許可、仮想マシンから外部への通信はすべて許可 となっています。

8.単体テスト
構築が完了したら、単体テストを行います。
起動停止や疎通の確認、パラメーターが正しいかを事前に作成した計画書に基づき確認します。

大変だったこと

プロジェクトにトラブルはつきものと言いますが、実際トラブルが起きるとかなり焦ります。今回の構築作業も様々なトラブルに見舞われました。
その中で、印象に残った2つを取り上げます。

1.オフラインでのRHELのシステム登録
RHELのサブスクリプションを割り当てるには、システム登録をする必要があります。
通常、インターネットと接続している場合、仮想マシン内でユーザー名とパスワードを使いシステム登録ができます。ですが、オフラインの環境ではこの方法を行うことができません。
作業時は、オンライン下でのシステム登録方法しか事前調査ができておらず苦戦していました。
解決方法としては、Red Hatのカスタマーポータルにログインして、システムプロファイルの新規作成を行います。
ログインしてからの手順は以下の通りです。

  • [システム]タブの[新規作成]をクリックし、システムタイプやバージョンなどを入力し[作成]をクリックすると、プロファイルが作成されます。
  • [サブスクリプション]タブをクリックし、[サブスクリプションのアタッチ]をクリックし、適用するサブスクリプションにチェックを入れ、[サブスクリプションのアタッチ]をクリックします。
  • [サブスクリプション]タブに先程アタッチしたサブスクリプションが表示されます
  • [証明書のダウンロード]をクリックしてダウンロード
    このファイルの中にあるpemファイルを仮想マシンに配置します。
  • ESXiのデータストアにpemファイルをアップロードした後、ターミナルソフトでESXiにログインし、SCPコマンドでpemファイルを仮想マシンに転送
  • 以下コマンドを仮想マシンで実行します。
    subscription-manager import --certificate=/[配置場所]/[証明書ファイル名.pem]
    実行後、Successfully imported certificate [証明書ファイル名.pem]と表示されます。

これで、RHELにサブスクリプションが適用され、システム登録が完了となります。
適用されたサブスクリプションは、subscription-manager listコマンドで確認できます。

2.仮想マシンに接続できない
構築中、作業端末からターミナルソフトを経由して仮想マシンにアクセスできない事象が発生しました。
切り分けとして、IPアドレスに間違いは無い、ESXiにターミナルソフトを経由して接続は可能、仮想マシン間の通信は可能です。
作業端末と仮想マシン間の経路に問題がある可能性を考えて、ESXiのネットワーク情報を確認します。すると...

840.jpg

上記画像は仮想スイッチの設定の一部です。このプロジェクトでは、vmnic6をL2スイッチのサービスセグメントと接続させる予定でしたが、このステータスが「アクティブ」になっていないことが繋がらない原因でした。

図9.png


ちなみに、仮想スイッチの画像ではvmni6以外にも大量のvmnicが接続されていますが、トラブルの元になりやすいので使うポート以外は下記の手順で一覧から外すと良いです。

  • サーバーのコンソールからESXiを開き、「Configure Management Network」→「Network Adapters」を開きます。
  • スペースキーで使用しないポートのチェックを外します。
    959.jpg
  • Escキーでexitする前に表示される確認画面でyキーを押し、変更を保存する。


ということで原因を修正し、作業端末からpingを飛ばして疎通確認が取れました。

最後に


今回のプロジェクトはオンプレミスの構築がどのような手順で行われるか、実際のトラブルが起きた時の考え方など様々なことを学びました。
またトラブルの際は、社内の有識者の皆様にお世話になりました。この場を借りてお礼申し上げます。
本記事が少しでもIT初心者の皆様の助けになれば幸いです。


※記載の会社名、商品名、サービス名は各社の商標または登録商標です。