インフラまわりの製品調査

概要
-
必要に迫られて、インフラまわりの製品知識を身につけるべく、製品調査しました。

＜OS＞
-
参考： <https://www.winserver.ne.jp/column/about_serveros-clientos/>

OSの種類をまとめました。
![図2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3292958/3b93b974-7cb2-4fd8-8d96-40e23f26b38f.png)


サーバーやクライアントは、コンピュータの種類です。

サーバー：Webサーバー、メールサーバーなどサービスを提供するコンピューター
クライアント：サーバーに接続してサービスを利用する端末。通常のPCやスマホ

コンピュータの種類によって、使用されるOSの種類が異なります。
![図3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3292958/92d8d18b-ed04-f3cf-b2a5-5eb9729910a9.png)

＜サーバOSに求められる機能＞
- Webやメールなど必要に応じてさまざまなサービスを提供できる機能
- 高い安定性を持って稼働できる
- 格納されたファイルやデータのアクセス権の管理が行える
- 多数のクライアントからの接続に耐えられ、処理を行うことができる

＜クライアントOSに求められる機能＞
- ユーザーが使いやすいインターフェースや操作性を持っている
- さまざまなアプリケーションが使える

＜OSを選ぶときの注意点＞
- サーバとクライアントでは求められる機能に違いがあるため、それぞれの用途以外には使用しない


Windows(Client、Server)
-
参考：<https://e-words.jp/w/Windows_Server.html>

Windows Serverとは、Microsoft社のサーバコンピュータ向けOSの製品シリーズ名


参考：<https://e-words.jp/w/%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88OS.html>

クライアントOSとは、オペレーティングシステム（OS）の分類の一つで、主に利用者が直接操作する端末を制御する用途で用いられるもの。

Windows Clientとは、クライアントOSがWindowsのものを指します。


RHEL
-
参考：<https://techmania.jp/blog/linux-distribution-rhel/#:~:text=RHEL(Red%20Hat%20Enterprise%20Linux,%E3%82%92%E5%89%8D%E6%8F%90%E3%81%A8%E3%81%97%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%E3%80%82>

RHEL(Red Hat Enterprise Linux )は、2002年に RedHat社が開発し、現在でも販売を続けているオープンソースの商用 Linux ディストリビューションです。
エンタープライズ用途を考慮して作られており、規模の大きいシステムでの稼動を前提としています。


VMware ESXi
-
参考：VMware ESXiとは
<https://www.vmware.com/jp/products/esxi-and-esx.html>
参考：ベアメタルハイパーバイザー
<https://www.vmware.com/jp/topics/glossary/content/bare-metal-hypervisor.html>
参考：ハイパーバイザーとは
<https://www.vmware.com/jp/topics/glossary/content/hypervisor.html>

- VMware ESXiとは

参考サイトから以下抜粋します。
............................................................................................................
物理サーバ上に直接インストールできる堅牢なベアメタル ハイパーバイザーの詳細をご紹介します。VMware ESXi は基盤となるリソースに直接アクセスして管理できるため、ハードウェアを効果的にパーティショニングして、アプリケーションの統合とコストの削減を実現できます。業界をリードするその効率的なアーキテクチャは、信頼性、パフォーマンス、およびサポートにおいて標準となっています。
............................................................................................................

ベアメタル　ハイパーバイザーってなんでしょうね？
こちらについても参考サイトから以下抜粋します。

............................................................................................................
ハイパーバイザは、仮想マシンモニタまたは VMMとも呼ばれ、コンピュータのソフトウェアをハードウェアから分離することで仮想マシン (VM) の作成と管理をサポートする仮想化ソフトウェアの一種です。ハイパーバイザーは物理リソースと仮想リソースの間でリクエストを変換し、仮想化を可能にします。ハイパーバイザーがハードウェアとオペレーティング システム (OS) の間の物理マシンのハードウェアに直接インストールされる場合、それは ベア メタル ハイパーバイザーと呼ばれます。一部のベア メタル ハイパーバイザーは、マザーボードの基本入出力システム (BIOS) と同じレベルでファームウェアに組み込まれています。これは、一部のシステムでは、コンピュータ上のオペレーティング システムが仮想化ソフトウェアにアクセスして使用できるようにするために必要です。

............................................................................................................

まとめると、VMware ESXiとは、
- 物理サーバ上に直接インストールできる堅牢な仮想マシンモニタであり、コンピュータのソフトウェアをハードウェアから分離することで仮想マシン（VM）の作成と管理をサポートする仮想化ソフトウェアの一種です。
- インストール先が、ハードウェアとオペレーティング システム (OS) の間の物理マシンのハードウェアに直接インストールされるため、ベアメタルハイパーバイザーと呼ばれます。

