Slide 1

Slide 1 text

Aurora Blue/Green Deployments やってみた 2024年10月28日 株式会社セゾンテクノロジー クラウドLT大会 vol.11 石丸 司 1

Slide 2

Slide 2 text

目次 1.自己紹介 2.課題設定 3.解決方法 4.やってみた 5.良いところ 6.悪いところ(改善点) 7.おわりに 2

Slide 3

Slide 3 text

1. 自己紹介 ■氏名:石丸司(いしまるつかさ) ■所属:株式会社セゾンテクノロジー ■経歴 2017/4/1 : 新卒入社 2017/7/1~2022/3/31 : 基幹システムのアプリ開発・維持保守 2022/4/1~ : AWSインフラの構築・維持保守 ■最近の活動 JAPAN AWS Top Engineers選出を目指し、 資格取得、Qiita投稿・LT登壇などを実施中 @tsukasa_aws 3 @Tsukasa_Ishimaru

Slide 4

Slide 4 text

2. 課題設定 • 本番環境でのAuroraマイナー/メジャーアップグレード作業で、 夜勤するのをやめたい 4 作業自体はスナップショット取得含めて、 1時間程度で終わることが多いが、 アプリの稼働確認のために待機している

Slide 5

Slide 5 text

3. 解決方法 • アップグレード前後(※)のAuroraを並行稼働させることが可能 5 【特徴】Aurora Blue/Green Deployments アップグレード後のAuroraを使って、 事前(日中)にアプリの稼働確認が可能 (※)Blue:アップグレード前インスタンス Green:アップグレード後インスタンス • アップグレード後のインスタンスを使用するように 素早く(1分未満)/簡単に切替が可能 • 並行稼働中も自動でGreenへデータ同期される

Slide 6

Slide 6 text

3. 解決方法 6 【イメージ】Aurora Blue/Green Deployments Amazon Aurora アップグレード前(Blue) Amazon Elastic Compute Cloud (Amazon EC2) Amazon Aurora アップグレード前(Blue) Amazon Elastic Compute Cloud (Amazon EC2) Amazon Aurora アップグレード後(Green) Amazon Aurora アップグレード前(Blue) Amazon Elastic Compute Cloud (Amazon EC2) Amazon Aurora アップグレード後(Green) データ同期 BlueとGreenで自動データ同期

Slide 7

Slide 7 text

3. 解決方法(続き) 7 【制約】Aurora Blue/Green Deployments • Auroraの管理ユーザーパスワードをSecretsManagerで管理できない • AuroraをマルチAZで構築している場合、サブネットグループに3AZ分の指定が必要 • Blue/Green Deploymentsのために、パラメータグループ設定が必要 セキュリティ要件としてSecretsManager管理があると採用できない 既存Auroraへの導入のハードルが高い

Slide 8

Slide 8 text

4. やってみた ①DBクラスターパラメータグループ変更 ②ブルー/グリーンデプロイの作成 ③切替 ④古いブルー削除 8 作業の流れ(メジャーアップグレード)

Slide 9

Slide 9 text

4. やってみた(続き) ① DBクラスターパラメータグループ変更 9 • メジャーバージョンアップ先のDBクラスターパラメータグループを変更します。 • 現状使用しているDBクラスターパラメータグループも同様に変更しておきます。

Slide 10

Slide 10 text

4. やってみた(続き) ②ブルー/グリーンデプロイの作成 10 マルチAZのため、サブネットグループに 1a/1c/1dのサブネットを指定済

Slide 11

Slide 11 text

4. やってみた(続き) ②ブルー/グリーンデプロイの作成(続き) 11 ブルー/グリーンデプロイで使用するリソース名を指定 メジャーバージョンアップ先を指定 メジャーバージョンアップ先のパラメータグループを指定

Slide 12

Slide 12 text

4. やってみた(続き) ②ブルー/グリーンデプロイの作成(続き) 12

Slide 13

Slide 13 text

4. やってみた(続き) ③切替 13

Slide 14

Slide 14 text

4. やってみた(続き) ③切替(続き) 14

Slide 15

Slide 15 text

4. やってみた(続き) ③切替(続き) 15

Slide 16

Slide 16 text

4. やってみた(続き) ③切替(続き) 16

Slide 17

Slide 17 text

4. やってみた(続き) ③切替(続き) 17

Slide 18

Slide 18 text

4. やってみた(続き) ④古いブルー削除 18

Slide 19

Slide 19 text

4. やってみた(続き) ④古いブルー削除(続き) 19

Slide 20

Slide 20 text

5. 良いところ • 事前に稼働確認ができる 夜勤から解放される & DB起因での切り戻しのリスクが低減できる • 簡単 & 爆速切替 数クリックで簡単に切り替えが可能 コンソールのステータス表示では2分30秒ほどで利用可能に 20

Slide 21

Slide 21 text

6. 悪いところ 21 • 管理ユーザーのSecretsManager管理ができない 対応を渇望しています ・既存Auroraへの採用ハードルが高い マルチAZの場合でも、2AZ指定でOKになるとありがたい DBパラメータグループ変更は仕方ない

Slide 22

Slide 22 text

7. おわりに • Aurora Blue/Green Deploymentsを利用して Auroraメンテナンス作業での夜勤から解放されましょう 22

Slide 23

Slide 23 text

ご清聴ありがとうございました 23