Slide 1

Slide 1 text

| © 2023 Cloud Ace, Inc クラウド ネイティブ化は、 本当に必要なのか? 〜移行パターンと成功のポイント〜 Takumi Mizuno Sr.Specialist Cloud Ace, lnc. ©2024 Cloud Ace, Inc

Slide 2

Slide 2 text

スピーカー Takumi Mizuno
 Cloud Ace, lnc. / Sr.Specialist
 Web アプリケーション エンジニアとして 3 年間で 15 案件に参画し、要件定 義、設計、実装、テストまで幅広く担当。
 現在は Application Modernization 領域に参画し、クラウド ネイティブなシステ ムに移行するための設計や開発を行っている。
 得意領域は、アプリケーション設計 (DDD, Microservices)。


Slide 3

Slide 3 text

1. はじめに
 2. なぜクラウド ネイティブ化が必要なのか
 3. 移行パターン
 4. 成功ポイント
 5. クラウド ネイティブ化における考え方のシフト
 6. まとめ
 アジェンダ


Slide 4

Slide 4 text

目指すこと
 ● なぜクラウド ネイティブ化が必要かを理解してもらう 
 ● ユースケースに適した移行アプローチを理解してもらう 
 ● クラウド ネイティブ化のイメージを持ってもらう 
 
 目指さないこと
 ● クラウド ネイティブ化の具体例を知ってもらう 
 発表の位置づけ


Slide 5

Slide 5 text

なぜクラウド ネイティブ化が 必要なのか 〜 DORA から分かるクラウドリフトのみと クラウド ネイティブの比較 〜

Slide 6

Slide 6 text

● ビジネス
 ○ レガシーシステムがビジネス要件に適合できない(新しい要件に適合した い)
 ○ レガシーシステムがビジネス変化に追いつけない(アジリティを高めたい)
 ○ ビジネス価値を高めたい
 ● そのほか
 ○ レガシーシステムが複雑すぎる(保守性を高めたい)
 ○ 長期的なコストを削減したい
 ○ リスクを減らしたい(セキュリティ, コンプライアンス, 可用性, etc.)
 モダナイゼーションの動機
 参照:7 Options To Modernize Legacy Systems

Slide 7

Slide 7 text

State of DevOps Report https://cloud.google.com/devops/state-of-devops/

Slide 8

Slide 8 text

クラウドらしい、サーバーレスやマネージドサービス等の活用を行う場合、 
 
 単に「クラウド利用」する場合と比べて、 
 30%
 組織パフォーマンスが高くなることが予測される 
 クラウド ネイティブ化の効果
 参照:Accelerate State of DevOps Report 2023

Slide 9

Slide 9 text

単なる「クラウド利用」では結果がまちまち
 引用:Accelerate State of DevOps Report 2023

Slide 10

Slide 10 text

単なる「クラウド利用」では結果がまちまち
 引用:Accelerate State of DevOps Report 2023

Slide 11

Slide 11 text

オンプレと同様の運用方法を行っており、クラウドの恩恵を受けられないまま、「新し い環境への複雑さ」と「認知負荷」が増えただけになっている。
 「クラウド利用」だけではダメな原因
 認知負荷
 クラウドの恩恵
 参照:Accelerate State of DevOps Report 2023

Slide 12

Slide 12 text

クラウドらしい活用をすることで、全体的なパフォーマンスが上がっていることが分か る。
 クラウド ネイティブによるパフォーマンス向上
 引用:Accelerate State of DevOps Report 2023

Slide 13

Slide 13 text

- 
 - 
 参考:クラウドが従業員に与える影響
 引用:Accelerate State of DevOps Report 2023

Slide 14

Slide 14 text

クラウド ネイティブ化の効果
 引用:Accelerate State of DevOps Report 2023

Slide 15

Slide 15 text

移行パターン 〜 メリデメとユースケースで比較 〜

Slide 16

Slide 16 text

「リプレイス」
 
 
 
 
 
 ビジネス要件から刷新し、ゼロか ら再設計または書き直す。 
 「リビルド」
 
 
 
 
 
 ビジネス要件を維持しながら、ゼ ロから再設計または書き直す。 
 クラウド ネイティブ化のプラン
 「リプラットフォーム」
 
 
 
 
 
 実行環境を新しいものに移行。 コードの構造、機能、動作は変更 せず、最小限のコード変更にとど る。
 参照:7 Options To Modernize Legacy Systems ※画像はOpenArt AIで生 成

