「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。

-[[戻る>Azure]]
--[[Azureの仮想ネットワーク]]
--[[Azure Virtual Data Center]]

* 目次 [#g9cd79e0]
#contents

*概要 [#mf446bfe]
Azureの仮想マシン

*詳細 [#l95950a7]

**構成 [#oe1c6c9d]
複数のリソースから構成される。

***仮想マシン自体 [#oddb0fbf]
-冗長化されていない。
-[[冗長オプション>#f9341dd6]]などを用いる。

***[[ディスク>Azureのディスク ストレージ]] [#g4e1417d]
-基本、[[管理ディスク>Azureのディスク ストレージ#v086e7a2]]を使用し、[[課金に注意する>#h2e8ed3d]]。

-システム・ドライブ~
Cドラのシステム・ドライブ
--[[管理ディスク>Azureのディスク ストレージ#v086e7a2]]のPremiumなど。
--ローカル・ディスクと比べ若干遅い。

-データ・ドライブ

--ローカル・ディスク~
Dドラのローカル・ディスクは、
---ローカル SSDなので高速にアクセス可能。
---ページング・ファイルなどでも利用される。
---ただし、障害発生時、データは削除される。

--データ・ディスク~
Eドラ以降のデータ・ディスクは、
---ライト・キャッシュを消して使用する。
---[[管理ディスク>Azureのディスク ストレージ#v086e7a2]]のUltraなど。
---DBのデータ・ファイル、トランザクション・ログ・ファイルなどを保存。

-共有ディスク~
クラスタ化ではS2D(=ソフトウェアベースの共有ディスク)を利用

***NICとIPアドレス [#oc571d8d]
-NIC
--通常、1枚挿し+[[NSG>#t55ac311]]。2枚挿しも可能だが、~
[[VPFでのエミュレーション>Azureの仮想ネットワーク#ud86d249]]で物理的に堅牢にはならない。
--使用不可([[ネットワークの仕様上の問題>Azureの仮想ネットワーク#ud86d249]])
---[[NLB]]
---[[MSCS/WSFC]]

-IPアドレス
--パブリックIPアドレスは別のリソース
--[[プライベートIPアドレスは既定でDHCPで割り当てられる。>#t1ce7c44]]

***Guest VM Agent [#a1d3e45f]
ポータルからの

-インストール
-コマンド実行

などを行うことが出来る。

***その他 [#t55ac311]
-[[NSG>Network Security Group (NSG)]]
-[[GW / LB的なモノ。>AzureのGW / LB的なモノ。]]

-診断ログ~
ストレージ → Azure Monitor、Log Analytics

**課金 [#f5d72db5]
|状態|仮想マシン|ディスク|ライセンス|h
|開始中・実行中|>|>|CENTER:課金される|
|停止済み(Stopped)|>|CENTER:課金される|課金されない|
|割当解除済み、削除済み(Deallocated)|課金されない|課金される|課金されない|

***仮想マシン費用 [#yf9e9b52]
-仮想マシンのノード割り当てが解除されない限り、課金が継続する。
--シャットダウンでは課金される。
--シャットダウンはOSからではなく~
必ずポータルサイトから行い、割り当て解除する。

-EA 契約のコミットメント額資金(MC : Monetary Commit)から減算される

***[[ディスク費用>Azureのディスク ストレージ#ffcb1028]] [#h2e8ed3d]

***ライセンス費用 [#x999b94b]
-BYOL : Bring Your Own License
--ライセンス持ち込み
--Azure 側では課金されない

-PAYG : Pay As You Go
--マーケットプレイスのイメージ
--時間課金、月課金(日割りなし)などがある。

--2タイプ

---Azure 用の、SKU が存在するマイクロソフト製品~
・EA契約のMCから減算される([[仮想マシン費用と同じ>#yf9e9b52]])。

---Azure 用の、SKU が存在しないマイクロソフト製品、3rd party 製品~
・EA契約のMCから減算されず、~
 EA契約の超過料金として扱われる。~
・VLのディスカウントの対象にならない。~
・四半期ごとの請求書一括請求になる。

---

--必ずマーケットプレイスの Web ページから確認
---Microsoft Azure Marketplace~
https://azuremarketplace.microsoft.com/ja-jp/marketplace/


**IPアドレス [#t1ce7c44]

***[[DHCPとDNS>Azureのアウトバウンド設計#a53e987e]] [#dd3a9d8e]

***IP固定 [#t9a83dfe]
-ポータルからDHCP機能を使用して固定する。
-[[Azureで把握する必要があるのでOS上からIPアドレスを固定しない。>Azureの仮想ネットワーク#ud86d249]]
-このシーンは、比較的少ない([[インバウンドは、基本的に、ILB経由なので>AzureのGW / LB的なモノ。]])。

**日本語化 [#rb4d4b9c]

***OSの日本語化 [#ue46253f]
-[[日本語化作業>https://dotnetdevelopmentinfrastructure.osscons.jp/index.php?VM%E8%B5%B7%E5%8B%95%E5%BE%8C%E3%81%AE%E9%96%8B%E7%99%BA%E7%92%B0%E5%A2%83%E3%81%AE%E3%82%BB%E3%83%83%E3%83%88%E3%82%A2%E3%83%83%E3%83%97%EF%BC%88Windows%EF%BC%89#f62d73e9]]は面倒なため、
-極力、英語版のまま利用することを推奨

***ミドルの日本語化 [#l33e9655]
-[[BYOL>#x999b94b]]
--[[OSの日本語化>#ue46253f]]
--日本語メディアを持ち込んでインストール

-[[PAYG>#x999b94b]]~
かなり厄介
--[[OSの日本語化>#ue46253f]]
--アンストールしてプロダクトキー入手
--日本語メディアを持ち込んでインストール

**ダウンタイム最小化 [#b0214fae]

***ハードウェア障害 [#ef7a5327]
-突発的な故障~
[[サービス・ヒーリング>#m3fbd284]]

-予測に基づく保守~
[[サービス・ヒーリング>#m3fbd284]](10分前通知)

***メンテナンス [#y1bb1953]
-VMのメンテナンス~
ユーザが実施する。

-ホストのメンテナンス

--ゲストへの影響なし~
通知なく実施

--ゲストへの影響あり
---30秒以内で完了 → 15分前通知(PHU : Preserving Host Update)
---30秒異常必要 → 30日前に通知(一定期間内に手動再起動)

***サービス・ヒーリング [#m3fbd284]
仮想マシンが故障した場合でも、[[前述の構成>#oe1c6c9d]]から、~
[[データ・ドライブ > ローカル・ディスク>#g4e1417d]]以外を除いて、壊れない。
-15秒単位の死活監視
-10分応答がない場合、自動リカバリ(別ノードへ移動)される。

**冗長オプション [#f9341dd6]
仮想化レイヤーより下の構成

|#|構成|要素|h
|1|シングルVM|サービスの復旧&br; (Service Healing)|
|2|クラスタ構成|可用性セット&br;・VM Scale Sets&br;・ロード・バランサ Basic|
|3|マルチAZ構成&br;(Availability Zone)|可用性ゾーン&br;・ゾーン冗長 VM Scale Sets&br;・ロード・バランサ Standard|
|4|マルチリージョン構成|・ペアリージョン&br;・Traffic Manager|

※ 可用性セットと可用性ゾーンは「AND」ではなく「OR」。

***クラスタ構成 [#d289b030]
-可用性セット(AS)
--[障害ドメイン]や[更新ドメイン]を分ける事により、可用性を高める。
---障害ドメイン:共通の電源やネットワーク機器などを共有する範囲
---更新ドメイン:Azureのメンテナンスリブートの際に影響を受ける範囲

--1つのラック障害で2台の仮想マシンが同時に停止することを回避できる。
---故に、サーバー・ファームを構成するとき、複数ラックに渡って冗長化して配置する。
---可用性セット自体にクラスタリング・負荷分散データ複製などの機能がある訳ではない。

-ロード・バランサ
--仮想マシン間で着信トラフィックを分散
--詳しくは、[[Azure Load Balancer>AzureのGW / LB的なモノ。#o57521ef]]を参照(Standard)。

***マルチAZ構成 [#s5c52819]
-可用性ゾーン(AZ)
--可用性ゾーンを分ける事により、可用性を高める。
---リージョン内の各種ハードウェアが分離されたゾーン
---リージョン内に、3つ以上のに可用性ゾーンが存在する。

--1つのDC障害でDC中の仮想マシンが同時に停止することを回避できる。
---サーバー・ファームを構成するとき、複数DC群に渡って冗長化して配置する。
---可用性ゾーン自体にクラスタリング・負荷分散データ複製などの機能がある訳ではない。

-ロード・バランサ
--仮想マシン間で着信トラフィックを分散
--詳しくは、[[Azure Load Balancer>AzureのGW / LB的なモノ。#o57521ef]]を参照(Standard)。

***マルチリージョン構成 [#d61e1513]
-ペアリージョン~
リージョン ペアの間で事業継続とディザスタ・リカバリ (BCDR) を構成
--複数リージョンにまたがって構成することで地理的に冗長化
--災害でリージョン中の仮想マシンが同時に停止することを回避できる。

-ロード・バランサ~
DNSベースの機能を利用した[[Traffic Manager>Azure Traffic Manager]]での切り替え。

***注:AZをミニリージョンとして使用しない。 [#j9d74a5a]
-AZはミニリージョンとしては機能しないため。
-AZは、ティアに渡って使用する。

>※ ティア:水平方向のサーバー・ファーム(Web、AP、DBと言う集合)

-理由

--AWSではサブネットは特定のAZに固定される。~
故に、AZをミニリージョンとして使用できる。
---サブネット中に垂直・水平方向のサーバー・ファームを構成し、AZで冗長化していく。
---このように構成すると、サブネット単位での設計が可能になる。

--Azureでは、サブネットは特定のAZに固定されない。~
故に、AZをミニリージョンとして使用できない。
---水平方向のサーバー・ファームを構成し、AZで冗長化していく。
---このように構成すると、AzureのAZの特性からPaaS、SaaSと組み合わせ易くなる。

***注:Azure Backupする場合、AZにピン留めしない。 [#w9f5279f]
-[[Azure Load Balancer>AzureのGW / LB的なモノ。#o57521ef]]は、負荷分散とピン留めの選択が可能。

-シングル構成DBのバッグアップ・リストア運用のシナリオ等で、
--AZにピン留めされたサーバは、LBを使用しないでアクセスできるが、
--Azure Backupでリストアする場合、ピン留めゾーンに復元しようとするため、機能しない。

**セキュア化とロックダウン [#l5f9cc7c]

***作業内容の安全性の確認 [#pf76b919]
-入力制御(インバウンド)

--[[仮想ネットワークの入力制御>Azureの仮想ネットワーク#b6ebaa2e]]も参考にする。

--経路開放


---AzureポータルやCLI、[[Guest VM Agent>#a1d3e45f]]~
---AzureポータルやCLI、~
[[Guest VM Agent>#a1d3e45f]]~
経路開放は、不要。

---RDP / SSH(OS内)~
・[[オンプレ延伸>FgCF (Financial-grade Cloud Fundamentals)#aed3c834]]からのアクセス。~
・[[Azure Bastion]]からのアクセス。~
・踏み台(Jumpbox)は危険なので、~
 JIT VM Accessと言う機能もある。

---インバウンド~
・[[AzureのGW / LB的なモノ。]]~
・その他、OS内部のFirewallなど。

--認証・認可
--認証・認可~
VMにAzAD認証でログインする機能。
---[[Azure Active Directory]]認証を使用し、[[RBAC>Role Based Access Control (RBAC)]]の権限制御でログインを可能にする機能。
---前提OSのイメージを使用しポータルから当該機能を有効化して作成する必要がある。
---基本的に、サーバーに対してではなく、踏み台(Jumpbox)に対して使用する。
---参考:Azure Active Directory (プレビュー) を使用して~
Azure 内の Windows 仮想マシンにサインインする | Microsoft Docs~
https://docs.microsoft.com/ja-jp/azure/active-directory/devices/howto-vm-sign-in-azure-ad-windows

-ハードニング(クライアント or サーバ)

--アンチ・マルウェア(OS)

---不正なディスク・イメージを利用しない

---アンチ・マルウェア・ソフトをインストールする~
・Linux OS :ClamAV~
・Window OS : Windows Antimalware(無償)~

---仮想マシンの脅威検出や振る舞い監視を行う~
[[Azure Security Center]](ASC)の VM 監視機能(VM Insights)

---更新プログラムが正しく管理されている~
・更新プログラムの自動展開スケジュールの構成~
・上記のVM 監視機能(VM Insights)の更新管理機能(Update Management)~

--アンチ・マルウェア(ミドル・アプリ)

---ミドルウェア、アプリの挙動が監視監視方法について検討する~
・ミドルウェア:JP1、Datadog~
・アプリ:[[Application Insights]]

---必要に応じてファイルやレジストリの変更検知を行う

---適切なアプリのみが配置されるようになっている([[DevOps]])

---必要に応じて許可されたアプリのみを実行するようにサーバを構成する~
[[Azure Security Center]](ASC)の Adaptive Application Control 機能

--無効化機能
---非管理ディスクを使わない
---確認が取れていない(=許可されていない)拡張機能を使わない

--高額請求抑止
---巨大な VM サイズを利用しない。
---自動的な起動 / シャットダウンが正しく構成する。
---スケールアウト / スケールインのルールを正しく構成する(VMSS)。
---ライセンス費用~
・追加ライセンス費用が必要な VM イメージを利用しない~
・BYOL が正しく構成されている(AHUBの設定など)

--透過的暗号化

---ディスクの暗号化~
・[[ストレージは低レベルでは暗号化されている>Azureのストレージ#i1151b2e]]ので、基本的には不要。~
・必要に応じADE(Advanced Data Encryption)により管理ディスクを暗号化できる。~
 ・Windows OS では BitLocker、Linux では DM-crypt。~
 ・主に内部犯行防止のタメだが、操作権限によっては無意味。~
 ※ また、バックアップ・リストアが複雑化する。

---メモリの暗号化~
Confidential Computing

-出力制御(アウトバウンド)

--[[仮想ネットワークの出力制御>Azureの仮想ネットワーク#b6ebaa2e]]も参考にする。

--経路制限

---アウトバウンド~
・[[Azureのプロキシ的なモノ。]]~
・[[SNATポートの枯渇問題>Azureの仮想ネットワーク#lc0ca5af]]

---各種の拡張機能のVM エージェントが利用する経路~
・経路開放が不要(基盤経路)~
 ・ブート診断~
 ・[[Azure Backup]]エージェント~
・経路開放が必要(一般経路)~
 ・Azure Diagnostics(WAD/LAD)~
 ・VMインサイト(MMA/[[Log Analytics]] Agent)~
 ・[[Application Insights]]

***変更・保守、作業の一覧化 [#b902c914]
-VMの主なメンテナンス作業と、必要な権限付与~

--多くの作業は「Virtual Maschine Contributor」ロールが必要で、

--ネットワーク設定が必要な作業は、高権限である、~
「Network Contributor」ロールが必要になるので要注意。~

--上記に合致しない作業も幾らか存在する。

--また、カスタム・ロール化した方が良い作業もある。
---NIC追加、NSG設定の変更
---仮想マシンの再起動、電源on/off、電源on/offスケジュール変更

*IaC化 [#n4a5bc5a]

**[[Azure PowerShell]] [#u142de79]
下記を参照。

**[[Azure CLI]] [#s367b9db]
 >az vm create ^
 --resource-group [既存のRG名] ^
 --name [VM名] ^
 --location [location] ^
 --size [size] ^
 --image [image名] ^
 --admin-user [users名] ^
 --admin-password [password] ^
 --vnet-name [既存のVNET名] ^
 --subnet [既存のSubnet名]

-sizeの確認方法
 az vm list-sizes --location [location] --output table

-image名の確認方法
 az vm image list --output table

-例
--[[Azure上に素早く環境を構築する>Azure上に素早く環境を構築する#dd0f615f]]
--[[Azure Bastionの踏み台VM>Azure Bastion#sf6b38d2]]

**参考 [#j9b7cf41]
***[[Azure上に素早く環境を構築する>#e07f5f7f]] [#vdd1c705]
***[[SIOS Tech. Lab>#x0276ace]] [#sdc22499]
***[[Microsoft Docs > Azure Virtual Machines>#n6eebd91]] [#v14da034]

*参考 [#xfe7f6da]

**[[Azureのストレージ]] [#fd477e94]

**Azure環境(仮想マシン) [#n9e8d092]
***[[Azureの評価環境を入手する]] [#r8f8b2de]
***[[AzureのPoC環境を契約する]] [#uaa2dd96]
***[[Azure上に素早く環境を構築する]] [#e07f5f7f]

**SIOS Tech. Lab [#x0276ace]
-【初心者】Azure CLI で仮想マシン(Ubuntu)を作成する
--第1回 -リソースグループについて-~
https://tech-lab.sios.jp/archives/2998
--第2回 -仮想ネットワークとサブネットについて-~
https://tech-lab.sios.jp/archives/3026
--第3回 -ネットワークセキュリティグループについて-~
https://tech-lab.sios.jp/archives/3040
--第4回 -ストレージアカウントについて-~
https://tech-lab.sios.jp/archives/3046
--最終回 -VMについて-~
https://tech-lab.sios.jp/archives/3087

**nakama [#y26d97b6]
※ [[IaaS の構成方法>Azureの仮想ネットワーク#zd56347f]]中にも同様のトピックが含まれる。

**Microsoft Docs [#ibdfdaf5]

***Azure Virtual Machines [#n6eebd91]
-クイック スタート Windows
--Azure Portal で Windows VM を作成する~
https://docs.microsoft.com/ja-jp/azure/virtual-machines/windows/quick-create-portal
--Azure CLI を使用して Windows VM を作成する~
https://docs.microsoft.com/ja-jp/azure/virtual-machines/windows/quick-create-cli
--Azure PowerShell を使用して Windows VM を作成する~
https://docs.microsoft.com/ja-jp/azure/virtual-machines/windows/quick-create-powershell
--ARMテンプレートは、[[コチラ>Azure Resource Manager テンプレート#h519dc16]]

-クイック スタート Linux
--Azure portal で Linux VM を作成する~
https://docs.microsoft.com/ja-jp/azure/virtual-machines/linux/quick-create-portal
--Azure CLI を使用して Linux VM を作成する~
https://docs.microsoft.com/ja-jp/azure/virtual-machines/linux/quick-create-cli
--Azure PowerShell を使用して Linux VM を作成する~
https://docs.microsoft.com/ja-jp/azure/virtual-machines/linux/quick-create-powershell
--ARMテンプレートは、[[コチラ>Azure Resource Manager テンプレート#h519dc16]]

----
Tags: [[:インフラストラクチャ]], [[:クラウド]], [[:Azure]]

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS