Slide 1

Slide 1 text

CONFIDENTIAL 1 © 2024 Japan Digital Design, Inc. re:Invent期間に発表された CloudWatch Logsのアップデートを 金融エンジニアの目線で試してみる Japan Digital Design Technology & Development Div Naoki Yoshitake 2024.01.10

Slide 2

Slide 2 text

2 CONFIDENTIAL © 2024 Japan Digital Design, Inc. 吉竹 直樹 Technical Project Manager Japan Digital Design • 2022 APN AWS Top Engineer • 『AWS認定資格試験テキスト AWS認定SysOpsアドミニス トレーター – アソシエイト』の執筆に参加 プロフィール この写真は犬カフェのもので飼い犬ではありません。かわいいけど 資格等 • 2023/11からJDDでTechnical Project Manager として活動 • 前職のSIerでは、アプリケーションエンジニアとして活動 • 業界:銀行/資産運用/クレジット/生保…等 • システム:オンプレミスの業務系〜AWSのコンテナアプリ…等

Slide 3

Slide 3 text

3 CONFIDENTIAL © 2024 Japan Digital Design, Inc. Japan Digital Design株式会社 2017年10月2日 代表取締役 CEO 浜根 吉男 85名(2023年9月末時点) 株式会社三菱UFJフィナンシャル・グループ 株式会社三菱総合研究所 三菱UFJリサーチ&コンサルティング株式会社 社名 設立 代表者 従業員数 株主構成 会社概要

Slide 4

Slide 4 text

4 CONFIDENTIAL © 2024 Japan Digital Design, Inc. re:Invent この時のモチベーションでAWSを深く学ぶようになった。 ⇛Top Engineer や執筆の活動へ繋がることに 2019年のre:Inventは現地参加 re:Invent 皆さん現地参加しましたか? 私はオンラインです

Slide 5

Slide 5 text

5 CONFIDENTIAL © 2024 Japan Digital Design, Inc. CloudWatch Logs 注目したアップデート AWSの重要事項である2つの要素に関するアップデートがあった • コスト • re:Invent 2023での Amazon CTO Werner 氏による基調講演 『倹約なアーキテクト(THE FRUGAL ARCHITECT) 』 • セキュリティ • 『AWSクラウドセキュリティは最優先事項です (“Cloud security at AWS is the highest priority.”)』 注目した理由 出典:https://docs.aws.amazon.com/ja_jp/whitepapers/latest/aws-overview/security-and-compliance.html

Slide 6

Slide 6 text

6 CONFIDENTIAL © 2024 Japan Digital Design, Inc. 01 低頻度アクセス ログクラス

Slide 7

Slide 7 text

7 CONFIDENTIAL © 2024 Japan Digital Design, Inc. 低頻度アクセスログクラス CloudWatch Logs のコスト 気になりませんか? • Logs はログ取込(収集)に それなりのコストがかかる。 • もしLogsが高いと感じている場 合、まず取込量を見直すべき。 Logs 以下のようなケースでコストが大変なことになります… • パフォーマンステストで出力された大量のログを全てLogsに取り込んでいる • 不要なデバッグログが大量に出力されている 取込で特にコストを気にするケース EC2 agent 取込のコストに注意 保存にもコストがかかる

Slide 8

Slide 8 text

8 CONFIDENTIAL © 2024 Japan Digital Design, Inc. 低頻度アクセスログクラス re:Invent期間に 低頻度アクセス ログクラスが発表 出典:[AWS Black Belt Online Seminar] AWS re:Invent 2023速報 https://aws.amazon.com/jp/blogs/news/2023-12-reinvent2023-aws-blackbelt/

Slide 9

Slide 9 text

9 CONFIDENTIAL © 2024 Japan Digital Design, Inc. 低頻度アクセスログクラス 低頻度アクセスログクラスを 試してみる 1/2 1. ログクラスに”Infrequent Access”を指定してロググルー プを作成 2. 作成したロググループを出力先 として設定 (画像はECS タスク定義の例)

Slide 10

Slide 10 text

10 CONFIDENTIAL © 2024 Japan Digital Design, Inc. 低頻度アクセスログクラス 低頻度アクセスログクラスを 試してみる 2/2 3. ログストリームをクリックする と、インサイトの画面に飛ぶ。 ログを参照するには、 CloudWatch Logs Insights を 利用する必要あり

Slide 11

Slide 11 text

11 CONFIDENTIAL © 2024 Japan Digital Design, Inc. コスト • 標準のログクラスに比べて 「収集」のコストが半額に • Logs Insights を使うことにな るため、参照にもコストがか かる。以下のような使い方は コスト超過のおそれあり • 頻繁なログへのアクセス • 大量のログデータをスキャン 出典:https://aws.amazon.com/jp/cloudwatch/pricing/ スキャンしたデータ 1 GB あたり 0.0076 USD 低頻度アクセスログクラス CloudWatch Logs のコスト(東京リージョン)

Slide 12

Slide 12 text