図にするとこうなります。
＜修正前＞
![図4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3292958/3b1ab877-3150-6214-caa7-0586cbafc7c1.png)

いや、待て待て。ここに注目↓↓↓↓

- インストール先が、ハードウェアとオペレーティング システム (OS) の間の物理マシンのハードウェアに直接インストールされるため、ベアメタルハイパーバイザーと呼ばれます。

上の図はハードウェア領域として一つにまとめてしまっているけれど、実は、ハードウェアって２つあるのが正しいのではないの？？そして、物理マシンの範囲には仮想マシンは入らないのでは？？

ということで、修正した図がこちらです。
＜修正後＞
![図5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3292958/e3212bcc-f151-4f90-b4ac-306fc85cd419.png)

* ＜＞付きのOSとハードウェアは、電源を入れたら一番最初にたちあがるもののイメージです。
* コンピュータの＜ハードウェア＞と、物理マシンのハードウェアを区別して描きました。
* アプリケーションは仮想マシンの中にあるイメージなので、VMware ESXiから操作できるイメージです。



..............................


- VMware ESXiの機能

参考サイトから以下抜粋します。

.............................................................................

ハードウェアの統合によるキャパシティ使用率の向上
パフォーマンスの向上による競争力の強化
統合管理による IT 管理業務の効率化
設備投資コストと運用コストの削減
ハイパーバイザーの実行に必要なハードウェア リソースの最小化を通じた効率の向上

.............................................................................



VMware vCenter Server
-
参考：<https://www.vmware.com/content/dam/digitalmarketing/vmware/ja/pdf/VMware-vCenter-Server-Datasheet.pdf>

VMware vCenter Serverを構築するときに気をつけたいこと
-


参考：
VMware vSphere 6.0 環境構築　その2 vCenter構築
<https://qiita.com/sugimount/items/91f6d8f37eeda23824c3>

ESXiとvCenter Server間の名前解決
<https://qiita.com/tsukamoto/items/604dad01c905d75ef1b4>

・上記の参考記事から、環境構築する時は、名前解決に気をつけようと思います。



「VMware ESXi」と「VMware vCenter Server」の違い
-
ここまでで、同じ「VMware」なのは分かったけど、違いってあるんだろうか？？
と、参考サイトで調べてみました。すると、以下のことが分かりました。

・VMwareは企業名

・vSphereとはVMware, Incが提供する仮想化プラットフォーム。
vSphereのコンポーネントとして、ESXiやvCenterがあげられる。

・ESXiとはVMware, Incが提供している、ハイパーバイザー。

・vCenterは、VMware, Incが提供している仮想化管理サーバ。



[0] vSphere
-
ここまでで、vSphereは、ESXiやvCenter Serverをまとめる役割がありそうですが、
vSphereについてもう少し詳しく知る必要がありそうです。
下記、VMware社の「新卒 SE 社員が贈る」シリーズの記事を参考に、要点をまとめてみました。

[1] VMware vSphere　～仮想化基盤の中心的存在～
-
VMware vSphere （以下 vSphere ）とは VMware vSphere ESXi （以下 ESXi ） と VMware vCenter Server （以下 vCenter ）を含む仮想化ソフトウェアのスイートの総称です。この vSphere により、仮想化プラットフォームを実現することができます。

ここでいうスイート(Suite)とは、「ひとそろいの、一式の」という意味があり、
良く使われるアプリケーションソフトウェアや機能的に関連のあるプログラミングソフトウェアを特定用途向けに一まとめにされたソフトウェアパッケージのことを指します。

参考：
https://ja.wikipedia.org/wiki/%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E3%82%B9%E3%82%A4%E3%83%BC%E3%83%88

また、コンポーネントとは、下記のことを指します。

ソフトウェアコンポーネントは、ソフトウェアシステムの様々な機能を関心の分離によって分割したものである。システムを独立した結合の弱い再利用可能なコンポーネント群で構成する設計技法は Component-Based Software Engineering と呼ばれ、ソフトウェア工学の一分野となっている。

参考：
<https://ja.wikipedia.org/wiki/%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E3%82%B3%E3%83%B3%E3%83%9D%E3%83%BC%E3%83%8D%E3%83%B3%E3%83%88>

つまり、
ソフトウェアスイートは、ソフトウェア製品のひとそろいのパッケージを指し、
ソフトウェアコンポーネントは、環境構築されたソフトウェアの構成を指しています。

また、仮想化プラットフォームとは、下記のことを指します。

