266 Views
September 30, 24
スライド概要
Aurora MySQLのストレージタイプを変更してみた エムオーテックス株式会社 © MOTEX Inc. 植松裕介
自己紹介 • 名前:植松 裕介(うえまつ ゆうすけ) • 所属:エムオーテックス株式会社 • 仕事:自社サービス(LANSCOPE EMクラウド版)の SREとして、セキュリティ・コスト最適化など色々対応 ↓弊社テックブログで色々書いてます https://tech.motex.co.jp/ テックブログ • 趣味:ツーリング、家でフィットネス、ゲーム、ギター練習する • 好きなAWSサービス:Amazon Athena AWS Cost and Usage Reports Amazon QuickSight © MOTEX Inc. 2 など
MOTEX Products・Service「LANSCOPE」 “LANSCOPE” を通して、お客様の “Secure Productivity”(安全と生産性向上の両立)を支援 統合エンドポイント管理 AI アンチウイルス 組織のIT資産管理・内部不正対策・ウイルス対 AI を活用したアンチウイルスで、既知のマル 策をオールインワンでカバーします。発売当初 ウェアはもちろん、未知・亜種のマルウェアか からご提供している「オンプレミス版」に加え、 らもデバイスを防御します。高性能な AI アン スマホ管理が可能な「クラウド版」も提供して チ ウ イ ルス 「 CylancePROTECT 」 や 「 Deep おり、国内2万社を超えるお客様にご利用いただ Instinct」を、MOTEX の安心サポートと共に いています。 提供するマネージドサービスです。 クラウドセキュリティ監査 リモートサポート・ヘルプデスク セキュリティ診断・ソリューション Microsoft 365 の監 遠隔 地にあ るサー サイ バーセ キュリ 査 ログ を 収 集し 、 バーや PC・スマホ ティのさまざまな領 利 用状 況 の 見え る への 「リモ ート操 域に対し、セキュリ 化 や、 情 報漏 洩 な 作」や「画面共有」 ティプロフェッショ ど のイ ン シ デン ト を可能とする組織向 ナルの知見を活かし につながる操作の けのリモートコント た「セキュリティ診 把握 を可 能と しま す 。また 、レビ ュー プラ ット ロ ー ルツ ー ル です 。 Windows ・ macOS ・ iOS ・ フォーム「ITreview」では、サービスデスク・イン 断」と「セキュリティ製品・ソリューション」で、 Android に対応しています。 巧妙化するサイバー攻撃などのリスクから組織を守 シデント管理の部門でLeaderを獲得するなど、お客 ります。 様からも高い評価をいただいています。 © MOTEX Inc. 3
設定変更しようと考えたきっかけ • Auroraのインスタンスの1つが、負荷増で夜間CPU使用率が90%以上になっていた • 処理遅延やお客様影響などは無いが、何かしら対策を打ちたい状況 © MOTEX Inc. 4
よくある対策 • スケールアップして、CPUを増やす • Auroraへの流量を調節して、負荷を下げる • クエリを見直す • DBの設定を変更する • Performance Insightを見たところ、バイナリログ(DBの変更履歴)の待機が多そう • コストをかけず、設定変更で対処できないかを検討した © MOTEX Inc. 5
DB設定変更の検討 • 対処方法を調べているうちに、「I/O最適化」というオプションを知る • 2023年にリリースされた機能 • インスタンス料金、ストレージ保存料金が割高になる代わりに、I/Oコストが0になる • DBの性能も向上する らしい © MOTEX Inc. 6
どれぐらい性能が向上するのか • インスタンスサイズが大きい場合、最大150%くらい向上 • https://pages.awscloud.com/rs/112-TZM-766/images/AWS39_Database_AWS_Summit_JP_2024.pdf AWS Summit 2024 Amazon Aurora の技術とイノベーションDeep dive(AWS-39)より引用 https://pages.awscloud.com/rs/112-TZM-766/images/AWS-39_Database_AWS_Summit_JP_2024.pdf © MOTEX Inc. 7
AWSコストがどのぐらい変わるか • インスタンス料金は1.3倍 • ストレージ保存料金は2.25倍 • ストレージI/O料金は0になる • I/Oが多いDBならばかなりお得 © MOTEX Inc. 8
設定変更方法 • コンソールの場合、「クラスターストレージ設定」から設定変更ができる • DB再起動は不要 • CloudFormationテンプレートの場合、DBクラスターのプロパティを変更する • スタンダード -> I/O最適化への変更は月に1回のみ © MOTEX Inc. 9
設定変更してみてどうだったか • 結論・・・CPU使用率は特に変わらなかった • AWSサポートに聞いたところ、DBの性能が向上する条件は公開されていない • 本番相当の流量で検証してみるのがベター • SQS -> Lambda -> RDSのような構成なら、SQSにメッセージ多数詰めることで再現可能 © MOTEX Inc. 10
おまけ:拡張バイナリログ • サポートに問い合わせる中で、「拡張バイナリログ」という機能があることを教えていただく • 2023年にリリースされた機能で、バイナリログのオーバーヘッドを減らすことができる • 捌けるトランザクション数も増える • DBクラスターのパラメータ変更とインスタンス再起動が必要 https://aws.amazon.com/jp/blogs/database/introducing-amazon-aurora-mysql-enhanced-binary-log-binlog/ © MOTEX Inc. 11
おまけ:拡張バイナリログを試してみた • 有効にした場合、バイナリログの待機時間は確かに減る • が、捌けるクエリ量が多くなった結果、CPU負荷が逆に上がってしまう • Lambda同時実行数を見直すことで回避できるが、処理遅延につながる • 拡張バイナリログは有効にせず、スケールアップしてCPU性能を上げる予定 拡張バイナリログ無効 © MOTEX Inc. 拡張バイナリログ有効 12
まとめ • I/Oが多いDBの場合、I/O最適化にすることでコスト最適化になる • 性能も向上するとはあるが、条件は公開されてないため検証した方が良い • 拡張バイナリログの有効化でバイナリログ書き込みのレイテンシーは減るが、 流量調節もセットでやった方が良さそう • AuroraはフェイルオーバーやBlue/Greenデプロイが充実しているので、 恐れずパラメータ変更を試そう © MOTEX Inc. 13