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

世界一わかりみの深い クラウドネイティブなアプリ開発入門 on Azure 第2回 〜App ...

世界一わかりみの深い クラウドネイティブなアプリ開発入門 on Azure 第2回 〜App Serviceでアプリをラクチン実行〜/wakarimiazure002

Noriyuki TAKEI

June 30, 2021
Tweet

More Decks by Noriyuki TAKEI

Other Decks in Technology

Transcript

  1. © SIOS Technology, Inc. All rights Reserved. 世界⼀わかりみの深い クラウドネイティブなアプリ開発⼊⾨ on

    Azure 第2回 〜App Serviceでアプリをラクチン実⾏〜 武井 宜⾏ サイオステクノロジー株式会社 2021年6⽉30⽇
  2. © SIOS Technology, Inc. All rights Reserved. ⽬次 2 第1章︓App

    Serviceってなに︖ 第2章︓App Serviceの価格 第3章︓App Serviceプランってなに︖ 第4章︓App Serviceの推しなトコロ
  3. © SIOS Technology, Inc. All rights Reserved. About Me 3

    BCPVUNF Noriyuki TAKEI ෢Ҫ ٓߦ Information • サイオステクノロジー株式会社 • Microsoft MVP for Azure Favorites • Squash • Ski • Running • Canoe • Sweets blog https://tech-lab.sios.jp/ core skill Cloud Native, Serverless全般 Twitter @noriyukitakei
  4. © SIOS Technology, Inc. All rights Reserved. 本セッションの概要 5 「Azureでもっと⾝近なクラウドネイティブ」を

    ⽬指し、クラウドネイティブを実現するための 様々な技術を世界⼀わかりみ深く 説明するシリーズ配信モノです︕︕
  5. © SIOS Technology, Inc. All rights Reserved. 本セッションの概要 6 ハッシュタグ

    #wakarimiazure もしくは @noriyukitakei に忌憚ないご意⾒ お願いいたします
  6. © SIOS Technology, Inc. All rights Reserved. 本セッションの概要 7 本セッションは以下のブログが

    ベースとなっていますので、合わせてご覧 頂けますと幸いです︕︕ 推しのAzureリソース「App Service」について語り尽くしました https://tech-lab.sios.jp/archives/25879
  7. © SIOS Technology, Inc. All rights Reserved. 第1章:App Serviceってなに︖ 9

    App Serviceとは︖ 管理不要 OS(WindowsとかLinux)やミドルウェア(ApacheとかTomcat)は Azureによって提供済みでメンテもしてくれる︕︕ デプロイ簡単 ビルド済みのアプリケーションをgitでPushしたり、Azure CLIや sftpでアップロードしたりするだけ︕︕ オールインワン ロードバランサーとかストレージとか、Webアプリ動かすのに必 要なものはすでにそろっているので⾃分で構築する必要なし︕︕
  8. © SIOS Technology, Inc. All rights Reserved. 第1章:App Serviceってなに︖ 10

    OS(LinuxやWindows) ランタイム (JavaやPHPなどの開発⾔語) ミドルウェア (ApacheやTomcatなど) アプリケーションフレームワーク (SpringやCakePHPなど) アプリケーション コンポーネント群 クラス メソッド public void hello() { // 何かの処理 } コンテナ(必要に応じて) OS(LinuxやWindows) ランタイム (JavaやPHPなどの開発⾔語) ミドルウェア (ApacheやTomcatなど) アプリケーションフレームワーク (SpringやCakePHPなど) アプリケーション コンポーネント群 クラス メソッド public void hello() { // 何かの処理 } コンテナ OS(LinuxやWindows) ランタイム (JavaやPHPなどの開発⾔語) ミドルウェア (ApacheやTomcatなど) アプリケーションフレームワーク (SpringやCakePHPなど) アプリケーション コンポーネント群 クラス メソッド public void hello() { // 何かの処理 } コンテナ(必要に応じて) OS(LinuxやWindows) ランタイム (JavaやPHPなどの開発⾔語) ミドルウェア (ApacheやTomcatなど) アプリケーションフレームワーク (SpringやCakePHPなど) アプリケーション コンポーネント群 クラス メソッド public void hello() { // 何かの処理 } コンテナ(必要に応じて) IaaS CaaS PaaS FaaS App Serviceの⽴ち位置です。
  9. © SIOS Technology, Inc. All rights Reserved. 第1章:App Serviceってなに︖ 11

    本セッションの ブログのURL アプリケーションの実⾏基盤を分類する概念です。
  10. © SIOS Technology, Inc. All rights Reserved. 第2章:App Serviceの価格 13

    App Serviceの価格表です。 無料 Basic Standard Premium Isolated Web、Mobile、API、API Apps 10 無制限 無制限 無制限 無制限 ディスク領域 1GB 10GB 50GB 250GB 1TB 最⼤インスタンス数 – 最⼤3 最⼤10 最⼤30 最⼤100 カスタムドメイン – サポート対象 サポート対象 サポート対象 サポート対象 ⾃動スケール – – サポート対象 サポート対象 サポート対象 ハイブリッド接続 – サポート対象 サポート対象 サポート対象 サポート対象 仮想ネットワーク接続 – – サポート対象 サポート対象 サポート対象 プライベートエンドポイント – – – サポート対象 サポート対象 コンピューティングの種類 Shared Dedicated Decicated Dedicated Isolated 従量課⾦制料⾦ 無料 ¥2.128/時間 ¥12.544/時間 ¥13.776/時間 ¥42.56/時間
  11. © SIOS Technology, Inc. All rights Reserved. 第2章:App Serviceの価格 14

    つまりまとめますとこんな感じです。 無料プランはメモリ、CPUなどのスペックは低く、機能もほとんど使えないですが、ちょっと試すに は向いています。 Basicは無料のとは違い機能も多く、専⽤のVM上で実⾏されます。が、StandardやPremiumと⽐べ て、本番に必要な機能がないので、本番向けとはいい難い部分があります。主に検証環境向けです。 Standard、Premiumは機能も豊富で本番向けのプランです。 Isolatedは仮想ネットワークにApp Serviceを置く事ができるのでセキュアですが、お値段が⾼く⼀ 部のセレブ向けプランです。StandardもしくはPremiumプランのVNet統合とプライベートエンドポ イントの組み合わせで同様のことが出来るので、それでもいいかも、、、︖
  12. © SIOS Technology, Inc. All rights Reserved. 第3章:App Serviceプランってなに︖ 16

    App Serviceを何も考えずポチポチ作ると以下の2つのリソースが作られている 事に気が付きます。 本セッションの ブログのURL これなに︖
  13. © SIOS Technology, Inc. All rights Reserved. 第3章:App Serviceプランってなに︖ 17

    実は課⾦はApp Serviceには⼀切かからず、このApp Serviceプランにかかりま す。実はこのApp Serviceプランというものはアプリを⼊れる箱のようなもの でVMそのものになります。App Serviceプラン=VMと考えてもらってもOKで す。 本セッションの ブログのURL App Serviceプラン App Service (PHP) App Service (Java) リソースグループA リソースグループB App Service (Node.js) App Serivceの混在も可能。 だけどあまり詰めすぎると処 理が遅くなる。 リソースグループまたがって もOK 複数のApp Serviceがあって も料⾦はApp Serviceプラン ⼀つ分
  14. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 19

    .NET Framework、PHP、Node.js、Java、Pythonなど豊富なランタイムに対応 GitHub、sftp、Azure CLIなど豊富なデプロイ⽅法に対応 スケールアウト・スケールアップ Azure Active Directoryとの認証統合 VNet統合による仮想ネットワークへのアクセス スロットによるBlue-Greenデプロイやカナリアリリース Azure DevOpsやGitHub ActionsによるCI/CD Dockerコンテナのデプロイ マネージドIDによる資格情報へのセキュアなアクセス マネージド証明書による無料で更新不要な証明書 ヘルスチェックによる異常インスタンスの切り離し 本セッションの ブログのURL イマココ
  15. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 20

    App Serviceは現時点で以下のランタイムに対応しています。 本セッションの ブログのURL Linux Windows .NET、NET Core .NET、NET Core、APS.NET Java Java Node.js Node.js PHP PHP Python Python Ruby Ruby
  16. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 21

    .NET Framework、PHP、Node.js、Java、Pythonなど豊富なランタイムに対応 GitHub、sftp、Azure CLIなど豊富なデプロイ⽅法に対応 スケールアウト・スケールアップ Azure Active Directoryとの認証統合 VNet統合による仮想ネットワークへのアクセス スロットによるBlue-Greenデプロイやカナリアリリース Azure DevOpsやGitHub ActionsによるCI/CD Dockerコンテナのデプロイ マネージドIDによる資格情報へのセキュアなアクセス マネージド証明書による無料で更新不要な証明書 ヘルスチェックによる異常インスタンスの切り離し 本セッションの ブログのURL イマココ
  17. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 22

    GitHub、Bitbucket、ローカルGit、sftp、Azure CLIなど、様々なデプロイ⽅ 法に対応しています。 本セッションの ブログのURL Azure Repos Azure Pipelines GitHub GitHub Actions sftp Azure CLI ローカルGit Bitbucket App Service
  18. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 23

    .NET Framework、PHP、Node.js、Java、Pythonなど豊富なランタイムに対応 GitHub、sftp、Azure CLIなど豊富なデプロイ⽅法に対応 スケールアウト・スケールアップ Azure Active Directoryとの認証統合 VNet統合による仮想ネットワークへのアクセス スロットによるBlue-Greenデプロイやカナリアリリース Azure DevOpsやGitHub ActionsによるCI/CD Dockerコンテナのデプロイ マネージドIDによる資格情報へのセキュアなアクセス マネージド証明書による無料で更新不要な証明書 ヘルスチェックによる異常インスタンスの切り離し 本セッションの ブログのURL イマココ
  19. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 24

    スケールアウトは⽔平⽅向への拡張、つまりインスタンス数を増やすことで性 能アップを図ります。スケールアップは、インスタンス⾃体のCPUやメモリな どの増強により性能アップを図ります。 本セッションの ブログのURL
  20. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 25

    「カスタム⾃動スケーリング」をクリックするとオートスケールを設定するこ とも出来ます。オートスケールはメトリックスや時間などをベースとしてス ケールすることが可能です。 本セッションの ブログのURL
  21. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 26

    インスタンス数を3にした場合、App Serviceプランは⼀つでも、内部的には VMが3つ⽴ち上がり、そのVMの中でApp Serviceが動作しております。そして この場合の課⾦体系はApp Serviceプラン✕3になります。つまり、App Serviceプランが8,000円/⽉のApp Serviceをインスタンス数3でスケールアウ トしたときの料⾦は、24,000円/⽉になります。 本セッションの ブログのURL App Serviceプラン App Service App Service App Service VM VM VM
  22. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 27

    .NET Framework、PHP、Node.js、Java、Pythonなど豊富なランタイムに対応 GitHub、sftp、Azure CLIなど豊富なデプロイ⽅法に対応 スケールアウト・スケールアップ Azure Active Directoryとの認証統合 VNet統合による仮想ネットワークへのアクセス スロットによるBlue-Greenデプロイやカナリアリリース Azure DevOpsやGitHub ActionsによるCI/CD Dockerコンテナのデプロイ マネージドIDによる資格情報へのセキュアなアクセス マネージド証明書による無料で更新不要な証明書 ヘルスチェックによる異常インスタンスの切り離し 本セッションの ブログのURL イマココ
  23. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 28

    App Serviceは、アプリの認証を簡単にAzure Active Directoryにすることが出来ます。 App Serviceのリソースにアクセスして、左部メニューの「認証(クラシック)」をクリック します。「App Service認証」を「オン」にして、「認証プロバイダー」から「Azure Active Directory」をクリックします。 本セッションの ブログのURL
  24. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 29

    「アプリの作成」は任意の名称を⼊⼒して、それ以外は下図のように設定して最後に「OK 」をクリックします。 本セッションの ブログのURL
  25. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 30

    「要求が認証されない場合に実⾏するアクション」を「Azure Active Directoryでのログ イン」にして、「保存」をクリックします。 本セッションの ブログのURL
  26. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 31

    アプリにアクセスするとたしかにAzure Active Directoryの認証画⾯が表⽰さ れます。 本セッションの ブログのURL
  27. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 32

    phpinfoしているのですが、HTTP_X_MS_CLIENT_PRINCIPAL_NAMEという 環境変数を⾒ると、確かにログインしたユーザーのUserPrincipalNameが⼊っ ています。 本セッションの ブログのURL
  28. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 33

    .NET Framework、PHP、Node.js、Java、Pythonなど豊富なランタイムに対応 GitHub、sftp、Azure CLIなど豊富なデプロイ⽅法に対応 スケールアウト・スケールアップ Azure Active Directoryとの認証統合 VNet統合による仮想ネットワークへのアクセス スロットによるBlue-Greenデプロイやカナリアリリース Azure DevOpsやGitHub ActionsによるCI/CD Dockerコンテナのデプロイ マネージドIDによる資格情報へのセキュアなアクセス マネージド証明書による無料で更新不要な証明書 ヘルスチェックによる異常インスタンスの切り離し 本セッションの ブログのURL イマココ
  29. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 34

    VNet統合を使うと、App Serviceから仮想ネットワーク上のリソースにアクセ スすることができます。 本セッションの ブログのURL
  30. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 35

    .NET Framework、PHP、Node.js、Java、Pythonなど豊富なランタイムに対応 GitHub、sftp、Azure CLIなど豊富なデプロイ⽅法に対応 スケールアウト・スケールアップ Azure Active Directoryとの認証統合 VNet統合による仮想ネットワークへのアクセス スロットによるBlue-Greenデプロイやカナリアリリース Azure DevOpsやGitHub ActionsによるCI/CD Dockerコンテナのデプロイ マネージドIDによる資格情報へのセキュアなアクセス マネージド証明書による無料で更新不要な証明書 ヘルスチェックによる異常インスタンスの切り離し 本セッションの ブログのURL イマココ
  31. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 36

    App Serviceはいろんなデプロイ⽅法に対応しています。 In-Placeデプロイ Blue-Greenデプロイ カナリアリリース 本セッションの ブログのURL
  32. © SIOS Technology, Inc. All rights Reserved. 37 In-Placeデプロイ 既存の環境に新しアプリをエイヤとデプ

    ロイする⼿法です。 旧来から⽤いられている伝統的な⼿法か と思います。 ただし、ダウンタイムが発⽣する可能性 が⾼いです。 第4章:App Serviceの推しなトコロ
  33. © SIOS Technology, Inc. All rights Reserved. 38 Blue-Greenデプロイ 現在動いている環境とは別に、新たにリ

    リースする別の環境を⽤意して、DNSの レコード切り替え等により、旧環境から 新環境にエイヤと切り替える⼿法です。 ダウンタイムほぼゼロ︕︕ 旧環境と新環境の2つのリソースを ⽤意しなければならないので、 ちょっと費⽤がかさむ(´・ω・`) 本セッションの ブログのURL 第4章:App Serviceの推しなトコロ
  34. © SIOS Technology, Inc. All rights Reserved. 39 カナリアデプロイ 現在動いている環境とは別に、新たにリ

    リースする別の環境を⽤意して、旧環境 に振られているリクエストを徐々に少し ずつ新環境に割り振っていく⼿法です。 少しずつ切り替えていくので、何か あった際の影響が少ない。 旧環境と新環境の2つのリソースを ⽤意しなければならないので、 ちょっと費⽤がかさむ(´・ω・`) 第4章:App Serviceの推しなトコロ
  35. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 40

    各デプロイ⽅法のメリデリはこんな感じ。 デプロイ⽅法 ユーザー影響 コスト 切り戻し In-Placeデプロイ ☓ ◯ ☓ アプリの設計にもよるが、単 なる⼊れ替えなのでサービス が停⽌することが多い。 既存のサーバーに対するアプリ の⼊れ替えなので、他のサー バーを⽤意しなくていい。 もう⼀度同じアプリを上書 きしなければいけないので、 切り戻し⼤変。 Blue-Greenデプ ロイ ◯ ☓ ◯ 旧アプリから新アプリへの切 り替えはロードバランサーや DNSの変更だけなので、ほと んど影響なし。 新旧両⽅のサーバーを⽤意しな ければならないので、コストが かかる。 DNSやロードバランサー を変更するだけで旧サー バーにリクエストが⾏き切 り戻しできるのでラクチン。 カナリアデプロイ ◯ ☓ ◯ 旧アプリから新アプリへの切 り替えはロードバランサーや DNSの変更だけなので、ほと んど影響なし。 新旧両⽅のサーバーを⽤意しな ければならないので、コストが かかる。 DNSやロードバランサー を変更するだけで旧サー バーにリクエストが⾏き切 り戻しできるのでラクチン。
  36. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 41

    App Serviceでは以下のように実現します。 本セッションの ブログのURL エンドユーザー 本番スロット 新アプリ 旧アプリ App Service プラン スワップ システム管理担当 ステージング スロット 動作確認 システム運⽤担当 DB_HOST=prd 環境変数設定 DB_HOST=stg 環境変数設定
  37. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 42

    .NET Framework、PHP、Node.js、Java、Pythonなど豊富なランタイムに対応 GitHub、sftp、Azure CLIなど豊富なデプロイ⽅法に対応 スケールアウト・スケールアップ Azure Active Directoryとの認証統合 VNet統合による仮想ネットワークへのアクセス スロットによるBlue-Greenデプロイやカナリアリリース Azure DevOpsやGitHub ActionsによるCI/CD Dockerコンテナのデプロイ マネージドIDによる資格情報へのセキュアなアクセス マネージド証明書による無料で更新不要な証明書 ヘルスチェックによる異常インスタンスの切り離し 本セッションの ブログのURL イマココ
  38. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 43

    App ServiceはAzureのCI/CDを実現するサービス「Azure DevOps」やGitHub Actionsに よるCI/CDが可能です。AzureのマネージドなGitリポジトリAzure ReposやGitHubにソー スコードをPushしただけでビルドやデプロイすることが可能です。 本セッションの ブログのURL エンドユーザー 本番スロット 新アプリ 旧アプリ App Service プラン スワップ システム管理担当 ステージング スロット 動作確認 システム運⽤担当 DB_HOST=prd 環境変数設定 DB_HOST=stg 環境変数設定 Azure Piplelinse Azure Repos 1 2 3 4 5 6
  39. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 44

    .NET Framework、PHP、Node.js、Java、Pythonなど豊富なランタイムに対応 GitHub、sftp、Azure CLIなど豊富なデプロイ⽅法に対応 スケールアウト・スケールアップ Azure Active Directoryとの認証統合 VNet統合による仮想ネットワークへのアクセス スロットによるBlue-Greenデプロイやカナリアリリース Azure DevOpsやGitHub ActionsによるCI/CD Dockerコンテナのデプロイ マネージドIDによる資格情報へのセキュアなアクセス マネージド証明書による無料で更新不要な証明書 ヘルスチェックによる異常インスタンスの切り離し 本セッションの ブログのURL イマココ
  40. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 45

    GitHubやAzure Container RegistryのDockerイメージからのデプロイも出来 ます。 本セッションの ブログのURL Web App for Containers Web アプリ App Service プラン Web アプリ Load Balancer Azure Container Registry コンテナにイメー ジをpushする。 コンテナからイメージ をpullする。 ロードバランサーで負荷分 散する。
  41. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 46

    .NET Framework、PHP、Node.js、Java、Pythonなど豊富なランタイムに対応 GitHub、sftp、Azure CLIなど豊富なデプロイ⽅法に対応 スケールアウト・スケールアップ Azure Active Directoryとの認証統合 VNet統合による仮想ネットワークへのアクセス スロットによるBlue-Greenデプロイやカナリアリリース Azure DevOpsやGitHub ActionsによるCI/CD Dockerコンテナのデプロイ マネージドIDによる資格情報へのセキュアなアクセス マネージド証明書による無料で更新不要な証明書 ヘルスチェックによる異常インスタンスの切り離し 本セッションの ブログのURL イマココ
  42. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 47

    App ServiceはマネージドIDに対応しています。マネージドIDのシーケンスは以下のマイ クロソフト公式ドキュメントから抜粋したシーケンス図がわかりみ深いです。 本セッションの ブログのURL
  43. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 48

    マネージドIDはAzure Key Vaultととても相性がよいです。Azure Key Vaultにデータベー スなどのパスワードを登録し、マネージドIDにのみ参照権限を与え、App Serviceからマ ネージドIDを使って資格情報を取得し、環境変数経由でApp Serviceに渡せば、末端の開 発者が本番のパスワードを知ることなく、本番へのデプロイが可能になります。 本セッションの ブログのURL App Service App Service プラン [email protected]( SecretUri=[シークレット識別⼦]) 環境変数設定 DBのパスワード マネージドID Azure Key Vault
  44. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 49

    .NET Framework、PHP、Node.js、Java、Pythonなど豊富なランタイムに対応 GitHub、sftp、Azure CLIなど豊富なデプロイ⽅法に対応 スケールアウト・スケールアップ Azure Active Directoryとの認証統合 VNet統合による仮想ネットワークへのアクセス スロットによるBlue-Greenデプロイやカナリアリリース Azure DevOpsやGitHub ActionsによるCI/CD Dockerコンテナのデプロイ マネージドIDによる資格情報へのセキュアなアクセス マネージド証明書による無料で更新不要な証明書 ヘルスチェックによる異常インスタンスの切り離し 本セッションの ブログのURL イマココ
  45. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 50

    App Serviceにはマジで素敵なサービス「マネージド証明書」があります。 本セッションの ブログのURL 証明書の取得費⽤が無料となる。 証明書の更新作業を⾃動で⾏ってくれる。(証明書の有効期限は6ヶ⽉で、その 1ヶ⽉前に⾃動で更新) エクスポート出来ない。 ワイルドカードはできない。
  46. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 51

    .NET Framework、PHP、Node.js、Java、Pythonなど豊富なランタイムに対応 GitHub、sftp、Azure CLIなど豊富なデプロイ⽅法に対応 スケールアウト・スケールアップ Azure Active Directoryとの認証統合 VNet統合による仮想ネットワークへのアクセス スロットによるBlue-Greenデプロイやカナリアリリース Azure DevOpsやGitHub ActionsによるCI/CD Dockerコンテナのデプロイ マネージドIDによる資格情報へのセキュアなアクセス マネージド証明書による無料で更新不要な証明書 ヘルスチェックによる異常インスタンスの切り離し 本セッションの ブログのURL イマココ
  47. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 52

    App Serviceは現時点で以下のランタイムに対応しています。 本セッションの ブログのURL
  48. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 53

    App Serviceは定期的にインスタンスをチェックして、以上があった 場合そのインスタンスを切り離す機能があります。 本セッションの ブログのURL ◯ ✗ /healthcheck.php 500
  49. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 54

    App Serviceにはマジで素敵なサービス「マネージド証明書」があります。 本セッションの ブログのURL 全てのインスタンスに対して、あらかじめ定められたパスに1分ごとにアクセ スし、HTTPステータスコード200〜299以外が2回返ってきた場合は、そのイ ンスタンスをロードバランサー配下から切り離す。 ロードバランサー配下から切り離しても、まだ該当インスタンスが復旧しない 場合は、VMの再起動を⾏う。 それでも復旧しない場合は、新しいVMに⼊れ替える。
  50. © SIOS Technology, Inc. All rights Reserved. 第4章:App Serviceの推しなトコロ 55

    App Serviceにはマジで素敵なサービス「マネージド証明書」があります。 本セッションの ブログのURL App Serviceのリソースにアクセスして、左部 メニューの「Health Check」をクリックしま す。「正常性チェック」の「有効化」を チェックして、「パス」の部分にヘルス チェック⽤エンドポイントのパスを⼊⼒しま す。最後に「保存」をクリックします。これ で完了です。
  51. © SIOS Technology, Inc. All rights Reserved. 最後に︕︕ 56 https://tech-lab.sios.jp/

    弊社技術ブログで様々なお役⽴ち技術情報を お届けしています︕︕
  52. © SIOS Technology, Inc. All rights Reserved. 最後に︕︕ 57 クラウドネイティブってなに︖〜

    Azureのアプリ開発実⾏基盤いろは 〜 https://tech-lab.sios.jp/archives/25654 推しのAzureリソース「App Service」について語り尽くしました https://tech-lab.sios.jp/archives/25879 関連ブログ
  53. © SIOS Technology, Inc. All rights Reserved. 最後に︕︕ 58 https://www.youtube.com/channel/UCjIVEOLmZlBrgq

    7nrxVFuRw YouTubeチャネルで様々なお役⽴ち技術情報を お届けしています︕︕