クラウドの概念について理解する | 15~20% |
コアAzureサービスを理解する | 30~35% |
セキュリティ、プライバシー、コンプライアンス、信頼性について理解する | 30~35% |
Azureの価格体系とサポートについて理解する | 25~30% |
クラウドの概念
クラウドの利点
クラウドの持つ利点は以下の5つ。- 高可用性(アベイラビリティ)・・・いつでも使える
- スケーラビリティ・・・どこからでも、どこのサーバーも使える
- 弾力性・・・大きさを変えられる
- 俊敏性・・・即座位に変更が
- フォールトトレランス・・・予備を用意しておいて一部故障しても大丈夫
クラウドの種類
- パブリッククラウド・・・AWSとかMSとかgoogleが公に提供している誰でも使えるクラウド(OpeExのみ)←簡単に拡張できて、使わなくなったら縮小できるのが最大の利点、さらに物理的なサーバーの保守もやってくれる。
- プライベートクラウド・・・どこかのベンダーのデータセンターに専用のサーバーを用意してもらう(そこそこのCapExが必要、ハードの種類やセキュリティを指定することもできる)。オンプレも含む。Azure互換のオンプレ環境を提供するAzure Stackというサービスもある。
- ハイブリッドクラウド・・・セキュリティに応じて上の2つを組み合わせる←プライベートからもパブリックからも移行は可能。
IaaS、PaaS、SaaSと共同管理
IaaS、PaaS、SaaSは管理責任が違う。
- Iaasは仮想化までOSからはユーザー責任を持って管理←柔軟性が最も高い
- PaaSはランタイム、OSまで、データ、アプリケーションはユーザー責任←開発に集中できる
- SaaSは全部ベンダー側が責任をもって見るけど、セキュリティの設定はユーザーが行うところもある
コアのAzureサービス
リージョンとリソース
リソース・・・複数あるAzureのサービスの実体(仮想マシン、仮想ネットワーク、ストレージアカウントなど物理的に存在するものもしないものもMSから借りるものはすべてリソースと呼ばれる) リージョン・・・物理的に存在するAzureのデータセンターに地域的なまとまり、ユーザーはVMをデータセンターやラック単位で指定できないが、このリージョンで自分のVMが展開される大体の地域を指定できる。
VMの作り方


リージョンとAZ