現在使われる「コンピューターの仮想化」と同義。 仮想化ソフトウェアによってコンピューターやサーバー上に、ホストとなるプラットフォームと同じ仮想マシンを生成し、その上でアプリケーションを実行する。
参考：
<https://kotobank.jp/word/%E3%83%97%E3%83%A9%E3%83%83%E3%83%88%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0%E4%BB%AE%E6%83%B3%E5%8C%96-13644#:~:text=%E7%8F%BE%E5%9C%A8%E4%BD%BF%E3%82%8F%E3%82%8C%E3%82%8B%E3%80%8C%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF%E3%83%BC%E3%81%AE,%E3%81%A7%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%92%E5%AE%9F%E8%A1%8C%E3%81%99%E3%82%8B%E3%80%82>

プラットフォーム（駅）という言葉の意味から、様々な電車（仮想マシン）がある、とイメージしてみると、
より仮想化プラットフォームの理解が深まりそうです。

vSphere の構成要素　～登場人物の確認～
-
ここで vSphere の基本コンポーネントについて整理を行いたいと思います。
・ ESXi
・ vCenter Server
・ vSphere Client / Web Client
・ 仮想マシン
・ 共有ストレージ

・ VMware ESXi　～ vSphere の根幹をなす仮想化ソフトウェア～
-
ESXi は、 vSphere の中核となるハイパーバイザー型仮想化ソフトウェアです。
物理サーバにインストールしておくことで、仮想マシンを複数台実行することができます。



・ VMware vCenter Server 　～仮想基盤の司令塔～
-
vCenter Server とは、仮想基盤を管理する必須のコアサービスです。
vCenter Server の役割として大きく２つあります。
・ 統合管理(複数の ESXi を束ねて管理)
・ vSphereにある様々な機能を有効化( vMotion や HA 、 DRS …等々、 vCenter がないと使用できません)


・ vSphere Client / vSphere Web Client　～仮想基盤の入り口～
-
vSphere Client とは仮想環境にアクセスする、言わば vSphere への入り口となるインタフェースを提供します。

従来品との比較

＜vSphere 5.5 以前のvSphere管理機能＞
・vSphere Client は Windows マシンにインストールして使用
・Update Manager や SRM といった一部アドオン製品のプラグインに関しては、 vSphere Client でしか使えない機能もあり
↑
↓
＜vSphere 5.5 以降のvSphere管理機能＞
・Web ベースの vSphere Web Client （以下 Web Client ）を用いることによって、ブラウザベースの vSphere 環境の管理ツールを提供し、 vSphere 基盤の運用・監視を行う
・vSphere 5.5 以降はWeb Clientに統一されている。



・ 仮想マシン　～仮想マシンの実体はファイル～
-
ESXi がインストールされたサーバのことを通称「 ESXi サーバ」と呼んでいます。そしてこの ESXi が、 Windows や Linux 等の OS = ゲスト OS やアプリケーションを入れる器を作り出します。この器が「仮想マシン」です。
この仮想マシンには、物理環境でいう CPU やメモリ、 HDD といった装置も ESXi によって仮想化されソフトウェアとして定義され、仮想 CPU 、仮想メモリ、仮想 HDD として存在しています。 vSphere 5.5 では、仮想マシンに対して最大 64 vCPU （仮想 CPU )、1 TB のメモリを割り当てることができます。また、仮想マシンの実体は”ファイル”です。全ての仮想マシンの情報はファイル（ .vmdk や .vmx 等）としてストレージに保存されています。ファイルなので、仮想マシンの複製が簡単に行え、ネットワークを通じて遠隔地に同じ構成の仮想マシンを作成することも簡単にバックアップをとることも可能になります。


・ 共有ストレージ　～仮想マシンの家～
-
vSphere 環境では共有ストレージがほぼ必要となってきます。共有ストレージへの接続方法としては、 FC 、 iSCSI 、 NFS 等、選択可能です。この共有ストレージに仮想ディスクファイルが保存され、共有ストレージに保存された仮想ディスクファイルを読み込むことで、仮想マシンを動かしています。


[2] 仮想環境におけるネットワークとストレージ
-

・仮想マシンのネットワーク概要 ～仮想化されたネットワーク機器～
-
仮想マシンは、 CPU 、メモリ、ストレージ等が割当てられており、仮想マシンに入っているOS(= ゲスト OS) はあたかも物理サーバ上で動作していると思い込んでいます。ネットワークの接続を行うため、 NIC も他のハードウェアと同様に仮想的なハードウェアとして仮想マシンに搭載する事ができます。この仮想 NIC 「 vNIC 」と呼びます。ゲスト OS は本物の NIC だと思い、 このvNIC に IP アドレスを割り当て、通信を行います。

