Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

20180616 業務システムをAppServiceで運用しよう #きたあず #jazug

695 views

Published on

2018年06月16日 JAZUG きたあず
業務システムをAppServiceで運用しよう
#きたあず #jazug

  • Be the first to comment

20180616 業務システムをAppServiceで運用しよう #きたあず #jazug

  1. 1. 2018.06.16 JAZUG札幌支部(きたあず) 第18回勉強会 業務システムを App Service で運用しよう 清水 勝也 しみみん@KatsuYuzu
  2. 2. 自己紹介 名前 清水 勝也 Twitter しみみん@KatsuYuzu Community CLR/H Job 業務システム開発 2
  3. 3. 本日のゴール 対象者 クラウドがまだ雲の上のことだという人 ゴール App Service 使ってみようと思う 3
  4. 4. アジェンダ App Service とは 業務システムを App Service で運用してみる 4
  5. 5. App Service とは 5
  6. 6. 完全に管理されたプラットフォームで強力なクラウド アプリをすばやく作成 App Service アプリの詳細 Web Apps Web App for Containers Mobile Apps API Apps https://azure.microsoft.com/ja-jp/services/app-service/ App Service とは 6
  7. 7. Web Apps Web システムの開発, 運用基盤 様々なプラットフォーム,言語 • Windows, Linux • .NET, .NET Core, Java, Ruby, Node.js, PHP, Python 認証の統合 自動スケール, 負荷分散 パフォーマンス, 障害の分析 ブルーグリーンデプロイメント, 継続的なデプロイ 7
  8. 8. Web Apps 様々なプラットフォーム,言語 8
  9. 9. Web Apps 認証の統合 9
  10. 10. Web Apps 自動スケール, 負荷分散 10
  11. 11. Web Apps パフォーマンス, 障害の分析 11
  12. 12. Web Apps ブルーグリーンデプロイメント 12
  13. 13. Web Apps 継続的なデプロイ 13
  14. 14. Web App for Containers Web App のコンテナー対応 ポータビリティ • 開発環境, 運用環境, オンプレミス, クラウド 再現可能な環境 独自イメージで組み込みに無いランタイム利用も可 14
  15. 15. Web App for Containers Web App のコンテナー対応 15
  16. 16. Mobile Apps モバイルアプリの開発, 運用基盤 App Service の様々な機能と連携する SDK • ウィザード形式 • 設定済みのソースのダウンロード リソースへの接続 • 認証された接続で社内またはクラウドのリソースへ接続 オフライン同期 プッシュ通知 16
  17. 17. Mobile Apps プッシュ通知の仕組み 17 https://docs.microsoft.com/ja-jp/azure/notification-hubs/notification-hubs-push-notification-overview
  18. 18. Mobile Apps プッシュ通知の仕組み 18 通知サーバー • iOS:APNS • Android:GCM • Kindle:ADM • Windows:WNS • Windows Phone:MPNS
  19. 19. Mobile Apps プッシュ通知の仕組み 19 NotificationHub 各通知サーバーのプロトコルに対応 柔軟なスケール ルーティングの保持
  20. 20. API Apps Web API の開発, 運用基盤 サーバーレスなサービス群 • 必要に応じてスケーリング • 使用したリソースの分だけの支払い • Functions • Logic Apps API Management • 認証 • 統合 • ドキュメント 20
  21. 21. API Apps Functions 21 Notification HubFunctions
  22. 22. API Apps Functions 22 Notification HubFunctions ステップ① 関数とトリガーの定義
  23. 23. API Apps Functions 23 Notification HubFunctions ステップ② 任意の処理 下記の例は Notification Hub に通知を送っている
  24. 24. API Apps Functions 24 Notification HubFunctions ステップ① 関数とトリガーの定義 ステップ② 任意の処理 2 ステップで実装可能
  25. 25. API Apps API Management 25
  26. 26. App Service とは Web アプリ, Web API , モバイルバックエンドを ホストするための PaaS 群 特徴を基に大きく 4 つに分類されている 完全に管理されたプラットフォームで強力なクラウド アプリをすばやく作成 26
  27. 27. Visual Studio のサポート(おまけ) 27 認証
  28. 28. Visual Studio のサポート(おまけ) 28 コンテナー
  29. 29. Visual Studio のサポート(おまけ) 29 継続的なデプロイ
  30. 30. 業務システムを App Service で運用してみる 30
  31. 31. 顧客要件 パスワード増やしたくない 申請、承認のフローを利用したい 現場はデスクトップ、偉い人はモバイルで利用したい 申請されたら通知が欲しい 開発要件 納品、入替を簡単にしたい エラーなどの情報が知りたい 早速…… 31
  32. 32. App Service で設計してみる 要件 対応するサービス パスワードを増やしたくない Azure Active Directory のシングルサインオン 申請、承認のフローを利用したい Functions の Durable Functions 現場はデスクトップ、偉い人はモバイルで利用 したい Mobile App (今回は下記の Notification Hub の利用のみ) 申請されたら通知が欲しい Mobile App の Notification Hub 納品、入替を簡単にしたい App Service の継続的インテグレーション エラーなどの情報が知りたい Application Insights 32
  33. 33. 今回のデモの全体像 33 Twitter Notification Hub Functions Cosmos DB CI Application Insights Azure Active Directory API Apps タブレット ラップトップ Azure 開発者 ユーザーの経路 DB トリガーの経路 開発者の経路 Functions
  34. 34. 今回のデモ 申請用システム 34 申請通知
  35. 35. Azure Active Directory(AAD) シングルサインオンが出来る 運用大変? • Azure AD Connect で 4 クリックでオンプレミスと統合 • O365 を利用しているなら既に AAD を利用している 開発大変? • チュートリアル通りに進めて流れを把握する • https://docs.microsoft.com/ja-jp/azure/active-directory/develop/active-directory-v2-code-samples • サーバーサイドを AAD へアプリ登録 • クライアントサイドを AAD へアプリ登録 • 実装(公式ライブラリの利用で数行) 35
  36. 36. Durable Functions コードでフローを定義出来る 36
  37. 37. Durable Functions コードでフローを定義出来る 37 例) 申請 await 承認待ち サブフロー 終了処理 承認フローに Twitter を用いたから無理矢理感が出てしまった……
  38. 38. 38 Durable Functions コードでフローを定義出来る
  39. 39. Durable Functions コードでフローを定義出来る 運用大変? • サーバーレス 開発大変? • async/await 構文で直感的なフロー制御が出来る 39
  40. 40. Notification Hub API 呼び出し 1 つでプッシュ通知を送信出来る 運用大変? • 各プラットフォームの通知システム(PSN)に対応 • 価格レベルを選ぶだけ 開発大変? • 公式ライブラリで簡略化されてる • Functions ならバインド機能で簡単に呼び出しが出来る 40
  41. 41. App Service の 継続的インテグレーション(CI) 様々なデプロイがサポートされている 運用大変? • デプロイソースに接続するだけ 開発大変? • コミットするだけ 41
  42. 42. Application Insights アプリケーションの状態が一目でわかる 運用大変? • 有効にするだけ 開発大変? • 不要 • 任意のログ出力も出来る 42
  43. 43. 今回のデモの全体像 43 Twitter Notification Hub Functions Cosmos DB CI Application Insights Azure Active Directory API Apps タブレット ラップトップ Azure 開発者 ユーザーの経路 DB トリガーの経路 開発者の経路 Functions
  44. 44. まとめ 44
  45. 45. まとめ App Service とは Web アプリ, Web API, モバイルバックエンドを ホストするための PaaS 運用だけではなく開発基盤でもある 業務システムを App Service で運用してみる 十分に運用出来そうだ 難しい機能が簡単に実現出来そうだ まずは使ってみよう コミュニティのメンバーと交流して色々聞いてみよう 45
  46. 46. 参考 App Service https://azure.microsoft.com/ja-jp/services/app-service/ Azure Notification Hubs とは https://docs.microsoft.com/ja-jp/azure/notification-hubs/notification-hubs-push-notification-overview Azure Active Directory のサンプル コード (V2 エンドポイント) https://docs.microsoft.com/ja-jp/azure/active-directory/develop/active-directory-v2-code-samples Durable Functions の概要 https://docs.microsoft.com/ja-jp/azure/azure-functions/durable-functions-overview 46

×