Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
エキサイトブログにおけるAzure→AWSへの移行とIaCの取り組み
Search
Kazuki Yamagata
September 01, 2025
Technology
25
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
エキサイトブログにおけるAzure→AWSへの移行とIaCの取り組み
Kazuki Yamagata
September 01, 2025
More Decks by Kazuki Yamagata
See All by Kazuki Yamagata
エキサイトブログの トップページを 段階的にリプレイスする
zsp2088dev
0
2k
Other Decks in Technology
See All in Technology
USB PDを使ってスマホを労わりたい
raspython3
0
180
ウォンテッドリーの最近のプロダクトと技術の紹介
stomk
0
130
古い指輪から広がった JAVA コミュニティ とのつながり
yamad
0
130
PHPカンファレンス関西の招待状 / Invitation to PHP Conference Kansai
ykanoh
0
210
ストレスなくAIと付き合いたい!こんなときどうしてる?
namiki64
4
610
トークン化預金DCJPYの取り組みと活用ユースケース
finengine
0
160
LambdaWebFunctionsを試してみた / exploring-lambda-web-functions
koukihosaka
1
360
QA4AI 2026-Oct 生成AI時代の品質保証
tokuty
1
890
Claude の新機能を、 出た日に触って社内に届けるまで
rfdnxbro
1
190
会社説明資料
persolserverworks
0
9.8k
Local CI × GitHub Actions
gogutan
3
230
Classmethod Company Deck
satoshi7
1
730
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
100
6.3k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
340
Why Our Code Smells
bkeepers
PRO
340
58k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
brightonSEO & MeasureFest 2025 - Winning Strategies for Black Friday CRO & PPC - Christian Goodrich
cargoodrich
3
870
Scaling GitHub
holman
464
140k
How to train your dragon (web standard)
notwaldorf
96
6.9k
A better future with KSS
kneath
240
18k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.7k
Chasing Engaging Ingredients in Design
codingconduct
0
360
Fireside Chat
paigeccino
43
4.1k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.9k
Transcript
エキサイトブログにおける Azure→AWSへの移行と IaCの取り組み KAZUKI YAMAGATA / AWS JumpStart Next #1
自己紹介 エキサイト / メディア・プラットフォーム事業部 / Webエンジニア 2021年に新卒でエキサイト株式会社に入社 エキサイトブログにて主にバックエンドを担当 入社直後にAWS JumpStartに参加し、
別会社の大学院の同期と同じチームに。 山縣 寿樹 Kazuki Yamagata
Azure→AWSの移行事例 クラウド移行前の課題と移行手順について話します。 AWS Copilot CLIの活用 AWS Copilot CLIを活用したコンテナアプリケーション周辺のIaC化につ いて話します。 AIコーディングエージェントの活用
エキサイトブログの開発におけるAIコーディングエージェントの活用内容 を簡単に話します。 発表概要
エキサイトブログ https://www.exblog.jp/campaign/exblog20th/
移行経緯 AWS移行を決定した経緯 データベース フリーライセ ンスのDBを 利用したい クラウド 社内共通の クラウドを 利用したい
アプリケーション VMをやめて コンテナ化し たい
SQLServerでのみ利用可能な関数を調査 TOP、ISNULL、CONVERT... 置き換えできるものは、SQLクエリーを変更 置き換えできないものは、アプリケーション側で対処 文字列加工や細かい処理はアプリケーション側で操作する 接続先のDBに対応したクエリーを2つ用意し、動的に切り替える仕組みを構築 SQLクエリーを動的に書き換える処理を実装 特に課題となっていたのはSQLServerのストアドプロシージャ ストアドプロシージャの移行は困難 使用しているストアドプロシージャを抽出
ストアドプロシージャをSpringBoot/JavaでAPI化 SQLServerとPostgreSQLの双方で動作するSQLクエリーに置き換える
Azure VM上でアプリケーションが稼働していた インフラはコード化されていない 2022年5月にAzure Container AppsのGAが発表 AWS移行を見据えて、移行前にアプリケーションをコンテナ化する方針に決定 コンテナ化し、Azure Container Appsで本番稼働させる
GitHub Actionsを使用したCI/CDの構築 5ヶ月間ほど本番環境でコンテナ稼働し、安定した運用ができるようになった アプリケーションのコンテナ化
移行元と移行先 Azure Container Registry → Amazon ECR (コンテナレジストリ) Azure Container
Apps → Amazon ECS (コンテナ実行環境) Azure Application Gateway → Application Load Balancer (ロードバランサー) Azure Cache for Redis → Amazon ElastiCache for Redis (キャッシュ) SQL Server 2016 → Amazon Aurora PostgreSQL (データベース) 全体的な構成は大きく変えることなくクラウド移行を実現 移行前の環境で、アプリケーションをコンテナ化したことで移行時のコストを低減できた Azure→AWSの移行
移行当初はマネコン上で手動でリソースを作成 AWS Copilot CLIを活用することで、初期の ECS/ECR/ALBの環境構築からその後の運用ま で高速に実現できるようになった インフラ領域に詳しくなくても、ドキュメント を参照しながら簡単に構築できる 凝ったことをしようとすると大変 YAMLパッチオーバーライド
CDKオーバーライド CloudFormationを理解しないといけない v1.34.0のリリースが2024年6月27日 積極的な開発は進んでいない模様 AWS Copilot CLIの活用
VSCodeでCline/RooCodeをAWS Bedrockで利用 普段の開発はIntelliJ IDEA, Cline/RooCodeを利用するときはVSCode 直近では、ClaudeCodeをAWS Bedrock経由でIntelliJ IDEAのターミナル上で実行 バックエンド領域 スコープの狭いコンポーネントの作成や単体テストで活用
歴史のあるアプリケーション/データ構造があまりに複雑すぎる フロントエンド領域 社内用管理画面をSpringBoot / Tailwind CSS / Alpine.js / htmx で構築 動的な操作をAlpine.jsで実現 Cline/RooCodeを活用して、管理画面のマークアップを自動で作成 歴史のあるアプリケーションでは活用できていない AI コーディングエージェントの活用
Azure→AWSの移行 環境差分を抑えた移行は、移行時のコストを低減することができた AWS Copilot CLIの活用 インフラ領域に精通していなくても、アプリケーションをIaC化できた AIコーディングエージェントの活用 バックエンド領域ではあまり活用できていない フロントエンド領域で活用中 まとめ