vNIC は仮想的な NIC なため、仮想マシンが vNIC から送信しようとする信号を物理ネットワークへ送るためには、 ESXi　サーバに搭載された物理 NIC との紐付けが必要になります。しかし前述の通り、１つの vNIC につき１つの物理 NIC を割り当てとなると、 ESXi サーバには膨大な NIC が必要になってしまいます。そこで、 vSphere がどの様なアプローチを取っているかというと、 ESXi サーバの内部で仮想的なスイッチ「 vSwitch = 仮想スイッチ 」を作り、 ネットワークコントロールを行っています

・vSwitch ～物理と仮想を繋ぐ装置～
-
vSwitch には3種類のポートが存在します。
「アップリンクポート」...物理 NIC と対応づけ
「VMkernel ポート」...ESXi サーバの管理や vMotion 、vSphere HA 、vSphere FT など vSphere の機能を使用する
「仮想マシンポートグループ」...仮想マシンの vNIC を接続する

・vSwitch は、各ポートのポート番号で接続を管理するのではなく、ひとまとまりのポート群、「ポートグループ」でポートを管理
・ポートグループは L2 レイヤのネットワークを形成しており、VLAN ID もポートグループ毎に割当てることができる。

・ vSphere Web Client から　vSwitch の管理画面を見ることができる。

・物理 NIC は「 vmnic0, vmnic1, vmnic2, vmnic3,… 」など、「 vmnic 」というラベルを付けて ESXi サーバが管理

・アップリンクポートに vmnic を２つ用意し、物理 NIC の冗長性を確保



ネットワーク編まとめ
-

- vmnic
仮想 NIC 

- vNIC
物理 NIC 

- vSwitch
仮想環境のネットワーク接続に欠かせない概念。
 「 標準 vSwitch 」の場合は、ESXi 内部に複数作成することが可能。
ESXi内部に複数の「 標準 vSwitch 」が増え過ぎた場合は、より管理がしやすい機能である「 vSphere Distributed Switch 」を使用して、複数の ESXi サーバにまたがって仮想スイッチを一元管理する事ができる。

- vSwitch　 内のポートの概念
「アップリンクポート」
「VMkernel ポート」
「仮想マシンポートグループ」

ストレージ編 ～実際の作業からキーワードを知る～
-

LUN, ボリューム ～ESXiとストレージの接続～
-
ESXi サーバが新しいストレージを使用するためにはまず、 ESXi サーバがストレージを認識する必要があります。設定を行うと、 ESXi サーバは LUN やボリュームを検出します。次に ESXi サーバは、検出した LUN を仮想マシンファイル等を収容するための「データストア」として登録します。

VMFS は、「 Virtual Machine File System 」の略で、仮想マシンを収容するために　VMware が開発した仮想環境に最適なファイルシステムです。 LUN、ボリュームを設定されたストレージは VMFS にフォーマットされることでデータストアとして ESXi サーバ 内で使用する事ができるようになります。



仮想ディスク（ vmdk ） ～仮想マシンのディスクもファイル～
-
データストアとして登録が終了すると、いよいよ仮想マシンのファイルを ESXi サーバから収容する事ができるようになります。

「仮想ディスク = vmdk」
仮想ディスクは「 .vmdk 」という拡張子のファイルとして存在し、仮想マシンにおいてローカルディスクの役割を果たします。
この仮想ディスクは Windows であれば 例えばCドライブやDドライブとして認識され、このローカルディスクにファイルを書き込もうとしますが、実際は ESXi サーバが書き込み命令を検知して仮想ディスクファイルに内容を書き込んでいます。

ストレージ編まとめ
-
ここまでのストレージの流れをまとめます。

ESXi サーバがLUN やボリュームを検出
↓
ESXi サーバは検出した LUN を仮想マシンファイル等を収容するための「データストア」として登録
↓
VMFS　「 Virtual Machine File System 」
LUN、ボリュームを設定されたストレージは VMFS にフォーマットされることでデータストアとして ESXi サーバ 内で使用する事ができるようになる
↓
データストアとして登録が終了
↓
仮想マシンのファイルを ESXi サーバから収容する
↓
「仮想ディスク = vmdk」
仮想マシンにおいてローカルディスクの役割
ESXi サーバが書き込み命令を検知して仮想ディスクファイルに内容を書き込んでいる