12 CONFIDENTIAL © 2024 Japan Digital Design, Inc. 低頻度アクセスログクラス 制約事項 • サブスクリプションフィル ターや, Live Tail などの機能が 利用不可 出典:https://aws.amazon.com/jp/blogs/news/new-amazon-cloudwatch-log-class-for-infrequent-access-logs-at-a-reduced-price/ 低頻度アクセスログクラスと標準ログクラスの比較

Slide 13

Slide 13 text

13 CONFIDENTIAL © 2024 Japan Digital Design, Inc. 低頻度アクセスログクラス 使い所を考えてみる • AWSブログでは「フォレンジッ ク分析」「コンプライアンス」 が例として記載されている • 金融システムでも、ログの長期 保存や監査が要件になることが ある 上記以外での使い所 • 対象ログの参照頻度が低く、コスト重視で割り切れるケース • 障害調査が少ない、障害が発生しても緊急度が低い • 但し、対象のログを障害のアラート等には使っていない (サブスクリプションフィルタが使えないため) • 開発環境で参照頻度の低いログの出力先 分析・長期保存での使い所 • 対象のログを Insights で分析するケース • Insights の機能で要件を満たす分析が可能 • 低頻度アクセスはエクスポートができないため、他サービスでログを使うことが難しい

Slide 14

Slide 14 text

14 CONFIDENTIAL © 2024 Japan Digital Design, Inc. 低頻度アクセスログクラス 懸念事項 • 制約事項が多く、本番システム で利用するにはハードルが高く 感じる 長期保存や分析用途なら標準クラス+S3のほうが無難に思える Logs S3 • 従来のアーキテクチャ例 • ログをCloudWatch LogsとS3にそれぞれ保存 • 2週間以内はLogsで参照、2週間経過したらLogsから削除する。 以降はS3からログを取得 • Logs の保存コストを節約可能 • エクスポート機能等を使った分析も可能 後からアーキテクチャの変更をしづらい点が懸念 • エクスポートやサブスクリプションフィルタ等の便利機能が使えない • 一度作ったログクラスを変更できない ⇛ 後から「やっぱり標準クラスが良い」となると困る

Slide 15

Slide 15 text

15 CONFIDENTIAL © 2024 Japan Digital Design, Inc. 低頻度アクセスログクラス 公式ブログを読み返すと… • 「ログタイプごとに異なるソリューション を選択したりして、さまざまなロギングソ リューションを管理するのが複雑になり、 非効率になるお客様もいます。 〜(略)〜こ れらの回避策はアプリケーションのオブ ザーバビリティに影響を与える可能性があ ります。なぜなら、顧客はログを確認する ために複数のソリューション間を移動する 必要があるからです。 」 • 「すべてのログを 1 か所にまとめ〜(略)〜 CloudWatch を使用して包括的なオブザー バビリティソリューションを構築」 ログを1つのサービスで見られる点 に重点を置いている 低コスト化よりも Observability 向上のアップデートと捉えられる • 複数のログ管理サービスを扱うことの煩雑さの解消や、それの伴うコストの削減 • 近年の CloudWatch は Observability に関する機能の進化が著しいので、 将来的には「ログはLogs にまとめれば十分」と言えるようになるかもしれない 出典:AWS Summit Online 2022「AWS の Observability(可観測性)の全体像〜 Amazon CloudWatch とオープンソースの活⽤〜」

Slide 16

Slide 16 text

16 CONFIDENTIAL © 2024 Japan Digital Design, Inc. 02 カスタムデータ識別子のデータ保護

Slide 17

Slide 17 text

17 CONFIDENTIAL © 2024 Japan Digital Design, Inc. カスタムデータ識別子のデータ保護 ログのセキュリティ 気にしてますか? • そもそも、ログに機密情報を 出力すべきではない • OWASP Logging Cheat Sheet • 但し、従来はOKだった情報も 法改正等により個人情報として 扱われる可能性も • システムのユーザーIDも「照合容 易性(*1)」を満たすと社内では個 人情報の扱いになるケースがある クラウドではログのセキュリティへの意識も求められるように • ログのセキュリティは後回しにされがち(かもしれない) • ログはアプリケーションの全機能に関わる。修正コストが膨大 • ユーザーへの直接的な価値に繋がらない(システム上は非常に重要だが) • ログの設計指針が無い時代にシステムが作られた • OWASPのログのチートシートも6年前(?)が初版 • そもそもクラウドになることを想定していなかった • クラウドでは本番環境とログの参照でアクセス権限が異なるケースがある • ログを外部のSaaSへ送信して利用 • コンソールでLogsを参照 ※各社の設計次第です ※オンプレでも障害アラートのメールにログの情報を出力している みたいなケースはあったと思われます Logs EC2 SSHは本番アクセス統制 ログやメトリクスの 参照は別権限 (*1) 社内において、IDだけで特定の個人を 「いつでも簡単に照合できるようなケース」

Slide 18

Slide 18 text

