Amazon RDS for PostgreSQL の空き容量を CloudWatch メトリクスで確認してみた

2022.03.08

こんにちは!DA(データアナリティクス)事業本部 サービスソリューション部の大高です。

CloudWatchメトリクスは様々なサービスのメトリクスをグラフ表示するのに便利なサービスですが、私は実はあまり触ったことがなかったので実際に触りつつ試してみたいと思います。

やりたいこと

今回は「Amazon RDS for PostgreSQL の空き容量を確認する」ということをやってみたいと思います。

要件としては以下のような感じです。

  • とある Amazon RDS for PostgreSQL の1インスタンスを対象とする
  • 1日毎の空き容量の推移をグラフで確認したい
  • 確認する期間は3ヶ月ぐらいあれば良い

参考になりそうな情報

「CloudWatchアラーム」を作成したいケースではこちらの情報が参考になりそうです。

今回目的としているグラフは、基本的にはこちらに記載されている情報を参考にすれば作成できそうでしたので、こちらを参考にすすめていきます。

グラフを作成してみた

では、早速グラフを作成してみます。

RDSの選択

まずは、CloudWatchコンソールを開いて左側メニューの「メトリクス > すべてのメトリクス」を開きます。

開いたら「参照」タブの「RDS」を選択します。

メトリクス対象の選択

次に「データベース別メトリクス」を選択します。

メトリクス名の選択

最後に「DBInstanceIdentifier」が対象のデータベースインスタンスとなっているメトリクスのうち、「Metrics name」がFreeStorageSpaceのメトリクスにチェックを入れます。

チェックを入れた時点でデフォルトのグラフが表示されます。

なお、このメトリクスはその名のとおり「空きストレージ容量」なので、ざっくりと「多ければOKで、少ないと困る」という感じであることに注意します。

グラフの粒度と期間の変更

まずは、グラフの粒度と期間を変更していきます。今回は以下の2つの要件がありました。

  • 1日毎の空き容量の推移をグラフで確認したい
  • 確認する期間は3ヶ月ぐらいあれば良い

1日毎の空き容量の推移をグラフで確認したいので、まずは「グラフ化したメトリクス」タブを開いて、「期間」を「1 day」に変更します。

「統計」は「平均」にするか「最小」にするかちょっと迷いますが、今回は「平均」とします。

次に、グラフの期間がデフォルトだと「3h(3時間)」なので3ヶ月に修正します。

画面上部の期間設定の箇所で「Custom」をクリックするとポップアップダイアログが表示されるので、「Months」の「3」を選択すれば直近3ヶ月の期間に設定できます。

なお、このダイアログの上部は「Relative」が選択されているので相対的な期間となりますが、隣の「Absolute」タブを選択すれば絶対的な期間を指定することも可能です。

グラフの微調整とグラフ名の変更

概ねこれで目的のグラフができたので、あとは少し見た目を微調整します。

まずは、凡例のラベルが英語でちょっと分かりにくいので「グラフ化したメトリクス」タブの「ラベル」からFreeStorageSpace空き容量(Bytes)に変更します。

また、グラフの色もちょっと淡い色に変更してみました。

最後に、グラフの名前も変更してみます。

ダッシュボードを作成して追加する

グラフが作成できたので、作成したグラフはダッシュボードに追加しておきます。

右上の「アクション」から「ダッシュボードに追加」を選択します。

今回は「ダッシュボード」も合わせて一緒に作成したいので、「ダッシュボードの選択」の箇所は「新規作成」をクリックします。なお、既存のダッシュボードがある場合には、そちらを選択して追加することもできます。

任意のダッシュボード名を入力して「作成」ボタンをクリックします。

すると、作成したダッシュボードが選択された状態になるので、このまま「ダッシュボードに追加」をクリックします。

ダッシュボードが作成されて、さらにグラフも追加されました。

一方で、ダッシュボードの期間が「3時間」になっているので、もう一度「3ヶ月」に直して「ダッシュボードの保存」で保存しておきます。(後述しますが、この「期間」の変更は不要でした)

これで、またダッシュボードを開けば先程のグラフも参照できます。

ちょっと困ったこと

一旦はこれで作成できたのですが、ちょっと困ったことがありました。

「粒度」と「期間」が戻ってるのでは…?

AWSの管理コンソール画面で別のサービスなどを参照した後に、再度ダッシュボードを開いた画面がこちらです。

先程ダッシュボードの「期間」を直近3ヶ月になるように設定しましたが、こちらの設定はデフォルトに戻っているようです。この設定は現状では一度ダッシュボードを閉じてしまうと戻ってしまうようです。(「アクション」>「設定」>「デフォルトの時間範囲の設定」で設定できそうな感じでしたが、うまくいかないようでした)

この状態でグラフをクリックして開くと以下のようになります。こちらは始めに設定したグラフの「粒度」と「期間」が残っていますね。

この状態から右上の期間設定の「Custom(3M)」を一度開いて「Apply」をクリックします。

すると、欲しかったグラフが表示されました。一旦はこの方法で代用できそうです。

まとめ

以上、Amazon RDS for PostgreSQL の空き容量を CloudWatch メトリクスで確認してみました。

普段、なんとなく雰囲気で触っていたCloudWatch メトリクスですが、実際に目的をもって触ってみると、知らない挙動があったり色々発見がありました。手を動かすのは大事ですね。

どなたかのお役に立てば幸いです。それでは!