Slide 17

Slide 17 text

クラウド ネイティブ化のプラン
 リプラットフォーム リビルド リプレイス use case 1. 定期的なリファクタが実施さ れている 2. 今後、ビジネス改善を行う予 定がない 1. 定期的なリファクタが実施されて いない 2. 今後、ビジネス改善を行う予定 がある 1. 定期的なリファクタが実施され ていない 2. 直近で、ビジネス改善を行う予 定がある pros 1. 移行コストを抑えながら、運用 コスト削減ができる 1. 運用コスト削減だけでなく、アジ リティや保守性の向上、セキュリ ティやコンプライアンス等のリス ク低減も可能 1. 他の移行プランよりビジネスへ の効果がある可能性が高い 2. 運用コスト削減だけでなく、アジ リティや保守性の向上、セキュ リティやコンプライアンス等のリ スク低減も可能 cons 1. リファクタが定期的に行われ ていない場合、他の移行プラ ンより移行コストが上がる可 能性がある 2. 運用コスト以外は改善されに くい 1. リプラットフォームより移行コスト が上がる可能性がある 1. リプラットフォームより移行コス トが上がる可能性がある

Slide 18

Slide 18 text

成功ポイント 〜 DORA metrics による DevOps とビジネス成果の紐づけ 〜

Slide 19

Slide 19 text

確認ポイント
 ● モダナイズが目的になっていないか
 ○ そのモダナイズはビジネス課題を解決するのか?
 ○ モダナイズによる痛みを受け入れられるか
 ● 「ものさし」を持っているか
 ● 長期的な視点が持てるか
 ○ 未知への柔軟で迅速な対応にどれだけ投資できるか


Slide 20

Slide 20 text

モダナイズが目的になっていないか
 ● そのモダナイズはビジネス課題を解決するのか?
 ○ どのような課題があるのか?
 ■ 運用コストがかかりすぎている
 ■ トイルが多く、現状維持の活動に追われている
 ■ ビジネスの要求速度にシステム改修が追いついていない etc.
 ● モダナイズによる痛みを受け入れられるか?
 ○ モダナイズにかかる工数
 ○ 認知負荷の増加
 ○ 過渡期の運用負荷の増加


Slide 21

Slide 21 text

「ものさし」を持っているか
 以下の 3 つが明確にすることが重要なポイントである。
 1. ものさしは何か(評価基準)
 2. 現状どれくらいできているのか(現在地)
 3. 目指すべき目標はどこか(ゴール)


Slide 22

Slide 22 text

「ものさし」を持っているか
 DORA が提唱するソフトウェア デリバリーパフォーマンスの評価軸
 ● 速度
 ● 変更のリードタイム
 ○ コードの変更を commit してからデプロイするまでの時間
 ● デプロイの頻度
 ○ 変更を本番環境に push する頻度
 ● 安定性
 ● 変更時の障害率
 ○ デプロイにより障害が発生し、すぐに対処する必要が生じる頻度
 ● デプロイ失敗時の復旧までの時間
 ○ デプロイの失敗時に復旧にかかる時間
 参照:Accelerate State of DevOps Report 2023

Slide 23

Slide 23 text

「ものさし」を持っているか
 参照:DORA Quick Check DORA では、Quick Check で現在地の計測が可能。業界ごとの水準と比較も可能。 


Slide 24

Slide 24 text

長期的な視点が持てるか
 ● 長期的な視点が持てるか
 ○ 未知への、柔軟で迅速な対応にどれだけ投資できるか


Slide 25

Slide 25 text

クラウド ネイティブ化における 考え方のシフト

Slide 26

Slide 26 text

クラウド ネイティブ化のアプローチ
 ● サーバーレス化
 ● 疎結合アーキテクチャ化
 ○ フロントエンドとバックエンドの分離
 ○ マイクロサービス化
 ○ ゼロトラスト化 etc.
 ● DevOps 改善
 ○ CI/CD
 ○ オブザーバビリティ
 ○ SLO                 etc.
 ● AI 導入


Slide 27

Slide 27 text

参考:技術的アプローチの効果
 引用:Accelerate State of DevOps Report 2023

Slide 28

Slide 28 text