リソースグループ
リソース(VNなど)は1つのリソースグループに所属する。一括管理する機能と、ユーザーの権限を制限(RBAC※セキュリティで説明)する機能がある。 Azure PortalやCLIからの命令はAzure Resource Manager(ARM)に行くが、ARMは認証(AAD※これもセキュリティで説明)に問い合わせてリソースグループに対してユーザーの権限的に正しい命令か判断してからリソースに変更を加える。 リソースグループは一つのサブスクリプションに属している。リソースからサブスクリプションまで基本下位の要素が上位の一つの要素に対応していて、階層構造をとることはないので、リソースグループが複数のサブスクリプションに属するのは不可能。サブスクリプション間の移動は可能。
ARMテンプレート
リソースの構成を文章化(JSON)してテンプレートに保存するもの。テンプレートをARMに読み込ませることで自動でその通りのリソースを展開してくれる。 個人的に以前使ったとき、設定項目があまりにもおおくてわけわからんとなったが、ARMテンプレートのテンプレートが一から人間が書くものじゃないらしい。 ARMを操作する方法はAzure portal、ARMテンプレート以外にもたくさんある(Azure管理ツールで説明)。
Azureコンピューティングサービス
Azure VM・・・仮想マシンを運用 VM Scale Sets・・・同じVMをセットで提供 App Services ・・・PaaSでコードだけをデプロイ。自動でどっかサーバー上でプログラムが動く Azure Functions・・・同じくPaaSでプログラムをデプロイ(App ServicesとAzure Functionsは今流行りのサーバーレス) Azure Container Instance・・・提供されたコンテナエンジンにコンテナをデプロイできるサービス。 Azure Kubernetes Service・・・クーバネティスが使える。 Azure Virtual Network・・・仮想ネットワークとサブネットを提供する。リージョンをまたいで複数のリソースを展開したとしても、まるで一つのLANに存在しているように一つのipでまとめるという理解。この仮想ネットワークをオンプレ環境やプライベートのネットワークとVPNでつなげることも可能 Azure Load Balancer・・・ロードバランサー。外部からアクセスを先頭で受け取ってL4のpoer番号を読み取って適切なリソース(VM)に仕事を割りふる。 VPN Gateway・・・サブネット上にVPN Gatewayを配置してAzure Virtual NetworkとオンプレのネットワークをVPNで接続する例が紹介されてた。 Azure Application Gateway・・・WAF。L7でのルーティング?の話も紹介されてた。 Content Delivery Network・・・動画などの重めのファイルをインターネット上のVMとは別の場所から送信できるファイルの置き場所。Azure Storage サービス
IaaS ディスク・・・VMの永続ディスク。プレミアムストレージなどがある ファイル・・・ファイル共有。SMB(Windowsのファイル共有プロトコル)やREST(HTTPでファイルをやり取りする)でファイルを共有できる。 PaaS コンテナ・・・BLOBと呼ばれる。非構造データでテキストファイルもしくはバイナリファイルを保存する。 テーブル・・・NoSQLデータ。構造化データ。スケーリング機能アリ キュー・・・数珠つなぎでメッセージを保存する。連続したリクエストをアプリケーションが順番に処理するために一時的に保存する。 Azure ストレージアカウントではプライマリリージョン内でデータが3つにコピーされて、同期的に維持される。Azureのソリューション(PaaS、SaaS)
IoT関連
Azure IoT Central・・・Azure IoT Central Application ManagerでポチっとIoTデバイスを管理できる。 Azure IoT Hub・・・離れた箇所にある二つのIoTのデバイスの間を取り持つ。ネットワークを通じて安全かつ安定な通信を可能にする。 IoT Edge・・・複数のAIエッジデバイスにモデルを同時にデプロイするためのサービス。構造化データ保存先(Azure Database Service)
Azure Cosmos DB・・・リージョン超えて全世界から高速でアクセスでき、自動でスケールアウトできる講師の人一押しの高性能DB Azure SQL Database・・・Microsoft SQL Serverで動くRDB(PaaS) Azure Database Migration・・・オンプレから自動でAzureにDBを上げるためのツール Azure Databricks・・・Apache Spark環境を提供ビックデータ関連
Azure SQL Data Warehouse(Synapse Analytics)・・・データベースとPyhtonやScalaなどによるデータ分析がセット。 Azure Data Lakeとの連帯が可能で、ビックデータをSQLを用いて解析することが可能。 HDInsight・・・Hadoop、Spark、kafkaなどでデータ解析できる。 Azure Data Lake Analytics・・・ペタバイト級のデータを解析機械学習関連
Azure Machine Learning service・・・Pythonでメジャーなライブラリを動かして機械学習 Azure Machine Leaning Studio・・・Azure MLをGUIで操作しながら機械学習できるAzure portalとは独立したwebサイト。共同編集のためのプラットフォームでもある。サーバーレス関連(サーバーの管理しなくていい)
Azure Function・・・コードをだけをデプロイするだけでAPIなどの機能を実装 Azure Logic Apps・・・サーバレスかつコードレスでAPI実装 Azure Event Grid・・・さまざまなAzureのリソースをイベントトリガーとして、Azure Functions、Power Automateを動かす仕組み。DevOps関連
Azure DevOps Services・・・ Azure DevTest Labs・・・自動で結果を返してくれるテスト環境を実装。仮想マシン(VM)やその他のPaaSリソースを効率的に管理できる。 Azure Repos・・・gitのレポジトリAzure管理ツール
Azure Portal・・・Azureのアカウント作ったら最初に行くところ、ぽちっとリソースを管理、設定できる。 Azure PowerShell&CLI・・・コマンドでかっこよく管理できる。模擬試験でAzure PowerShellはubuntuやmacで使用できるかという問題が出るがインストールすれば使用可能。 Azure Cloud Shell・・・portal上でCLI使える Azure mobil app・・・個人的にVMの立ち上げ立ち下げに便利 Azure REST API・・・APIをたたいてARMを直に操作 コンプライアンス マネージャー・・・ISO27001などの基準を順守できているかスコアで確認できる。 Azure Adiviser・・・可用性とかセキュリティとかコストを評価してくれる 二日目セキュリティとコンプライアンス
ゼロトラスト・・・これまでの境界で守る考え方から、性悪説ですべてのトラフィックを監視する考え方。 共有責任・・・セキュリティの設定はクラウドのベンダー(Microsoft)とユーザーが責任を共有して行う。IaaS、PaaS、SaaSによって範囲は異なる。 Azure Firewall・・・WAFとは異なりすべてのプロトコルで攻撃からサービスを守る。DDoSはしたのDDoS保護がおこなうのでAzure Firewallとは別機能となっている。 DDoS保護(Azure DDoS Protection Standard)・・・DDoS保護はデフォルトでついてくる。攻撃のログやレポートが欲しい場合は課金が必要 ネットワークセキュリティグループ・・・サブネットやNICを守るシンプルなファイヤーウォール。外部から接続可能なIPやportの設定、プロトコルの監視ができる。Just In TimeやAzure Bastionといった機能も提供する nic・・・デバイスがインターネットにつながるための部品(カード)認証と認可
認証された人にアクセス権を付与することを認可(承認)するという Azure Active Directory(Azure AD)・・・インタネット上の不特定多数のipに存在するデバイスを認証しアプリケーションにアクセスするために認可をする。一度AADに認可されてしまえば紐づけられたサービスをシングルサインオンでアクセスできる。アクセス権がない人を一時的に招待することも可能。BtoC向けにSNSのidでADDで認証する機能もある。ユーザーの要求に対して正しい場合は毎回トークンを発行し、ユーザーはそのトークンをアプリケーションにもっていくことでサービスを利用できる。 Synchronization Service Manager・・・オンプレミス AD 上のユーザー情報を利用して Azure AD 上のアプリケーションを利用可能にする無料の同期ツール。GUIアプリとして、Azure AD ConnectによるAD間の同期状況を確認できる。 Identity Protection・・・匿名IPアドレスを使用してインターネットから署名するユーザーは、パスワードの変更を求めることができる。そのほかに海外からのアクセスや匿名IPなどに対しても指定したポリシーを適応できる。- ID ベースのリスクの検出と修復を自動化します。
- ポータルのデータを使用してリスクを調査します。
- 詳細な分析のために、サードパーティ製ユーティリティにリスク検出データをエクスポートします。
監視とレポート
タグ・・・所有者や所属などをタグ付けすることができる。ポリシーによってタグ付けを強制することもできる。すべてのリソースはタグによって管理することもできるし、利用額などをタグごとに監視することもできる。 Azure Monitor・・・Adviser、Security Centerにならぶ第3の監視ツール。パフォーマンス(CPUの使用率やストレージの容量)、イベント(VMの作成削除など)のログを可視化しアラートを出すこともできる。アプリケーションのエラーやボトルネックなども見れる(App insights)。 Azure Service Health・・・サービスの正常性をモニタリング Azure Advanced Threat Protection(ATP)・・・Azureネットワーク全体のユーザーアクティビティを監視し不正アクセスなどの脅威を検出することができる。 Azure Log Analytics・・・あらゆるリソースからあらゆる情報を集めてダッシュボードに表示。 Compliance Manager・・・組織のコンプライアンス要件を管理し、さまざまな基準や法律へのコンプライアンスを追跡することができる。 マイクロソフトが準拠しているコンプライアンス- アメリカ国立標準技術研究所(NIST)
- CJIS
- HIPAA
- ISO
- GDPR
料金とサブスクリプション
一人のユーザーが複数のサブスクリプション持つことは可能 Pay as you go・・・使った分だけ翌月支払い Enterprise・・・企業と年間契約 Student・・・学生が安く使える この他にフリーアカウントがある。サブスクリプションの階層
それぞれのサブスクリプションは管理グループに所属している。管理グループも階層構造を持ち、上位の管理グループにポリシーを適応していけば下層のサブスクリプションを含めたリソースに適用される。 階層構造をとれるのは管理グループだけ CSP・・・ソリューションプロバイダーによって提供されたリソースはプロバイダーを通じて請求されることもある VMを予約して料金を前払いすると割引料金で使える。コスト
コストに影響を与える要因・・・リソースの種類、サービス、場所、ゾーン ゾーン・・・可用性ゾーンとは関係ない。サービスのデプロイによってAzure内で通信が発生した場合、ゾーンの組み合わせによって通信費を課金するための概念。例えば東日本と中南米間で通信した場合お互いのゾーンの組み合わせに決まている料金が請求される TCO計算ツール・・オンプレミスのデータセンターではなく、Azure でソリューションを運用した場合の、時間の経過に伴うコストを見積もることができます。 TCO計算ツールを利用してAzureを利用したコストとオンプレミス環境とのコスト比較が実施できます。 コストの最小化・・・実行→モニター→使用→選択→最新情報→選択 Cost Manager・・・使用者、目的、タグごとにコストを分析して今後のコストを予想することができる。また、あらかじめ決めた閾値を超えるとアラートを出すことができる。サポート
サポートとして複数のサービスが存在し、サブスクリプションのランク(課金額)によって使用できるサービスが異なる。