Japan
サイト内の現在位置を表示しています。
Oracle Cloud InfrastructureでResource Managerを使用したHAクラスター環境の自動構築を試してみました(Windows/Linux)
CLUSTERPRO オフィシャルブログ ~クラブロ~
はじめに
クラウド環境における構築作業では、通常、コンソール上で多数の画面や入力フォームを操作することでリソースを作成できますが、毎回手作業が発生するため、作業時間の増加や設定ミスが発生するといった問題があります。
その問題を解決するために、近年では、IaC(Infrastructure as Code)と呼ばれる、コードを用いてインフラストラクチャの管理やプロビジョニングを行う手法が注目・活用されています。
Oracle Cloud infrastructure(以降、OCI)では、Resource Managerを使用することで、OCIリソースのプロビジョニング処理を自動化することができます。
今回はResource Managerを用いて、OCI上におけるHAクラスター構築を一部自動化してみました。
この記事の内容
1. Resource Managerとは
Resource Managerは、OCIリソースのプロビジョニング処理を自動化できるサービスです。
Resource Managerでは、Terraform構成ファイルをアップロードするだけで、OCIリソースの構築ができるようになります。
構成ファイルの作成やメンテナンスこそ必要ですが、手作業よりも素早くかつミスなく、様々な環境をプログラマブルに構築できるようになり、作業コストや作業ミスを抑えることができます。
ここでは、Resource Managerを使用する際に登場する用語について、簡単に押さえていきます。
Terraform
HashiCorp社により開発されているオープンソースのインフラ自動構築ツールです。
Resource ManagerはTerraformに基づいたサービスで、Terraform構成ファイルと呼ばれるファイルを作成し、Resource Managerから実行することでOCIリソースのプロビジョニングを自動化することができます。
スタック
Resource Managerによって管理されるTerraformコマンドの実行環境です。スタックを作成することで、アップロードしたTerraform構成ファイルの実行環境がクラウド上に構成されます。
ジョブ
スタック上でTerraformアクション(apply, plan, destroy)を実行すると作成されます。特定のスタック上で実行できるジョブは、一度に1つのみです
2. 構築するHAクラスター構成
本記事では、東京リージョンにロード・バランサを使用したHAクラスターを構築します。
HAクラスターの構成図は以下の通りです。
なお、以下の構成図に記載した全てのOCIリソースのプロビジョニングをResource Managerで自動化します。
また、構成図に記載はありませんが、本記事では以下についても自動構築しています。
ルート表
- 各種インスタンス間で相互通信するためのルート表の作成
- 現用系サーバー、待機系サーバーがインターネットにアクセスするために必要なNATゲートウェイの作成(*)
セキュリティ・リスト
- 操作用クライアント
インターネットからリモートデスクトップでアクセスするための許可設定
- 現用系サーバー、待機系サーバー
現用系サーバー、待機系サーバー間でCLUSTERPROが通信するための許可設定
ロード・バランサ
- バックエンド・セット等、ロード・バランシングに必要な設定の追加
なお、セキュリティ・リストの設定については一例となりますので、適宜使用するアプリケーションや、セキュリティ要件などにしたがって修正してください。
3. Resource Managerを使用した環境構築
Resource Managerを使用して、上述したロード・バランサを使用したHAクラスターを構築するまでの手順をご紹介します。
3.1 Terraform構成ファイルの取得
今回は予め用意しているTerraform構成ファイルを使用します。
以下のリンクより、Terraform構成ファイルをダウンロードします。
- ※指定したOSで構築したい場合は、後述するスタック作成時に指定するイメージOCIDのパラメータを適宜変更してください。
3.2 Resource Managerの実行
入手したTerraform構成ファイルを用いてHAクラスター環境構築に使用するOCIリソースを自動で作成、設定します。
- ※画面は記事執筆時点の内容であり、最新の内容とは異なる場合があります。
- 1.OCIコンソールから、 [開発者サービス] > [リソース・マネージャ] > [スタック] を選択します。
- 2.[スタックの作成]を押下します。
- 3.[スタックの作成] - [スタック情報]に遷移します。
スタック構成として [.Zipファイル] を選択し、先程ダウンロードしたTerraform構成ファイルをアップロードします。アップロード完了後、[次] を押下します。
- 4. [スタックの作成] - [変数の構成]に遷移します。
ここでは、Terraform構成ファイルに記述されている変数に値を設定します。各変数に必要な情報を設定の上、[次] を押下します。
本記事で使用するTerraform構成ファイルに定義された変数の⼀覧は以下の表のとおりです。
なお、既定値欄にすでに入力されている値はそのまま使用しても問題ありません。空白の箇所については、環境に応じた値を設定してください。
変数名 | 説明 | 既定値 |
---|---|---|
Compartment_ocid | スタックを作成するコンパートメントのocid | Resouce Manager側で自動取得 |
Instance1_ipaddr | 現用系サーバーのIPアドレス | 10.0.1.10 |
Instance1_Image_ocid | 現用系サーバーのイメージocid | ocid1.image.oc1.ap-tokyo-1.aaaaaaaanvewa7zsczldkfp64w2mml3wmakanbnm2fnrdtcmpvzofcatbiia |
Instance1_ssh_public_key(*) | 現用系サーバーへログインするための公開鍵情報 | |
Instance2_ipaddr | 待機系サーバーのIPアドレス | 10.0.1.20 |
Instance2_Image_ocid | 待機系サーバーのイメージocid | ocid1.image.oc1.ap-tokyo-1.aaaaaaaanvewa7zsczldkfp64w2mml3wmakanbnm2fnrdtcmpvzofcatbiia |
Instance2_ssh_public_key(*) | 待機系サーバーへログインするための公開鍵情報 | |
Client_ipaddr | 操作用クライアントのIPアドレス | 10.0.0.2 |
Client_Image_ocid | 操作用クライアントのマシンイメージocid | ocid1.image.oc1.ap-tokyo-1.aaaaaaaac6parcinn5a7ar5gis5adomnxipaievlgy7tkqvzq5uxdib5dbna |
VCN_cidr_block | VCNのCIDR Block | 10.0.0.0/16 |
Private_subnet_cidr_block | PrivateサブネットのCIDR Block | 10.0.1.0/24 |
Public_subnet_cidr_block | PublicサブネットのCIDR Block | 10.0.0.0/24 |
Sl_public_client_ipaddr | 操作用クライアントに接続許可するネットワーク(例:192.168.0.1/32) | |
Tenancy_ocid | スタックを作成するテナンシのocid | Resouce Manager側で自動取得 |
Region | スタックを作成するリージョン名 | ap-tokyo-1 |
(*) Linux版テンプレートファイルにのみ定義されています。
なお、公開鍵情報は キー名 ではなく、公開鍵の認証情報を入力してください。
- 5.[スタックの作成] - [確認]に遷移します。
設定した情報を確認の上、[作成]を押下します。
- 6.項番5 で作成したスタックの詳細画面から [計画] を押下し、ジョブを作成します。
- 7.項番5 で作成したスタックの詳細画面から [適用] を押下し、[適用ジョブの計画解決] から、項番6 で作成したジョブを選択し、[適用] を押下します。
- 適用後、ジョブが正常に完了したことを確認してください。ジョブが失敗に終わった場合は、エラー内容を確認の上、再度実行してください。
3.3 HAクラスターの構築
操作用クライアントにログインし、HAクラスターの構築と動作確認を行います。
以降の手順につきましては、以下のガイドを参照してください。
- Windows > クラウド > Oracle Cloud Infrastructure > CLUSTERPRO X 4.3 向け HAクラスタ構築ガイド
→ 第 4 章 ミラーディスク型クラスター構築手順 - Linux > クラウド > Oracle Cloud Infrastructure > CLUSTERPRO X 4.3 向け HAクラスタ構築ガイド
→ 第 4 章 ミラーディスク型クラスター構築手順
また、HAクラスター構築時に使用するIPアドレス、ロード・バランサの設定情報などはOCIコンソールの各サービスの詳細画面より、確認してください。
4. スタック作成後の操作について
環境作成後の操作に関する注意点について説明します。
Resource Managerを使用して作成したOCIリソースに対して何らかの変更(追加・更新・削除)を加えたい場合、OCIコンソールから直接リソースを操作するのではなく、「Terraform構成ファイルの修正」と「スタックの再編集」にて行うことを推奨します。
これは、Resource Managerが、「そのスタックで定義したOCIリソース」を制御するようになっているためです。仮にOCIコンソールから変更を加えると、スタックとの整合が取れなくなり、問題が生じることがあります。
スタックを編集する場合は、[リソース・マネージャ] > [スタック] から、作成したスタックを選択し、[編集] を押下し、Terraform構成ファイルの再アップロードを行って下さい。
さいごに
今回は、Resource ManagerでHAクラスター環境の構築を一部自動化してみました。
今回自動化したのは、OCIリソースの作成部分のみでしたが、従来の手作業による作成と比べて、短時間で自動構築できました。
テンプレートの作成やメンテナンスこそ必要ですが、手作業で生じる手間やミスを軽減できる点は魅力的だと思います。ぜひご活用ください。
本記事の構成をご検討の際は、CLUSTERPROの試用版を用いて検証した後、ご提案・構築ください。
お問い合わせ