

# AWS CloudFormation で RDS Custom for Oracle をデプロイする
<a name="custom-oracle-multiaz-deployment"></a>

提供された AWS CloudFormation テンプレートを使用して RDS Custom for Oracle のデプロイを自動化します。リソースをデプロイする前に、次の前提条件を完了してください。

## 前提条件
<a name="custom-oracle-prerequisites"></a><a name="custom-oracle-required-files"></a>

**必要な Oracle ファイルのダウンロード**

CloudFormation テンプレートを作成する前に、特定の Oracle インストールファイルが必要です。デプロイする前に、これらのファイルをダウンロードしてください。

1. [Oracle Database 19c (19.3)](https://www.oracle.com/database/technologies/oracle19c-linux-downloads.html) に移動する

1. ファイル `LINUX.X64_193000_db_home.zip` を見つけてダウンロードする

1. ファイルの名前を `V982063-01.zip` に変更する

1. 残りのパッチをダウンロードし、**プラットフォームまたは言語**を `Linux x86-64` として選択します。

### 最新の OPatch ユーティリティ
<a name="custom-oracle-opatch"></a>

[パッチ 6880880](https://updates.oracle.com/Orion/PatchDetails/process_form?patch_num=6880880)

### 2023 年 1 月 PSU パッチ
<a name="custom-oracle-jan-2023-patches"></a>

**データベース PSU および RU パッチ**
+ [パッチ 34765931](https://updates.oracle.com/Orion/PatchDetails/process_form?patch_num=34765931)
+ [パッチ 34786990](https://updates.oracle.com/Orion/PatchDetails/process_form?patch_num=34786990)

**追加の必須パッチ**
+ [パッチ 35099667](https://updates.oracle.com/Orion/PatchDetails/process_form?patch_num=35099667)
+ [パッチ 35099674](https://updates.oracle.com/Orion/PatchDetails/process_form?patch_num=35099674)
+ [パッチ 28730253](https://updates.oracle.com/Orion/PatchDetails/process_form?patch_num=28730253)
+ [パッチ 29213893](https://updates.oracle.com/Orion/PatchDetails/process_form?patch_num=29213893)
+ [パッチ 35012866](https://updates.oracle.com/Orion/PatchDetails/process_form?patch_num=35012866)

### 2023 年 4 月 PSU パッチ
<a name="custom-oracle-apr-2023-patches"></a>

**データベース PSU および RU パッチ**
+ [パッチ 35042068](https://updates.oracle.com/Orion/PatchDetails/process_form?patch_num=35042068)
+ [パッチ 35050341](https://updates.oracle.com/Orion/PatchDetails/process_form?patch_num=35050341)

**追加の必須パッチ**
+ [パッチ 28730253](https://updates.oracle.com/Orion/PatchDetails/process_form?patch_num=28730253)
+ [パッチ 29213893](https://updates.oracle.com/Orion/PatchDetails/process_form?patch_num=29213893)
+ [パッチ 33125873](https://updates.oracle.com/Orion/PatchDetails/process_form?patch_num=33125873)
+ [パッチ 35220732](https://updates.oracle.com/Orion/PatchDetails/process_form?patch_num=35220732)
+ [パッチ 35239280](https://updates.oracle.com/Orion/PatchDetails/process_form?patch_num=35239280)

### Amazon S3 バケットのセットアップ
<a name="custom-oracle-s3-setup"></a>

1. AWS アカウント で Amazon S3 バケットを作成するか、既存のバケットを選択します。

1. 以下の例のようなフォルダ構造をバケットに作成します。

   ```
   <bucket-name>/
   └── oracle_cev/
       ├── V982063-01.zip
       ├── p6880880_190000_Linux-x86-64.zip
       ├── p34765931_190000_Linux-x86-64.zip
       ├── p34786990_190000_Linux-x86-64.zip
       ├── p35099667_190000_Linux-x86-64.zip
       ├── p35099674_190000_Generic.zip
       ├── p28730253_190000_Linux-x86-64.zip
       ├── p29213893_1918000DBRU_Generic.zip
       ├── p35012866_1918000DBRU_Linux-x86-64.zip
       ├── p35042068_190000_Linux-x86-64.zip
       ├── p35050341_190000_Linux-x86-64.zip
       ├── p29213893_1919000DBRU_Generic.zip
       ├── p33125873_1919000DBRU_Linux-x86-64.zip
       ├── p35220732_190000_Linux-x86-64.zip
       └── p35239280_190000_Generic.zip
   ```

1. 以前にダウンロードしたすべての Oracle ファイルを適切なフォルダにアップロードします。

## AWS CloudFormation を使用して RDS Custom for Oracle をデプロイする
<a name="custom-oracle-deployment-steps"></a>

### ステップ 1: CloudFormation テンプレートを準備する
<a name="custom-oracle-step1-prereqs"></a>

RDS Custom for Oracle をデプロイする前に、必要な前提条件を作成する CloudFormation テンプレートをダウンロードして設定する必要があります。

**テンプレートをコピーして保存する**

1. [[単一および複数のアベイラビリティーゾーンを使用した RDS Custom for Oracle のデプロイ]](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-rds-dbinstance.html#aws-resource-rds-dbinstance--examples--Deploying_RDS_Custom_for_Oracle_with_single_and_multiple_Availability_Zones) に進む

1. テンプレートを任意の形式 (YAML または JSON) でコピーする

1. ファイルを YAML または JSON 形式で保存します。例: `rds-custom-oracle-prereqs.yaml`

**AWS コンソールからスタックを起動する**

1. AWS コンソールを開き、AWS CloudFormation に移動する

1. **[スタックの作成]**、**[新しいリソースの使用 (標準)]** の順に選択する

1. **[既存のテンプレートを選択する]** を選択する 

1. **[テンプレートファイルのアップロード]**、**[ファイルの選択]** の順に選択する

1. 以前にダウンロードしたテンプレートファイルを選択する

1. デフォルトのパラメータ値を保持する

1. **[次へ]** を選択してスタックを作成する

**AWS CLI を使用する方法**

コンソールを使用する代わりに、AWS CLI を使用してスタックを作成することもできます。

```
aws cloudformation create-stack \
  --stack-name rds-custom-oracle \
  --template-body file://rds-custom-oracle-prereqs.yaml \
  --capabilities CAPABILITY_NAMED_IAM
```

### ステップ 2: カスタムエンジンバージョン (CEV) と Amazon RDS インスタンスを作成する
<a name="custom-oracle-step2-cev-rds"></a>

**テンプレートをコピーして保存する**

1. [[単一および複数のアベイラビリティーゾーンを使用した RDS Custom for Oracle のデプロイ]](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-rds-dbinstance.html#aws-resource-rds-dbinstance--examples--Deploying_RDS_Custom_for_Oracle_with_single_and_multiple_Availability_Zones) に進む

1. テンプレートを任意の形式 (YAML または JSON) でコピーする

1. 必要に応じて、テンプレートで次のパラメータを更新する
   + `BucketName`
   + `CEVS3Prefix`
   + データベースマスターパスワード (\$1\$1\$1\$1\$1\$1\$1\$1\$1\$1\$1\$1\$1 を置き換える)

1. ファイルを YAML または JSON 形式で保存する

### ステップ 3: AWS コンソールを使用してデプロイする
<a name="custom-oracle-step3-console-deploy"></a>

1. AWS コンソールを開き、AWS CloudFormation に移動する

1. **[スタックの作成]**、**[新しいリソースの使用 (標準)]** の順に選択する

1. **[既存のテンプレートを選択する]** を選択する 

1. **[テンプレートファイルのアップロード]**、**[ファイルの選択]** の順に選択する

1. 以前にダウンロードしたテンプレートファイルを選択する

1. パラメータはデフォルト値のままにしておく

1. パラメータを次のように入力する

   ```
   BucketName: rds-custom-id
   CEVS3Prefix: oracle_cev
   CEVCreation: Yes
   ```

1. 設定を確認し、**[次へ]** を選択してスタックを作成する

**オプション: AWS CLI を使用してデプロイする**

```
aws cloudformation create-stack \
  --stack-name rds-custom-oracle \
  --template-body file://rds-custom-oracle.yaml \
  --parameters \
    ParameterKey=BucketName,ParameterValue=rds-custom-id \
    ParameterKey=CEVS3Prefix,ParameterValue=oracle_cev \
    ParameterKey=CEVCreation,ParameterValue=Yes \
  --capabilities CAPABILITY_NAMED_IAM
```

## 作成されたデプロイリソース
<a name="custom-oracle-deployment-resources"></a>

テンプレートによって以下のリソースが作成されます。
+ パブリックサブネットとプライベートサブネットを持つ Amazon VPC
+ セキュリティグループ
+ Amazon VPC エンドポイント
+ IAM ロールとポリシー
+ 暗号化用の AWS KMS キー
+ カスタムエンジンバージョン (CEV)
+ シングル AZ 設定とマルチ AZ 設定の両方の RDS Custom for Oracle インスタンス

## デプロイの進行状況をモニタリングする
<a name="custom-oracle-monitoring-deployment"></a>

CloudFormation スタックを作成したら、その進行状況をモニタリングしてデプロイが成功したことを確認します。デプロイプロセスには、カスタムエンジンバージョン (CEV) と RDS インスタンスの作成が含まれます。

デプロイの進行状況をモニタリングするには

1. CloudFormation コンソールを開きます。

1. スタック名を選択します。

1. **[イベント]** タブを選択して進行状況を表示し、エラーを特定します。

**注記**  
CEV の作成には通常 2～3 時間かかります。CEV の作成が正常に完了すると、Amazon RDS は自動的に Amazon RDS インスタンスの作成を開始します。

## デプロイ後
<a name="custom-oracle-post-deployment"></a>

スタック作成プロセスが完了したら、デプロイ後の検証と設定の以下のステップを実行します。

1. Amazon RDS コンソールページから、**[カスタムエンジンバージョン]** に移動して CEV の作成を確認します。

1. Amazon RDS インスタンスが作成され、使用可能であることを確認します。

1. Amazon RDS インスタンスへの接続をテストします。

1. 必要に応じてモニタリングとバックアップの方法を設定します。

## クリーンアップ
<a name="custom-oracle-cleanup"></a>

すべてのリソースを削除するには、以下の AWS CLI コマンドを実行します。

```
aws cloudformation delete-stack --stack-name rds-custom-oracle
```

## トラブルシューティング
<a name="custom-oracle-troubleshooting"></a>

デプロイ中に問題が発生した場合は、次の解決策を使用して一般的な問題を解決します。

CEV 作成の失敗  
+ 必要なすべてのパッチが Amazon S3 にアップロードされていることを確認します。
+ IAM 許可をチェックします。
+ パッチのバージョンが正しいことを確認します。必要なパッチのリストについては、「[前提条件](#custom-oracle-prerequisites)」を参照してください。

Amazon RDS インスタンスの作成が失敗する  
+ VPC/サブネット設定を確認する
+ セキュリティグループルールを確認する
+ CEV が使用可能であることを確認する