クラウド ネイティブ化のアプローチ
 ● サーバレス化
 ● 疎結合アーキテクチャ化
 ○ フロントエンドとバックエンドの分離
 ○ マイクロサービス化
 ○ ゼロトラスト化 etc.
 ● DevOps 改善
 ○ CI/CD
 ○ オブザーバビリティ
 ○ SLO                 etc.


Slide 29

Slide 29 text

サーバーレス化例


Slide 30

Slide 30 text

考え方の違いを生む要因
 引用:PaaS、IaaS、SaaS、CaaS の違い

Slide 31

Slide 31 text

IaaS とサーバーレスの考え方の違い
 ● 課金モデル
 ● 運用
 ● カスタマイズ性
 ● アーキテクチャ
 ● ゼロトラスト


Slide 32

Slide 32 text

IaaS とサーバーレスの考え方の違い
 ● 課金モデル
 ○ IaaS は、使用状況に関係なく、プロビジョニングしたインスタンスに応じて課 金が発生。サーバーレスは使った分だけ課金される従量制。
 ● 運用
 ○ サーバーレスはフルマネージド型が多いため、クラウド プロバイダーがイン フラ管理をやってくれる範囲が大きい(運用負荷の低減)
 ● カスタマイズ性
 ○ IaaS の方が高い。(運用コスト削減とカスタマイズ性はトレードオフ) 


Slide 33

Slide 33 text

IaaS とサーバスの考え方の違い
 ● アーキテクチャ
 ○ サーバーレスはユースケースに特化した製品が多い。そのため、おのずとマイクロ サー ビスのような構成になっていく。その考え方のシフトができると、「まずは新機能をサーバ レス サービスで開発してみる」のような方針も可能。 
 ● ゼロトラスト
 ○ サーバーレス化を進めていくと、どのリソースも外部APIベースのアクセスが多くなる。そ のため、内部ネットワークの管理負荷の低減に繋がる。(代わりに認証/認可をキッチリ 行う必要性があるが、そこはサーバーレスの機能を活用することで負担は多くない) 


Slide 34

Slide 34 text

まとめ

Slide 35

Slide 35 text

目指すこと
 ● なぜクラウド ネイティブ化が必要かを理解してもらう 
 ● ユースケースに適した移行アプローチを理解してもらう 
 ● クラウド ネイティブ化のイメージを持ってもらう 
 
 目指さないこと
 ● クラウド ネイティブ化の具体例を知ってもらう 
 発表の位置づけ


Slide 36

Slide 36 text

クラウドらしい、サーバーレスやマネージドサービス等の活用を行う場合、 
 
 単に「クラウド利用」する場合と比べて、 
 30%
 組織パフォーマンスが高くなることが予測される 
 クラウド ネイティブ化の効果
 参照:Accelerate State of DevOps Report 2023

Slide 37

Slide 37 text

クラウド ネイティブ化の効果
 引用:Accelerate State of DevOps Report 2023

Slide 38

Slide 38 text

「リプレイス」
 
 
 
 
 
 ビジネス要件から刷新し、ゼロか ら再設計または書き直す。 
 「リビルド」
 
 
 
 
 
 ビジネス要件を維持しながら、ゼ ロから再設計または書き直す。 
 クラウド ネイティブ化のプラン
 「リプラットフォーム」
 
 
 
 
 
 実行環境を新しいものに移行。 コードの構造、機能、動作は変更 せず、最小限のコード変更にとど る。
 参照:7 Options To Modernize Legacy Systems ※画像はOpenArt AIで生 成

Slide 39

Slide 39 text

確認ポイント
 ● モダナイズが目的になっていないか
 ○ そのモダナイズはビジネス課題を解決するのか?
 ○ モダナイズによる痛みを受け入れられるか
 ● 「ものさし」を持っているか
 ● 長期的な視点が持てるか
 ○ 未知への柔軟で迅速な対応にどれだけ投資できるか


Slide 40

Slide 40 text

クラウド ネイティブ化のアプローチ
 ● サーバレス化
 ● 疎結合アーキテクチャ化
 ○ フロントエンドとバックエンドの分離
 ○ マイクロサービス化
 ○ ゼロトラスト化 etc.
 ● DevOps 改善
 ○ CI/CD
 ○ オブザーバビリティ
 ○ SLO                 etc.


Slide 41

Slide 41 text

IaaS とサーバーレスの考え方の違い
 ● 課金モデル
 ● 運用
 ● カスタマイズ性
 ● アーキテクチャ
 ● ゼロトラスト


Slide 42

Slide 42 text

Thank you.