AWS RDSとは

  •  
 
MAXIMUM が に投稿

タグ

0. 前提

前回、TerraformでEC2インスタンスを作成し、Java 17とPostgreSQL 15を自動インストールしました。

今回はPostgreSQL 15をEC2インスタンスからRDSに分離するため、RDSの概要について調べてみました。

次回以降、Terraformを使用してRDSの構築を自動化する予定です。

1. RDSとは

RDSとは、データベースの構築や管理をAWSに任せられるサービスです。

PostgreSQLやMySQLなどに対応しており、導入やバックアップ(データの保存)、更新などの作業をAWS側で行えます。

2. AWSリソース構成

変更前

EC2インスタンス
 ├─ Java 17
 └─ PostgreSQL 15

変更後

EC2インスタンス(Java 17)
       │
       │ 5432番ポート
       ↓
RDS(PostgreSQL 15)

RDSに分離することで、アプリケーションとデータベースを別々に管理できます。

3. RDSのメリット・デメリット

メリット 内容
管理の手間を減らせる バックアップや更新などをAWS側で管理
障害に備えられる Multi-AZ構成を利用し、障害時に自動で切り替えられる
処理の負担を分けられる EC2インスタンスとDBでCPUやメモリを別々に使用
デメリット 内容
料金 RDSの利用料金が別途発生
接続設定 EC2インスタンスからRDSへの接続許可が必要
操作の制限 DBが動作するOSを直接操作できない

4. Multi-AZとは

Multi-AZとは、複数のアベイラビリティゾーン(AZ)を利用して、障害に備える仕組みです。

AZとは、AWSが同じ地域内に設けている、1つ以上のデータセンターで構成された独立した設備のことです。

RDSでは、別のAZに予備のデータベースを配置し、障害発生時に自動で切り替えることができます。

東京リージョン
 ├─ AZ①
 │   └─ RDS(通常使用)
 │        │
 │        │ データを同期
 │        ↓
 └─ AZ②
     └─ RDS(予備)

これにより、一方のAZで障害が発生しても、もう一方のAZでデータベースの運用を継続できます。

5. 感想

EC2インスタンスにPostgreSQLを直接導入する方法と比べて、RDSは管理の手間を減らせる点や、障害に備えやすい点が便利だと感じました。

一方で、追加料金が発生するため、用途に応じて使い分ける必要があると思いました。

コメントを追加

プレーンテキスト

  • HTMLタグは利用できません。
  • 行と段落は自動的に折り返されます。
  • ウェブページのアドレスとメールアドレスは自動的にリンクに変換されます。
CAPTCHA
この質問はあなたが人間の訪問者であるかどうかをテストし、自動化されたスパム送信を防ぐためのものです。