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

なるほどわかった!平成最後のAzureとApp Service編

4cc0672dbe913b6e8aa687a81b3e02ab?s=47 Takayuki Fuwa
April 27, 2019
15

なるほどわかった!平成最後のAzureとApp Service編

Global Azure Bootcamp 2019@Sapporoにて登壇した資料です。
https://jazug.connpass.com/event/123262/

4cc0672dbe913b6e8aa687a81b3e02ab?s=128

Takayuki Fuwa

April 27, 2019
Tweet

Transcript

  1. なるほど分かった! 平成最後のAzureと App Service編 不破 崇行(ふわ たかゆき)

  2. こんにちは!

  3. 自己紹介 • 名前 • 不破 崇行(ふわ たかゆき) • 仕事 •

    昼は普通の正社員、夜は個人事業主(通訳さんに「コメディアン」って言われました) • いずれもIT系です(Webアプリからインフラまで) • 要するに、「パラレルキャリア」 • 最近の趣味 • AWS(LambdaとAmazon Connect楽しい) / Azure(AKS楽しい) / 航空無線 / シメパフェ • 家でAlexaとおしゃべり • コミュニティ活動 • 運営:JAZUG札幌(きたあず) / Azureもくもく会 / Cloud Native Sapporo / いろいろ • 登壇(予定も):札幌ひよこ会 / オープンソースカンファレンス / JAWS-UG札幌 / いろいろ • 守備範囲 • Azure / AWS / さくらのクラウド / Alibaba Cloud
  4. 私の人生の目標・目的 • 「どえらい技術」や「どえらいサービス」をどんどん広める • 「どえらい技術」をみんなに使ってもらい、幸せになってもらう • 「どえらい技術」でまわりの生活を楽にする

  5. 今日のお話 • 簡単にWebサイトを立ち上げることが出来るAzureのプロダクト 「App Service」の解説をします。 • ターゲット • Azureをほとんど触ったことがない人 •

    普段他のクラウドサービス(AWSなど)を使っている人 • 出来る範囲でAWSに置き換えながら説明します • ゴール • 「選択肢」を増やしてもらう • 「Azureが」ではなく「Azureも」 • みんなと仲良くなる
  6. Part1 Azureとは?

  7. Azure? • 読み方 • あじゅーる / あずーる(イタリア語で「紺碧」という意味) • マイクロソフトが提供しているクラウドサービス

  8. Azureで出来る事 • IssS • 仮想マシンを建てたり • 仮想ネットワークを作ったり • PaaS •

    Webサービスを展開したり • チューニング済みのAIを 利用できる
  9. 「肩代わり」という概念 IaaS (Infrastructure as a Service) • 物理インフラ(サーバ実機や ネットワーク機材)の 運用を「肩代わり」

    PaaS (Platform as a Service) • 実行環境やミドルウェアの 管理を「肩代わり」 SaaS (Service as a Service) • アプリケーションの 運用保守を「肩代わり」 IaaSやPaaS・IaaSは、ある程度決まった範囲をマイクロソフトに「肩代わり」してもらうという 仕組み
  10. 身近に存在する「肩代わり」(ピザ屋さんの場合) Everyday Life Example of Microsoft Azure Software Models (Source:

    Microsoft Partner University) https://www.comparex-group.com/web/microsites/microsoft/products/cloud/microsoft-azure/ms-azure.htm
  11. Azureでよく使う「技」 リソースグループ セキュリティ グループ 仮想マシン 仮想マシン DB ユーザー Azureで仮想マシンを立ち上げ、業務用Webアプリを稼働させる例 仮想ネットワーク

    可用性セット
  12. AWSに置き換えると、こんな感じ AWSで仮想マシンを立ち上げ、業務用Webアプリを稼働させる例 ユーザー AWS Cloud VPC Amazon EC2 Amazon EC2

    Amazon RDS Availability Zone Availability Zone Amazon RDS
  13. 【言いたいこと】 どのクラウドサービスも似ている • AWS/GCP/AlibabaやAzureも、概ね似たような概念になっている。 • なので、普段使っているクラウドサービスやオンプレサービスと比べながら 理解してみると分かりやすいと思います。 • 概念は似ているが、「ベストプラクティス」は各サービスで異なるので注意。

  14. Part2 App Serviceとは 「似ていないサービス」

  15. 「似ていない」サービス App Service • Webサイトをフルマネジドに構築することが出来るサービス群 • Web Apps + Web

    App for + Mobile Apps + API Apps = App Service! • どちらかというと、DevOps*的な使い方を想定している • *「ゆりかごから墓場まで」スタイルの開発 今日はここ
  16. コードをデプロイすれば完了!なサービス (Web Apps) • ネットワーク(バランシング)からミドルウェアまでをAzureが 「肩代わり」してくれる • 専用のgitリポジトリか既存の外部リポジトリ(GitHubなど)にpushすれば デプロイ出来る。 ソースコードをデプロイ!

    ユーザー 開発者 Web Appsで稼働中のECサイト 閲覧・ポチる
  17. App Service(Web Apps)のすごい所 • オートスケール • 自動でのスケールアウト・スケールアップに対応 • ロードバランサも付いてくる •

    スケールアウト時の中断時間はほぼ無い(一瞬止まる程度で、アクセスした人に50xエラーは ほぼ出ない) • n台スケールアウトしても、ストレージ領域は同じ場所を読んでくれる • /home は各インスタンスで共通してマウントされる • WordPressだと、wp-contentフォルダの扱いを気にしなくても良い • コンテナもデプロイ出来る • Dockerコンテナをデプロイ対象として選択出来る。 • Docker Hubからもイメージを取得可能
  18. App Service(Web Apps)のすごい所 • 本番環境とステージング環境を同時稼働させ、切り替えることが出来る • ステージング用・本番用のスロット(gitリポジトリ)がそれぞれ用意され、検証環境を用意 することが出来る。 • ステージング用と本番用で、同等のインスタンスを勝手に用意してくれる

    • ステージングで問題無ければ、スロットをスワップすることで、そのまま本番環境に 差し替えが出来る staging.example.com 検証用 example.com 本番用 開発者 一般ユーザー staging.example.com 検証用 example.com 本番用 一般ユーザー スワップ!!! 検証環境での 動きも 確認出来た! リリースしよう!
  19. 使える言語 • 対応言語 • PHP(5.6~7.3) • Ruby(2.3~2.6) • Java(11と8) •

    Node.js(4.4~10.14) • Python(2.7と3.6・3.7) • .Net Core(1.0~2.2)
  20. ハンズオンもやります! • 今日はハンズオンも用意しています!

  21. Let’s Azure!