openshiftの構築作業は、DHCPやLBの準備を含めて3時間あれば十分だ。しかし慣れるまでは学習時間込みで数週間から1-2ヶ月ほどかかる場合もある。
公式ドキュメントやブログから詳細な手順は手に入るが、全体像を体感的に理解する為の情報は少ない。当記事では各作業の繋がりを理解できるよう工夫したので公式ドキュメントの手順と並べて理解の足がかりにしていただきたい。
コンポーネント紹介

構築に必要なコンポーネントを紹介する。
大きく3つに分類される、
①Build node
構築を進める上で必要となるコンポーネントであり、構築後には不要となる物が多い。
構築用:RHELをインストールし、要件を満たすフリーソフトをいくつか構築した。
作業用:踏み台や作業PCとして外部からのダウンロードや、SSHなどリモート作業用に用意した。
Bootstrap:自動的にopenshiftのクラスターを構築する優れものである。
②Master node
構築後に全体を管理する役割を持つ。KubernetesでのMaster nodeやvSphereでのvCSA、NutanixでのPrismに相当する機能を持つ。Controllerとも呼ぶことがあるが、どちらも同じ概念を指す。
③Worker node
構築後に稼働機としての役割を持つ。
AI向けのGPUサーバなど、特殊で高価なサーバを使用する場合はworker nodeに集中して配置すると良い。反対に①や②で紹介したサーバは仮想サーバを用意すると構築が軽量でスムーズに進むことが多いため環境に合わせて役割ごとに設計したい。
設計の一例

構成例として、AI用のGPUサーバを手配しpodで効率的な学習や推論を実行できる環境を以下に用意した。
先述の通り、worker以外のサーバを仮想化したことで軽量な構成を実現できた。また大幅なコスト削減にも繋がる。
インストール準備

bootstrapが自動的にデプロイしてくれるが、自動的に動く為の準備が必要になる。
UPI独自ではあるが、LBやRT、DHCPの準備も含めると、小規模であれば準備に手間取って自動デプロイによるメリットは感じづらい。テンプレートを参考にyamlを作成し、複数の手順を経てignitionファイルを生成する。ignitionファイルをwebサーバに格納すれば準備完了だ。
インストール

openshiftをインストールするサーバにRedHat core OS(RHCOS)をマウントし、コマンドを実行すれば処理が走る。
構築完了を確認次第、INFOメッセージと共にopenshiftのwebUIリンクとユーザパスワード情報を受け取ることができる。これにて構築完了だ。
コメント