Terraformモジュールのダウンロードと変数の設定

Oracle CloudでAgile PLMアプリケーションをホストするために必要なリソースは、Terraformモジュールで定義されます。モジュールをダウンロードし、永続化、バージョニングおよび共有できるTerraform構成ファイルでインフラストラクチャ・リソースを定義します。これらのファイルには、インフラストラクチャをプロビジョニングし、望ましい状態を維持するために必要なステップを記述します。次に、これらのステップを実行して、説明したインフラストラクチャを構築できます。

Terraformモジュールのダウンロード

このソリューションのTerraformモジュールはGitHubでご利用いただけます。このドキュメントでは、コードへのパスを確認できます。

  1. 左側のナビゲーション・ペインで、「Download Code」をクリックします。
  2. 「Git Repo」をクリックします。
  3. ローカル・コンピュータにリポジトリをクローニングまたはダウンロードします。

テナンシ変数の設定

TerraformがOracle Cloud Infrastructureテナンシに接続するために必要なパラメータを指定します。

  1. Examplesフォルダに移動し、アーキテクチャのタイプに応じてSingle_instanceまたはMultiple_instanceのいずれかを選択します。
  2. terraform.tfvars.templateのコピーを作成し、そのファイルをterraform.tfvarsに変更します。
  3. プレーン・テキスト・エディタでterraform.tfvarsを開き、次のように変数の値を設定します。
    変数 摘要
    tenancy_id テナンシのID。Oracle Cloud Infrastructure WebコンソールでテナンシのIDを確認できます。サービス・メニューから「管理」を選択し、テナンシ詳細をクリックします。
    user_id TerraformでOracle Cloud Infrastructureによる認証に使用するユーザーのID。

    ユーザーのIDを検索するには、サービス・メニューから「アイデンティティ」を選択し、「ユーザー」を選択します。リストでユーザー名を検索し、そのIDをコピーします。

    fingerprint アップロードしたパブリックAPI署名キーのフィンガープリント。
    private_key_path プライベートAPI署名キーを含むファイルのフルパスおよび名前。
    region リソースを作成するリージョン。
    db_admin_password データベース管理ユーザーのパスワードを入力します。

インフラストラクチャ変数の設定

TerraformがAgile PLMのインフラストラクチャを設定するために必要な値を指定します。コンピュート・インスタンス、ネットワーク・パラメータ、要塞ホストの属性、コンポーネントの詳細およびその他の共通構成のSSHキーを指定します。たとえば、すべてのリソースを1つの可用性ドメイン内に作成するか、2つの可用性ドメインにわたって作成するか、データベース・システムで必要なエディションとデータベースのバージョンを作成するかなど、必要なアプリケーション・インスタンスの数を指定できます。
  1. terraform.tfvarsファイルと同じフォルダに移動し、agile-plm-complex.auto.tfvarsを開きます。
  2. agile-plm-complex.auto.tfvars内の変数の値を設定します。次の表に、単純なアーキテクチャまたは複雑なアーキテクチャに必要なすべての変数を示します。
    セクション 変数 摘要
    共通構成 default_compartment_id リソースを作成するコンパートメントのOCID。

    コンパートメントのOCIDを検索するには、サービス・メニューから「アイデンティティ」を選択し、「コンパートメント」を選択します。リストで必要なコンパートメントを見つけ、そのOCIDをコピーします。

    default_ssh_auth_key トポロジ内のプライベート・コンピュート・インスタンスのSSH公開キーを含むファイルのフルパスおよび名前。
    ssh_private_key_path トポロジ内のプライベート・コンピュート・インスタンスのSSH秘密キーを含むファイルのフルパスおよび名前。
    default_img_id Agile PLMカスタム・イメージのOCID。これは、マーケットプレイスから使用できるイメージではなく、カスタム・イメージのIDです。カスタム・イメージがない場合は、値をnullに設定できます。
    default_img_name Agile PLMカスタム・イメージの名前。カスタム・イメージがない場合は、値をnullに設定できます。
    default_mkp_image_name Agile PLMのデフォルトのOracle Cloud Marketplaceイメージ名。
    default_mkp_image_version Agile PLM Oracle Cloud Marketplaceイメージのバージョン。
    データベース構成 provision_db Database Classic Cloud Serviceをプロビジョニングするかどうか。
    dbcs_db_edition Database Classic Cloud Serviceエディションの名前。
    dbcs_instance_shape Database Classic Cloud Serviceインスタンスのシェイプを定義します。
    ロード・バランサ構成 provision_pub_lb パブリック・ロード・バランサをプロビジョニングするかどうか。
    provision_priv_lb プライベート・ロード・バランサをプロビジョニングするかどうか。
    lb_port ロード・バランサのリスニング・ポート。
    lb_ca_certificate ロード・バランサのルート証明書へのパス。
    lb_private_key ロード・バランサのプライベート証明書ルート・キーへのパス。
    lb_public_certificate ロード・バランサのパブリック証明書へのパス。
    rule_sets ルールの実行単位を指定します。
    Bastionホスト構成 create_bastion 要塞とすべてのリソース(サブネット/NSG/コンピュート・インスタンス)を作成するかどうか。
    bastion_image_name 要塞ホストの名前。
    アプリケーション・サーバーの構成 as_num_inst アプリケーション・サーバー・インスタンスの数。
    as_instances_shape CPUの数およびメモリーの割当てを指定する、アプリケーション・サーバー・インスタンスのシェイプ。
    as_instances_boot_vol_size アプリケーション・サーバー・インスタンスのブート・ボリューム・サイズ。
    as_aditional_block_volume_size 追加のブロック・ボリューム・サイズ。
    as_aditional_block_volume_mount_point アプリケーション・サーバーのブロック・ボリュームがマウントされる場所。
    as_volumes_backup_policy ボリューム・バックアップのポリシー。ゴールド、シルバー、ブロンズなどの汎用サービス・レベルにすることができます。
    as_prod_port 各ホストの最初の管理対象サーバー(デフォルトでは8001)のリスニング・ポート。
    as_admin_port WebLogic管理サーバー(デフォルトでは9001)のHTTPリスニング・ポート。
    ファイル・マネージャ・サーバー構成 fm_num_inst ファイル・マネージャ・インスタンスの数。
    fm_instances_shape CPUの数およびメモリーの割当てを指定するファイル・マネージャ・インスタンスのシェイプ。
    fm_instances_boot_vol_size ファイル・マネージャ・インスタンスのブート・ボリューム・サイズ。
    fm_aditional_block_volume_size 追加のブロック・ボリューム・サイズ。
    fm_aditional_block_volume_mount_point ファイル・マネージャのブロック・ボリュームがマウントされる場所。
    fm_volumes_backup_policy ボリューム・バックアップのポリシー。ゴールド、シルバー、ブロンズなどの汎用サービス・レベルにすることができます。
    fm_prod_port 各ホストの最初の管理対象サーバー(デフォルトでは8001)のリスニング・ポート。
    インストールする場合、Ansibleサーバー構成。 create_ansible 後でAnsibleをインストールできるように、Ansibleのフレームワークを今すぐ作成するかどうか。
    DNSサーバーの構成 create_dns Agile PLMアプリケーションのリクエストを受信するオンプレミスまたは外部DNSサービス。