Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AKS + Azure Event Hubs で試す Dapr の Resource Bind...

polar3130
December 24, 2019

AKS + Azure Event Hubs で試す Dapr の Resource Bindings / dapr resource bindings with AKS and Event Hubs

Microsoft Open Tech Night #3 - クラウドネイティブ編
「AKS + Azure Event Hubs で試す Dapr の Resource Bindings」のスライド資料です

polar3130

December 24, 2019
Tweet

More Decks by polar3130

Other Decks in Technology

Transcript

  1. AKS + Azure Event Hubs で試す Dapr の Resource Bindings

    Masahiko Utsunomiya 2019/12/24 Microsoft Open Tech Night #3
  2. 2 #mstechnight Whois ✓ 金融分野のお客様のクラウド導入支援 ✓ 興味:Observability(Prometheus, Fluentd, Loki, Jaeger,

    etc.) ✓ Grafana Loki コントリビュータ Helm Chart のメンテナンスなどしています polar3130 Masahiko Utsunomiya Infrastructure Engineer / Relationship Builder
  3. 5 #mstechnight Dapr の使い方 アプリケーションは HTTP/gRPC で Dapr API にアクセス

    Dapr API はサイドカーで提供されるため、アプリケーションにランタイムコードを含める必要はない https://github.com/dapr/docs/blob/master/overview.md
  4. 6 #mstechnight Daprの使い方(Kubernetes mode) 3つの統合サービスが展開され、分散アプリケーションの実行をサポート Dapr Actor placement アクターパターンを実装する際に利用する アクターセット全体の状態管理、配置、操作

    Dapr Sidecar-injector Deployment に付与された Annotations に基づき Admission Webhook により Dapr サイドカーを注入 Dapr Operator kind: Component として外部リソースを抽象化 ランタイムへ Component の変更を通知
  5. 9 #mstechnight Sample で Dapr Bindings に入門 AKS 上で Kafka

    を展開、Dapr Component としてアプリケーションと連携 https://github.com/dapr/samples/tree/master/5.bindings
  6. 12 #mstechnight Kafka を用いた Input / Output Bindings • AKS

    クラスタを用意 • Dapr の各サービスを展開 Dapr Sidecar-Injector Dapr Operator Dapr Actor placement $ dapr init --kubernetes
  7. 13 #mstechnight Kafka を用いた Input / Output Bindings • AKS

    クラスタを用意 • Dapr の各サービスを展開 • Kafka を Helm で展開 Dapr Sidecar-Injector Dapr Operator Dapr Actor placement
  8. 14 #mstechnight Kafka を用いた Input / Output Bindings Dapr Sidecar-Injector

    Dapr Operator Dapr Actor placement • AKS クラスタを用意 • Dapr の各サービスを展開 • Kafka を Helm で展開 • アプリケーションを展開 • Injector によりサイドカーを注入 まずは Kafka を使ったサンプルを確認
  9. 16 #mstechnight 続きを作ってみた Dapr Sidecar-Injector Dapr Operator Dapr Actor placement

    • Event Hubs を設定 • アクセスする Topic を作成 • Event Hubs Component の YAMLファイル を作成 • kafka の Component YAML ファイルと差替 • 再デプロイ
  10. 17 #mstechnight Sample(No.5) とその続きを実装した結果 アプリケーションは一切変更せず外部リソースを切り替えできた 注意点 • Azure Event Hubs

    の kafka interface は standard 以上のプランが必要 • TopicName の option を指定してもトピックは自動作成されないため、別途作成する必要がある
  11. 19 #mstechnight 参考URL① Microsoft Ignite 2019 in Orlando より Azure

    CTO, Mark Russinovich による Dapr の各機能の解説 & デモ https://www.slideshare.net/keiomizo1/open-shiftrun2019-dapr
  12. 21 #mstechnight まとめ Dapr の Resource Bindings の機能を紹介 アプリケーションのステート管理を仲介し、外部リソースを抽象化して取り扱うことができる 現在は

    16 のリソース/プロトコルに対応、今後拡充予定 Sample(5. Bindings)の続きを実装し、コンセプトを確認 Bindings の使いどころ アプリケーション開発時のローカル/本番の環境差分を吸収できる 例えば、クラウドサービスを使ったアプリケーションのローカル環境での開発/テストなどに有効