18 CONFIDENTIAL © 2024 Japan Digital Design, Inc. カスタムデータ識別子のデータ保護 CloudWatch Logs データ保護で カスタムデータ識別 子のサポートを開始 出典:https://aws.amazon.com/jp/about-aws/whats-new/2023/12/amazon-cloudwatch-logs-data-protection-data-identifiers/ 微妙にre:Invent期間からズレてますがご了承ください 2022年のre:Inventで発表された機密 データ保護の機能が強化

Slide 19

Slide 19 text

19 CONFIDENTIAL © 2024 Japan Digital Design, Inc. カスタムデータ識別子のデータ保護 データ保護を試してみる 1/2 1. ロググループの「データ保護」 タブからポリシーを作成 2. “Custom Data Identifier Configuration”を追加する こちらが今回のアップデート マネージドは従来から存在

Slide 20

Slide 20 text

20 CONFIDENTIAL © 2024 Japan Digital Design, Inc. カスタムデータ識別子のデータ保護 低頻度アクセスログクラスを 試してみる 2/2 3. 正規表現でマスクしたいデータ を表現する 4. 設定後に出力されるログでマス クされるようになる • Logs上の見え方が変わるだけで ログデータが失われているわけで はない userIDがUUIDだった時の例 IDがマスクされている emailがマスクされているのは マネージドも設定したため

Slide 21

Slide 21 text

21 CONFIDENTIAL © 2024 Japan Digital Design, Inc. コスト • 検出のためにスキャンした データ量に対して課金 • 取り込んだ全量をスキャン対象 とした場合16%弱のコスト増加 • 0.76 + 0.12 = 0.88 USD • 結構お高い… • 対象とするロググループは 選定した方が良い • ロググループを分けられるような アプリケーションの作りにしてお くことが重要 出典:https://aws.amazon.com/jp/cloudwatch/pricing/ スキャンされたデータ 1 GB あたり 0.12 USD カスタムデータ識別子のデータ保護 CloudWatch Logs のコスト(東京リージョン)

Slide 22

Slide 22 text

22 CONFIDENTIAL © 2024 Japan Digital Design, Inc. カスタムデータ識別子のデータ保護 試してみて気になった点 1/2 • 主に正規表現の使い方 正規表現次第では、JSON出力が崩れる場合がある • アプリケーション側でログをJSON出力すると、Insights でフィールドの選択や 集計など便利に使うことができる • 正規表現の設定次第では、テキストに戻って出力されてしまう

Slide 23

Slide 23 text

23 CONFIDENTIAL © 2024 Japan Digital Design, Inc. カスタムデータ識別子のデータ保護 試してみて気になった点 2/2 • 主に正規表現の使い方 同一体系のIDが一緒にマスクされる • ID体系に対する正規表現なので、別フィールドがマスクされる可能性がある • 「“id”フィールドの後のUUID(正規表現)」のような指定ができるとありがたい ヘッダーに設定したリクエスト 識別用のIDもマスクされた

Slide 24

Slide 24 text

24 CONFIDENTIAL © 2024 Japan Digital Design, Inc. 03 終わりに

Slide 25

Slide 25 text

25 CONFIDENTIAL © 2024 Japan Digital Design, Inc. • 低頻度アクセスログクラス • Logsでコスト要因になりがちな「取込」のコストを半額に • 機能制約が多く、上手く使うには検討が要りそう • CloudWatch の Observability 機能のさらなる進化に期待 • カスタムデータ識別子へのデータ保護 • ログのセキュリティを見直す良い機会に • 設定も簡単で便利だが、コストには注意 • 生成系AIも良いけど、実運用に役立つアップデートは嬉しい サマリ 終わりに

Slide 26

Slide 26 text

26 CONFIDENTIAL © 2024 Japan Digital Design, Inc. • ASCII.jp:倹約的なアーキテクトとは? AmazonボーガスCTOが今一番気になるコストとAIを語る • https://ascii.jp/elem/000/004/173/4173943/ • Amazon S3とCloudWatch Logsのログ保存料金とサイズを見てみた | DevelopersIO • https://dev.classmethod.jp/articles/compare-archive-cost-cloudwatchlogs-s3/ • モニタリングとオブザーバビリティ|AWSを題材にしたケーススタディ|ブログ|NRIセキュア • https://www.nri-secure.co.jp/blog/aws-monitoring-observability • O'Reilly Japan Blog - スタートアップ企業向けインフラ運用入門(2):ログ・メトリクスの収集 • https://www.oreilly.co.jp/blog/2012/08/infrastructure-management-for-startups-log-metrics.html • OWASP / Logging Cheat Sheet • https://github.com/OWASP/CheatSheetSeries/blob/master/cheatsheets/Logging_Cheat_Sheet.md • 個人情報保護法の知識<第5版> • https://bookplus.nikkei.com/atcl/catalog/2021/9784532114251/ • Amazon CloudWatch Logs内の機密データをマスキングする方法 (CloudWatch Logs の機密データ保護機能) - サーバーワークスエンジニアブログ • https://blog.serverworks.co.jp/cloud-watch-logs-protect-sensitive-data その他参考文献 終わりに

Slide 27

Slide 27 text

Thank you. 27 CONFIDENTIAL © 2024 Japan Digital Design, Inc.