[3]vMotionとvSphere HA/vSphere FTの違いとは？
-
vMotion は計画的な物理サーバの停止に対応する機能
　・利用シーン：vMotion は物理サーバのメンテナンスなど
　　　　　　　　計画的に物理サーバを停止する必要がある場合に使用する移行機能
↑
↓
HA は非計画的な物理サーバの障害に対応して可用性を確保する機能
　・利用シーン：HA は機能としては常に有効にしておき、
　　　　　　　　いざ物理サーバに障害が起きた際に自動で保護してくれる復旧の仕組み


vMotion　～仮想マシンのホット移行～
-
vMotion は、起動している仮想マシンをシャットダウンすることなく、動かしたまま別の物理サーバに移動する機能

vMotion による仮想マシンの移行は、管理画面から仮想マシンを指定し、ウィザードに従って進めることで数クリックの簡単な操作により完結することができる。

vMotion の機能は、ホストの定期メンテナンスや一部パーツの交換等で、物理サーバを計画的に停止しなければならない際に有効。

vMotion によって停止する物理サーバから別の物理サーバへ仮想マシンを退避しておくことで、仮想マシンとして、あるいはその仮想マシンの提供しているITサービスとしてはダウンタイムがなくなる。


＜前提条件＞
vMotion を行うためには、対象物理サーバ (= ESXiサーバ)が vCenter に登録されていること、移行元、移行先の物理サーバのCPU互換性があること、共有ストレージが構成されていることが必要。



クラスタの構成
-
HA / FT を利用するためには、クラスタの構成が必須となる。

HA は “High Availability” ( ＝ 高可用性) を意味し、アクティブースタンバイの可用性を提供する機能

FT (Fault Tolerance) は、物理サーバ障害が発生しても無停止でサービスを継続する機能

クラスタは複数の物理サーバを論理的にグループ化したもので、まとめられたサーバはあたかも一つの大きなリソースであるかのように扱うことができる。

このような物理ホストのグルーピングのメリットは、それらをひと括りに一つの大きなコンピュータのように扱うことで、個別に稼動していた場合を超えるサービス品質を提供できることにある。

これら複数の物理ホストはクラスタ内で各自の持つリソースを互いに共有するため、各時刻で余剰のリソース能力(CPU, Memory)を最適に配分することで処理能力を上げたり、計画的/非計画的なホストの停止に対応する可用性の確保を実現している。

クラスタに対して HA 機能を有効にすることで、クラスタ内に含まれる仮想マシンは全て HA　により保護されることになる。

FT の保護を施したい場合には、仮想マシンを選択して FT を有効化することで、自動でクラスタ内の別ホストにセカンダリが作成される。

vMotion の利用にはクラスタの構成は不要。

HA / FT ～物理サーバ障害における可用性を向上～
-
計画外停止( ＝ 物理ホスト障害)に対して可用性を向上する機能が HA と FT

HA は “High Availability” ( ＝ 高可用性) を意味し、アクティブースタンバイの可用性を提供する機能。HA を使用しない場合、ある物理サーバが障害等で機能を停止するとその上で起動している仮想マシンも停止してしまう。それに対し、予めクラスタを構成して　HA を有効にしておくことで、同じクラスタ内の別の物理サーバで自動的に再起動することが可能となる。HAの場合、仮想マシンが再起動するまで数分の停止が発生するが、仮想マシンが自動的に起動するだけでも管理者の助けになる。

FT (Fault Tolerance) は、物理サーバ障害が発生しても無停止でサービスを継続する機能。
保護対象となる仮想マシン（プライマリ）に対し、別の物理ホスト上にセカンダリというコピーマシンを作成する。
これらは常に同期し、仮にプライマリ仮想マシンが起動している物理サーバが停止しても、すぐに切り替わってセカンダリで動作し続けることが可能。これにより物理サーバ障害によるダウンタイムを０にすることができるので、特にダウンタイムが許容されないシステムに適している。現状では FT 機能が対象とできる仮想マシンはvCPUが１つの仮想マシンに限られている（September 2, 2014時点）。



[4]仮想マシンの配置管理はDRSにお任せ！
-
・　vSphere Distributed Resource Scheduler （以下 DRS ）とは
-
・　仮想マシンの配置に絶大な効果を発揮する機能

・　訳すと“分散リソーススケジューラ”

・　IT 管理者にとって助かる機能

・　クラスタのおさらい
vCenter Server の配下にある複数の ESXi サーバを論理的にグループ化し、 ESXi  サーバ群を作ります。このサーバ群を協調動作させる仕組みを”クラスタ”と呼びます。

・ クラスタとして一つにまとめられたサーバ群は、あたかも一つの大きなリソースであるかのように扱うことができました。前回の例ではクラスタは一つの大きなコンピュータのように扱える、とご説明しました。このクラスタの構成が、今回ご紹介する DRS には必須となってきます。



