Mais conteúdo relacionado
Semelhante a Kubernetes 疲れに Azure Container Apps はいかがでしょうか?(江東区合同ライトニングトーク 発表資料) (20)
Mais de NTT DATA Technology & Innovation (20)
Kubernetes 疲れに Azure Container Apps はいかがでしょうか?(江東区合同ライトニングトーク 発表資料)
- 1. © 2022 NTT DATA Corporation
江東区合同ライトニングトーク
Kubernetes 疲れに Azure Container Apps はいかがでしょうか?
2022年12月2日
株式会社NTTデータ ソーシャルイノベーション事業部
伊藤 歩
- 2. © 2022 NTT DATA Corporation 2
サッカー日本代表おめでとうございます!!
- 3. © 2022 NTT DATA Corporation 3
自己紹介
• 自己紹介
伊藤 歩(いとう あゆむ)
NTTデータ ソーシャルイノベーション事業部 所属
• 経歴
公共案件の基盤を担当
オンプレ環境がメインだったが、最近はクラウドにシフト
NTTデータ技術者育成プログラム「技統本塾」にてAzure技術検証
• 好きな技術
ネットワーク全般(Cisco, FortiGate, Juniper, …)
Azure全般
• 趣味
バスケ、NBA観戦、筋トレ
素粒子、宇宙、数学
NEW
- 4. © 2022 NTT DATA Corporation 4
Kubernetes を使われている皆さん、こんな経験はありませんか?
Kubernetes 運用が大変だ・・・
Kubernetes の新バージョンで新し
い技術が出ても使いこなせない・・・
Kubernetes が難しくて、
完全に理解できていない・・・
yaml ばかり触る生活・・・
そもそも Kubernetes の開発スピー
ドが速くて付いていけない・・・
- 5. © 2022 NTT DATA Corporation 5
それは Kubernetes 疲れです。
※ Kubernetes が悪いとは言っていません。とても素晴らしいサービスです。
2022/5 に Azure から Azure Container Apps というサービスがGA
Kubernetes ベースだが、kubectl, マニフェストを弄らない新しいコンテナ基盤
Dapr, KEDA, envoy の周辺OSSと統合し、マイクロサービス等のクラウドネイティブアプリのデプロイが可能
Container Image
Kubernetes Resource
Kubernetes Namespace
Kubernetes Worker
Kubernetes Control Plane
Azure で管理
Kubernetes インフラスタックと責任範囲
Kubernetes の管理はお任せして
アプリ開発に全集中
(インフラエンジニアとしては複雑・・・)
https://learn.microsoft.com/en-us/azure/architecture/example-scenario/
serverless/microservices-with-container-apps-dapr
マイクロサービスの構築も可能
- 6. © 2022 NTT DATA Corporation 6
実際に動かしてみる
Azure Container Apps にサンプルアプリケーションをデプロイする。
Azure Container Apps チュートリアルを参考。
https://learn.Microsoft.com/ja-jp/azure/container-apps/microservices-dapr
コンテナデプロイは非常に簡単。
az containerapp create
--name <Container Apps Name> ¥
--resource-group <Resource Group Name> ¥
--environment <Container Apps Environment Name> ¥
--registry-server <Container Registory Name> ¥
--registry-username <Username> ¥
--registry-password <Password> ¥
--image <Image Name> ¥
$ az containerapp exec --name <Container Apps Name> --resource-group <Resource Group Name>
--command bash
# curl https://<Container Apps Name>.internal.xx.japaneast.azurecontainerapps.io/order
{"orderId":XXX}
クライアントコンテナにログインし、
サーバアプリを呼び出せた
1コマンドでKubernetes上に
コンテナをデプロイ可能
- 7. © 2022 NTT DATA Corporation 7
Azure Container Apps の特徴(Dapr)
Dapr とは?:マイクロサービス実装の要。
マイクロサービスのベストプラクティスをビルディングブロック(API) でまとめ、好きな言語、基盤を問わず実装できる
サービス間呼び出し、状態管理、Pub/Sub、…
https://docs.dapr.io/concepts/overview/
Azure Container Appsでは
Dapr がネイティブに統合
各ビルディングブロックを共通
的なAPIで呼び出せる
- 8. © 2022 NTT DATA Corporation 8
実際に動かしてみる
コマンド1つで Dapr を有効化
サービス間通信は全て Dapr(localhost) 経由
サービス呼び出し、状態管理等全て共通的な API 呼び出しが可能
1コマンドで実装。
Kubernetes への Dapr導入不要。
az containerapp dapr enable ¥
--name <Container Apps Name> ¥
--resource-group <Resource Group Name> ¥
--dapr-app-id <App ID> ¥
--dapr-app-port <App Port>
http://localhost:3500/v1.0/invoke/nodeapp/method/neworder
http://localhost:3500/v1.0/state/statestore
各ビルディングブロックを共通的に呼び出せる
http://localhost:3500/v1.0/invoke
http://localhost:3500/v1.0/state …
Dapr が各言語、基盤の差分を吸収。
その他、たとえば、サービス呼び出しはmTLSによ
る暗号化といった機能もDaprが実装。
→透過的にベストプラクティスを実装。
例えば、DynamoDB, GCP
Firestore でも同じAPI
- 9. © 2022 NTT DATA Corporation 9
コンテナ実行基盤の第一候補に Azure Container Apps(+ Dapr)はいかがでしょうか?
- 10. © 2022 NTT DATA Corporation 10
おまけ
Microsoft の年次イベント Ignite 2022 が久しぶりのオンライト開催あったので、行ってみた。
10/13-14 東京ミッドタウンで開催
(なんと無料!)
オンラインセッションの物理会場
(画面越しとは違う臨場感!)
EXPOブースで
ノベルティももらえました!
MVPの方や有名な方もチラホラ
- 11. © 2022 NTT DATA Corporation 11
おまけ
Webマガジン「CodeZine」にカオスエンジニアリングに関する連載記事
を公開中。
https://codezine.jp/article/corner/933
第一回「カオスエンジニアリングを安全に行うには? AWSとAzureのマ
ネージドサービスの特徴を解説」のAzure部分を担当。
https://codezine.jp/article/detail/16172
第五回では Azure Chaos Studio を使用した Azure
Kubernetes Service のカオスエンジニアリングに関する記事執筆中。
乞うご期待!!
- 12. © 2022 NTT DATA Corporation
記載されている会社名、商品名、またはサービス名は、各社の商標登録または商標です