Azure104の過去問を解きつつメモ
Azure Storage
Azure のクラウドストレージサービス
ストレージアカウント
Azure Storage を利用するために必要なリソース
ストレージアカウントの種類
- Blob サービス
- ファイルサービス
- 「Azureファイル共有」や「Azure Files」と呼ばれているのは、ストレージアカウントのファイルサービスのこと
- テーブルサービス
- キューサービス
ストレージアカウントへのアクセス制限
ポータルのファイアウォールと仮想ネットワークブレードで下記のいずれかを行う
- [仮想ネットワーク]で、アクセスを許可したい特定の仮想ネットワークを選択する
- [アドレス範囲]で、アクセスを許可したい特定のIPアドレスの範囲を指定する
レプリケーションの種類
- ローカル冗長ストレージ(LRS)
- 同じデータセンター内の3つの物理ディスクでデータを複製
- ゾーン冗長ストレージ (ZRS)
- 同一リージョン内の異なるデータセンターの3つの物理ディスクでデータを複製
- 汎用 v2 Storage のみサポートしている
- geo 冗長ストレージ (GRS)
- 同一リージョン内のデータセンターの3つの物理ディスク、ペアとなる異なるリージョンの3つの物理ディスク、計6か所でデータを複製
AzCopy
オンプレミスとAzure Storageでデータ交換をする方法の1つ。
AzCopy を使用してオンプレミスのデータをクラウド ストレージに移行する
ファイルとBLOBのみが対象。テーブルとキューのコピーはできない。
AzCopyの認証
Blob storageは、共有アクセス署名とAzure AD
File storageは、共有アクセス署名のみ
データのアクセス層
- ホット、クール、アーカイブ
- 汎用v2 storageとBlob Storageでサポートされる
ライフサイクル管理ポリシーの構成
- Blodデータのアクセス層に期間の指定が可能
- 例えば、作成して60日が経ったらアクセス層をクールに変更し、半年が経過したらアーカイブに変更し、1年経過したら削除するなどの指定が可能
- 汎用v2 storageとBlob storageで利用可能
- v1とFile Storageでは利用できない
Recovery Services コンテナーとは?
Azure Backupサービスでバックアップしたデータが保存される場所
Recovery Services コンテナーを削除する
削除したいRecovery Services コンテナーが既にバックアップデータを保持している場合、削除できない。一旦バックアップを停止した上で削除する
注意点
- 各Recovery Services コンテナーには、最大1,000の仮想マシンをバックアップできる
- Recovery Services コンテナーのリージョンとバックアップ対象の仮想マシンのリージョンは同じである必要がある。別リージョンの仮想マシンをバックアップする場合は、新しく Recovery Servicesコンテナを作る
仮想マシンの復元方法
- バックアップデータが保存されているRecovery Services コンテナーを選択
- 復元する日時を選択
- Recovery Services コンテナー内には、複数の日時のバックアップデータが保存されている。その中から復元したい日時のデータを選ぶ
- スクリプトをダウンロードする
- ファイルの復元
可用性セット
仮想マシンを作成するときに事前に作成した可用性セットリソースを割り当てる形で使用する
更新ドメイン
- 仮想マシンを配置するサーバの数を指定できる。最大20
- Microsoftが行う計画メインテナンスでは、この更新ドメインごとにAzureホストのアップデートが行われる。そのため、更新ドメインを複数指定しておけば、片方のドメインが所属するAzureホストでアップデートが行われてVMの再起動が起きても、もう一方のドメインが動作しているため問題ない。
障害ドメイン
- 仮想マシンを配置するサーバラックの数を指定できる。最大3
- 同じ電源を共有している範囲。これを分けることで、特定のサーバラックで障害が起きた時の可用性が向上する
Azure ファイル共有
ストレージアカウントの4種類のサービスの中のファイルサービスのこと。
Azureファイル共有とかAzure Filesとか呼び方がバラバラで別物かと思った。
Azureの監視ツールの整理
Azure Monitor
Application Insights
- Webアプリケーションに特化した監視サービス
- アクセスやパフォーマンスなどを見ることができる
Azure Log Analytics
Azure上で取得する監視データを収集して分析したい時に使う
AzureKubernetes Service(AKS)
Azureで、Kubernetesでコンテナのデプロイや管理を行うサービス
YAMLファイルをAKSにデプロイする方法
kubectl apply -f <ファイル名>
- ファイルには、コンテナイメージなどを指定したYAMLファイルを指定する
- kubectlは、Kubernetes用のコマンドラインプログラム
- 事前に、Install-AzAksKubectlコマンドやaz ask install-cliなどでインストールしておく
Azure Key Vault
パスワードなどの機密情報を管理するためのサービス
ARMテンプレートでKey Vaultを使う
ARMテンプレートには、パスワードなどの機密情報を直接記入しない。
代わりにKeyVaultを記載しておいて、テンプレートが実行される時にKeyVaultに機密情報を取得しに行くようにする
App Service プラン
- App Service プランを作成するのは、仮想サーバを1台作る(借りる)イメージ。
- 作成時には、サーバのスペック(CPUやメモリ)とインスタンス数を決める。
- このサーバ上で、App Service(Web Apps/API Appsなど)やAzure Functionを動かすことができる。
SKU
Free,Shared,Basic,Standard,Premium,Isolated
リージョンとの関係性
- App Service プランのリージョンとそのプラン上で実行されるアプリのリージョンは同一でなければならない!
OSとの関係性
- App Serviceプラン作成時に、OSを選択する必要がある
- 1つのApp ServiceプランにWindowsアプリとLinuxアプリを混在させることはできない。OSが異なる場合はそれぞれのアプリ用に、App Serviceプランが必要
App Service
デプロイスロット
- 1つのアプリケーションの複数のバージョンを同時にホストできる
- 1つには現在のバージョンを公開しつつ、もう1つではテスト用に新しいバージョンを公開するような使い方が可能
- スワップ操作することで、ダウンタイムなしでバージョン切り替えができる
- 新しいバージョンで不具合が見つかった場合、即、元のバージョンに戻せる
-
SKUがStandard以上のApp Service プランで使用できる
- Free,Shared,Basicの場合は使用できない
カスタムドメインの追加
- App ServiceのWeb Appsのデフォルトのドメイン名は、<****.azurewebsites.net>
- カスタムドメイン追加も可能
- その場合は、DNSレコードを作成する
- Aレコード(またはCNAMEレコード)
仮想マシン
- AzureデータセンターにあるHyper-Vベースのホストサーバーが、Windows or Linuxの仮想マシンを実行している
再デプロイ
- 仮想マシンが再デプロイされると、現在仮想マシンを動かしているホストサーバー(Azureデータセンターにある)から別のホストサーバーに移動する
- 一時ディスクは失われる
- 仮想ネットワークインターフェイスに関連付けられている動的IPアドレスが更新される
仮想マシンを仮想ネットワーク(VNet)に接続する
- 仮想マシンを作成するとき、VNetを新規作成するか既存のVNetを選択する必要がある。
- VM作成後は、接続されているサブネットを変更することはできるが、VNetは変更できない。
- そのため、別のVNetにVMを接続し直す場合は、VMを削除して、再作成してから再接続する必要がある。
Network Watcher
ネットワークの状態やパフォーマンスについて調査できる
NSGフローログ
NSG(ネットワークセキュリティグループ)を通過するネットワークトラフィックをログに残せる
- JSON形式のテキストログとして、ストレージアカウントに残る
- 通信の発生した時間
- 発信元&宛先IPアドレス
- 発信元&宛先のポート
などが分かる
NSGフローログの使い方
- ポータルでNetwork Watcherを有効化
- Microsoft.Insightsプロバイダーの登録
- NSGフローログを有効化
仮想マシンスケールセット
負荷に応じたVMインスタンスの増減やロードバランサーの作成の自動化など、仮想マシンのリソースの自動管理ができるサービス
仮想マシンスケールセットをできるだけ早くデプロイしたい場合
仮想マシンスケールセットオーケストレーションモードに設定されている"仮想マシンスケールセット(ScaleSetVM)"を選択する
オーケストレーションモードで、スケールセットではなく仮想マシン(VM)を選択すると、空のスケールセットセットに別途作成した仮想マシンを追加するので最速ではない。
AzureAD デバイス管理
Azure ADではユーザーだけではなく、デバイスも管理できる。
あるユーザーが特定のデバイスを通してのみ、AzureADにログインさせるような制御も可能
Azure ADにデバイスを参加
AzureADに参加しているデバイスで、デフォルトでローカル管理者権限を持つのは、
- Azure ADのグローバル管理者
- デバイスの所有者(AzureAD参加を行ったユーザー)
リソースやリソースグループのロック
読み取り専用ロック
- リソースを読み取り専用にし、変更・削除はできない
- リソースグループの場合、そのリソースグループに新しいリソースを作成できないし、削除もできない
削除ロック
リソースを読み取りできるし、変更もできる。削除だけできない
なお、リソースグループのロックは、リソースにも継承される
ロックとリソースの移動
ロックの種類によっては、リソースを別のリソースグループに移動できない場合がある。
ロックできないのは、
- 移動元のリソースグループに読み取り専用ロックが設定されている場合
- 移動先のリソースグループに読み取り専用ロックが設定されている場合
注意点としては、
- 削除ロックは、移動には影響しない
- リソースのロックも移動には影響しない
こと
タグ
リソースやリソースグループに任意に割り当てることができる"名前:値"のペアで構成される付加情報
試験で問われやすいのは、リソースグループに付与されたタグは、そのリソースグループ内のリソースに継承されないということ。サブスクリプションやリソースグループに割り当てられる"ポリシー"で設定されたタグはリソースに継承される。
Azure AD
ユーザーを作成できるロール
- グローバル管理者
- ユーザー管理者
これらのロールは、テナントごとに独立している。
Azure ロードバランサー
リージョン内の複数の仮想マシンに負荷を分散したい時に使われる
セッション永続化
同一IPアドレスのクライアントからのリクエストは、同一のWebサーバに処理させる設定
ネットワークセキュリティグループ
- VMが送受信するパケットを制限する、簡易のVM用ファイアウォール
- リソースとしてネットワークセキュリティグループを作成し、サブネットやネットワークインターフェースに割り当てる形で使う
- 割り当てるサブネットやネットワークインターフェースとネットワークセキュリティグループのリージョンは同一である必要がある