IT 管理者から見たDRS
-
あなたはIT 管理者として自社の仮想基盤の整理を任されています。今、自社の仮想基盤では10台の ESXi サーバ上で100台の仮想マシンが動いています。

あなたの会社がある新規サービスを立ち上げるため、仮想マシンを展開することになりました。しかし自社の ESXi サーバはリソースが飽和状態のものや時間帯によって大きく変化したりと様々です。（仮想環境は生き物です）

課題1. どこの ESXi サーバ上で新規の仮想マシンをパワーオンすべき？
-
おそらく ESXi サーバ1台1台のリソースの消費具合を確認し、展開先の ESXi サーバを探そうと考えたのではないでしょうか。 ESXi サーバの台数が多くなればなるほど、各 ESXi サーバのリソースを調べるのにも大変な労力と時間を消費します。見つかったとしてもすぐ負荷負荷状況が変わる可能性もあります。困りました…。

課題2. ESXi サーバ間に負荷の偏りが出てきた場合
-
手動で仮想マシンを他の ESXi サーバに移行して ESXi サーバ間の負荷の均衡をとります。移行先の ESXi サーバのリソースに余裕があればよいですが、どの ESXi サーバにどの仮想マシンを移行すればよいのか？判断が難しい。困りました…。

課題3. 物理サーバのメンテナンスやハードウェア交換、パッチの更新やメンテナンスの時期
-
各 ESXi サーバのリソースを調べながら、手動で仮想マシンをリソースに余裕のある ESXi ホストへ移行していくのも根気のいる作業。こちらも課題2と同様、どの ESXi サーバにどの仮想マシンを退避したらいいのか？もちろん移行先にある仮想マシンに影響がでないようにしなくては…。
せっかく仮想基盤にしたにもかかわらず悩ましい課題がでてきてしまいました。こういった状況で存在感を示すのが「 DRS 」という機能です。先ほどクラスタは複数の ESXi サーバを、一つの大きなコンピュータ（リソース）として扱える、と説明しました。管理者はクラスタ上に仮想マシンが存在する！と意識しておりますが、実際どこの ESXi サーバ上に仮想マシンが配置されるかはこの DRS にお任せできてしまいます。


DRSによるソリューション
-
課題1. どこの ESXi サーバで新規の仮想マシンをパワーオンすべき？へのソリューション
-
DRS によって、仮想マシンはクラスタ内で最適な ESXi サーバ上に自動（もしくは管理者が承認後）で展開されます。

課題2. ESXi サーバ間に負荷の偏りが出てきた場合へのソリューション
-
負荷の偏りが発生した時点で、自動（もしくは管理者が承認後）で適切な ESXi サーバ上に移行されます。

課題3. 物理サーバのメンテナンスやハードウェア交換、パッチの更新やメンテナンスの時期へのソリューション
-
物理サーバメンテナンス時も、 ESXi サーバをメンテナンスモードにすることによって、仮想マシンの再配置を自動的に行ってくれます。
このように、 DRS は仮想マシンをどの ESXi サーバ上へ展開するか？といったことを考える必要はなく、単にクラスタに仮想マシンを展開するといった感覚で仮想マシンの展開を可能にしています。課題1～3について考慮する必要は無くなりますね。
どうですか？クラスタ単位で考えると、今まで以上に仮想基盤を有効に使う事ができるかもしれません。



DRS の設定
-
DRS として仮想マシンの再配置が行われるタイミングは以下の2つ。

A ）仮想マシンのパワーオン時
B ）クラスタ内のリソースに偏りが生じたとき

この2つに意識しながら、 DRS の設定を行う。

DRS の設定で特徴的なのが「自動化レベル」と「移行のしきい値」だ。 DRS を有効にしても仮想マシンを移行するタイミングは自分で確認したい！という方には自動化レベルの設定が役に立つ。

DRS の自動化レベル
-
●完全自動化
仮想マシンをパワーオンすると、仮想マシンが最適な ESXi サーバに自動で移行される。

●一部自動化
仮想マシンをパワーオンした段階は、完全自動化と同じくDRS により仮想マシンが最適なホストに配置される。

●手動
この場合、自動的な仮想マシンの移行は行われない。

DRSの移行しきい値
-
 B )のクラスタのリソースに偏りが出た場合、
少しの偏りでも再配置をするのか、大きく偏りが出た場合に再配置をするのか？
を定義するのが「移行しきい値」となる。

・　クラスタ内の ESXi サーバ間のリソースの偏り具合によって移行するかしないかを決定する。

