💽

【AWS入門⑥】AWSのDB~RDSの特徴~

2021/03/17に公開

はじめに

Webサービスに関するインフラの知識不足の解消&クラウドサービスの世界シェア1位であるAWSの学習のため、YouTubeでAWSの学習動画やエンジニアに関する情報を提供している「くろかわこうへい」さんが開催する AWS CloudTech に参加しました。
学習を進める上で習得した技術情報を記載します。

気になる方は以下を参照してください。

注意点

基本的にAWSに関する内容を記載していきます。
ネットワークの基礎的な用語や少し専門的な用語は説明することもあるかもしれませんが、自分が必要と思った際にのみ記載します。
※気になったら調べてみましょう!

RDS(Amazon Relational Database Service)

名前の通りマネージド型のデータベースサービスです。
EC2を使って仮想サーバーを立てインスタンス内にDBをインストールして使用・運用することは可能です。
しかしパフォーマンス面や運用面など考慮するとAWS上のDBであるRDSを使用することをお勧めします。

過去に書いた記事でクラウドサービスモデルに関して記載しています。

AWS入門①】AWSとは~クラウドサービスについて~

RDSはクラウドサービスモデルでいうところのSaaSになります。
図を見てもわかるように全ての機能をベンダー側が管理するサービスになります。

自前のサーバーや仮想サーバー上にDB環境を構築する場合はIaaSやPaaSの環境に作成する場合が多いと思います。

その際に必要となる作業も多いのは明白です。

  • セキュリティ
  • バックアップ
  • スケーリング
  • etc.

RDSではサービス内の機能として以下を備えています。
イメージとしては以下の機能を備えたEC2と考えると良いかもしれません。

  1. 選べるエンジン
  2. エンドポイント通信
  3. リードレプリカ
  4. 自動スナップショット
  5. 自動パッチ
  6. パラメーター設定

それぞれを解説していきます。

1.選べるエンジン

RDSにて利用可能なRDBMSは以下の人気なDBになります。

  • Amazon Aurora
  • Postgre SQL
  • MySQL
  • MariaDB
  • Oracle
  • SQL Server

選んだDBはバージョンやオプションも選択できます。

2.エンドポイント通信

RDSの構成としては基本的に「正-副(Main-Standby)」になっています。
メインで何か障害が起こっても対応できるようスタンバイが待機している構成です。

RDSとの接続はDNS(名前解決)で通信する仕組みになっています。
IPが違うMain-StandbyのRDSの環境で、Mainに異常が発生して接続できなくなった場合でも自動的にStandbyに接続してくれます。

3.リードレプリカ

Main-Standby構成のRDSはMainのデータをStandbyにレプリケーションされます。レプリケーションとは「複製する(レプリカを作る)」という処理で、リアルタイムでデータをコピーする技術のことです。

そしてリードレプリカ(Read Replica)とは名前の通り、複製された「Standby」を読み込み専用として利用することを指します。

リアルタイムでレプリケーションされますが、非同期のため常にMainとStandbyのデータと完全一致しているわけではありません。しかし、Mainへの参照と更新を「Mainへ更新」「Standbyへ参照」と分けることで負荷分散されることがメリットになっています。

4.自動スナップショット

RDSが持つスナップショットの機能として以下があります。

  • 定期スナップショット
  • 手動スナップショット
  • スナップショットから新たなRDSを構築可能
  • スナップショットのコピー可能
  • スナップショットのアカウント間コピー可能

スナップショットを取得しておくことで、何か障害が起こった時の対処が可能となります。
これらの設定がマネジメントコンソールから簡単に行うことができます。

5.自動パッチ

RDSのメンテナンスウィンドウからパッチの自動適用を可能にする設定ができます。
パッチの自動適用とは例えばMYSQLのマイナーバージョンのアップ作業などになります。

適用の時間帯を指定することができるため、DBを使用している時間を避けることも可能です。

6.パラメーター設定

RDSに対して直接SSH接続してログインすることはできません。
DBへは何かしらのツールを使用して接続する必要があります。

DBの設定値を変更できるようにする機能がRDSには用意されており、パラメーターグループといいます。

設定変更のタイミングは指定可能になります。

まとめ

今回はDBのサービスであるRDSに関しての記事になります。
システムの要件や規模によってはEC2上にDBをインストールした方が良い場合もあるでしょう。しかし上で記載したように運用面や安全性がしっかり考慮されたAWSのサービスがあることも覚えておくと良いと思います。

もちろんRDSを使うメリットが多い分、コストが掛かってしまいますので注意しましょう。

前回の記事

【AWS入門⑤】IAMを使って権限管理&セキュリティ強化

次回の記事

⇒作成中

Discussion