・　しきい値は1（保守的）〜5（積極的）までの5段階あり、デフォルトは3に設定されている。しきい値1はメンテナンスモードと呼ばれ、仮想マシンの再配置はメンテナンスモードが実行された際のみ行なわれる。移行しきい値は、値が大きくなるにつれ、少しの偏りでも仮想マシンの再配置（積極的な再配置）が行なわれるようになる。

再配置先を限定する〜ホストアフィニティ〜
-
DRS を使用すると、仮想マシンの再配置先はクラスタ上の全ての ESXi サーバとなる。

ここでゲストOSで使用しているソフトウェアライセンスの関係上等で、再配置先の ESXi サーバを限定したい！という場合は、DRS のホストアフィニティという機能が役立つ。

前もって仮想マシンをグルーピングしておき、その仮想マシンが動く ESXi サーバを限定することでソフトウェアライセンスの節約や、仮想マシンの所在をはっきりさせておくことも可能となる。また、このグルーピングは DRS のみならず、HAの時にも有効に働く。



[5]様々な仮想マシンが混在&混雑しても大丈夫！？ネットワーク と ストレージの帯域を維持する仕組み
-
vSphereでは、様々な仮想マシンが混在し、かつネットワークやストレージ I/O が混雑している時であっても、各仮想マシンのサービスレベルを維持できる仕組みがある。同一の ESXi サーバ上に様々な VM が混在している場合であっても、各 VM のサービスレベルを簡単に維持することができる。

・　ネットワーク I/O コントロール ( NIOC )
・　ストレージ I/O コントロール ( SIOC )

ネットワーク I/O コントロール ( NIOC ) とは？
-
物理 NIC のトラフィックが輻輳している時に、優先的に送出するトラフィックの種類を設定できる機能。

vSphere 環境では、ネットワーク帯域もリソースのひとつとして捉え、各種トラフィックリソースが ESXi サーバの帯域をみんなで仲良く使います。ネットワークのトラフィックリソースは、　FT トラフィックや vMotion トラフィックなど、事前に定義されたものがいくつかありますが、ユーザ側で特定のポートやポートグループをひとつのネットワークリソースとして定義することも可能です。

事前に定義されたネットワークリソース
-
    - FT トラフィック
    - vMotion トラフィック
    - マネージメント トラフィック
    - NFS トラフィック
    - iSCSI トラフィック
    - 仮想マシン トラフィック
    - vSphere Replication トラフィック

ユーザが定義したネットワークリソース（例）
-
    - 開発用VM
    - テスト用VM

NIOCの設定方法
-
NIOC では、定義されたネットワークリソースにサービスレベルの設定をすることで、優先して帯域を利用できるトラフィックや仮想マシンを指定することができます。
具体的には、各ネットワークリソースにシェア値というものを設定し、ネットワークに輻輳が起きた場合、このシェア値の割合に基づいて、 ESXi サーバの帯域を割り当てるという仕組みです

事前に定義されたネットワークリソース
-
                                    シェア値
    - FT トラフィック                     10
    - vMotion トラフィック                10
    - マネージメント トラフィック             10
    - NFS トラフィック                    10
    - iSCSI トラフィック                  10
    - 仮想マシン トラフィック               10
    - vSphere Replication トラフィック    10

ユーザが定義したネットワークリソース（例）
-
                                    シェア値
    - 開発用VM                         20
    - テスト用VM                         5

シェア値の計算方法
-

輻輳が起きた場合、開発用 VM トラフィックにどの程度の帯域幅が割り当てられるか計算してみます。

上記をベースとした場合、開発用 VM のシェア値の割合は、
全体値 ( 20 + 5 + 10 + 10 ) 分の 20 、
すなわち、 20 ÷  ( 20 + 5 + 10 + 10 ) ＝ 0.444 となります。
NIC 一枚あたり、 10 Gbps となりますので、 
10 Gbps × 0.444 = 4.44 Gbps の帯域が割り当てられることになります。

参考記事の例では､ 
ESXi サーバには NIC が 2 枚搭載されているので、
開発用 VM のネットワーク用に担保されている帯域は、
合計で 8.88 Gbps ということになります。

このように、 NIOC を利用することで、ネットワークのサービスレベルが異なる仮想マシンが混在していても、
それぞれの仮想マシンのサービスレベルを制御することができます。
言い換えれば、大事な仮想マシンのトラフィック ( シェア値 : 大 ) が重要でない仮想マシンのトラフィック ( シェア値 : 小 ) に影響されないように設定できると言うことです。

( ※ シェア値はネットワークに輻輳が起きたときのみ発動されるものなので、輻輳が起きていない状態であれば、どのような仮想マシンであっても上限なく、自由にネットワーク帯域を利用することが可能です！ )



LBT ( Load Based Teaming : 物理 NIC に基づいた負荷分散 ) とは？
-





ストレージ I/O コントロール ( SIOC ) とは？
-
特定のストレージへの I/O が集中し、レイテンシが大きくなった場合、優先的に I/O を行う仮想マシンを設定できる機能





参考：

困惑、、VMware,vSphere,vCenter,ESXiの違いとは！
<https://goat-inc.co.jp/blog/2393/>

3分ぐらいで分かる？vSphere vMotionの仕組みについて
<https://goat-inc.co.jp/blog/1917/>

新卒 SE 社員が贈る　vSphere のキソ！第1回〜 vSphere を俯瞰する〜
<https://blogs.vmware.com/vmware-japan/2014/08/vsphere_kiso01.html>

新卒 SE 社員が贈る　vSphere のキソ！第2回 ～仮想環境におけるネットワークとストレージ～
<https://blogs.vmware.com/vmware-japan/2014/08/vsphere_kiso02.html>

新卒 SE 社員が贈る vSphere のキソ！第3回～vMotionとvSphere HA/vSphere FTの違いとは？～
<https://blogs.vmware.com/vmware-japan/2014/09/vsphere_kiso03.html>

新卒 SE 社員が贈る vSphere のキソ！第4回～仮想マシンの配置管理はDRSにお任せ！ ～
https://blogs.vmware.com/vmware-japan/2014/09/vsphere_kiso04.html

新卒 SE 社員が贈る vSphere のキソ！第5回～様々な仮想マシンが混在&混雑しても大丈夫！？ネットワーク と ストレージの帯域を維持する仕組み～
<https://blogs.vmware.com/vmware-japan/2014/09/vsphere_kiso05.html>

新卒 SE 社員が贈る vSphere のキソ！第6回　～vSphere でココまでできる！データ保護～
<https://blogs.vmware.com/vmware-japan/2014/09/vsphere_kiso06.html>

新卒 SE 社員が贈る vSphere のキソ！ 第7回 ～ 仮想環境となが〜くお付き合いしていくために ～
<https://blogs.vmware.com/vmware-japan/2014/10/vsphere_kiso07.html>

新卒 SE 社員が贈る　vSphere のキソ！第８回 ( 追加編 ) 〜 まだまだあった！ストレージ関連機能 〜
<https://blogs.vmware.com/vmware-japan/2014/12/vsphere_kiso08.html>



＜ソフトウェア＞
-
Active Directory
-
参考：<https://www.ctc-saas.com/security_column/useful/active_directory>


DNS
-
参考：<https://www.nic.ad.jp/ja/basics/beginners/dns.html>


WSUS
-
参考：<https://ent.iij.ad.jp/articles/3061/>


Arcserve Backup
-
参考：<https://www.fujitsu.com/jp/products/software/partners/partners/arcserve/products/backup/>


McAfee Endpoint Security
-
参考：<https://docs.trellix.com/ja-JP/bundle/endpoint-security-10.6.0-web-control-product-guide-windows/page/GUID-E46B9951-3324-425D-A788-A7933B363E88.html#:~:text=McAfee%C2%AE%20Endpoint%20Security%20%E3%81%AF,%E8%84%85%E5%A8%81%E3%82%92%E9%98%BB%E6%AD%A2%E3%81%97%E3%81%BE%E3%81%99%E3%80%82>

WebSAM SystemManaNetVisor Pro VNetVisor Pro V
-
参考：<https://jpn.nec.com/websam/netvisorprov/index.html>


SKYSEA Client View
-
参考：<https://www.hitachi-solutions.co.jp/skysea/#:~:text=SKYSEA%20Client%20View%E3%81%AF%E3%82%AF%E3%83%A9%E3%82%A4%E3%82%A2%E3%83%B3%E3%83%88,%E3%81%A7%E3%82%82%E6%89%B1%E3%81%84%E3%82%84%E3%81%99%E3%81%84%E8%A3%BD%E5%93%81%E3%81%A7%E3%81%99%E3%80%82>


＜ハードウェア＞
-

FortiGate(ファイアウォール)
-
参考：<https://www.otsuka-shokai.co.jp/products/security/internet/firewall-utm/fortigate.html>


NEC QXシリーズ(スイッチ)
-
参考：<https://jpn.nec.com/qxseries/pdf/qx_46.pdf>


NEC IXシリーズ(ルータ)
-
参考：<https://jpn.nec.com/univerge/ix/index.html>