sFlowによるHyper-V仮想スイッチフローモニタリングと仮想マシン性能管理

#sFlowによるHyper-V仮想スイッチフローモニタリングと仮想マシン性能管理
sFlow準拠のサーバーパフォーマンスモニタリング用のエージェントであるHost sFlowを利用して仮想マシン管理とHyper-Vフローモニタリングを実現する方法を記載します
Windows用Host sFlowには、Hyper-Vスイッチ用のフローモニタリング用ドライバーが含まれているものを利用します。

##SNMPの設定（WindowsOS）
最初に、Windowsの「サービス」設定にて、「SNMPサービス」を有効化します。
存在しない場合は、「SNMPサービス」をインストールしてください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/705452/ee134a32-9bed-7c8a-7a0d-d9dfb8b5d920.png)
フローマネージャーから、SNMPアクセスできるように、「すべてのホストからSNMPパケットを受け付ける」にチェックを入れるか、該当のフローマネージャーからのアクセスのみを受け付けるよう設定する

##Host sFlowのインストール
###Host sFlowのダウンロード
sFlowに関する情報は、
https://sflow.net/
で確認ください。
Hyper-Vスイッチ用のフローモニタリング用ドライバーが含まれているWindows用Host sFlowは、
https://sflow.net/downloads.php
から、
最新バージョンの
Windows 64-bit (Vista or later, with Hyper-V switch driver):
hsflowd-win-<version>-x64.msi
をダウンロードします。
###Host sFlowのインストール
ダウンロードしたインストーラー（hsflowd-win-1.23.5-x64.msi）を実行します
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/705452/19b9ff0f-d55c-6258-3e6e-78a3eb933158.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/705452/4ae4b13d-f8c6-a372-26dd-24d54e28743a.png)
[Next]
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/705452/57ba2191-1cae-7ee6-05b0-c6135360e6b4.png)
[Next]
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/705452/4346fe8e-edf1-96de-1d82-82f604383ba1.png)
[Next]
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/705452/c662da27-168a-79f8-022b-8f73b8677672.png)
今回は、Cinfigure using DNS-SD（DNS-SD使用した設定）を行わない設定を選択します。
次に、sFlowパラメータを設定します。：

* sFlow collector：sFlowデータグラムを送信するsFlowコレクター（マネージャー）
* Counter polling interval(s)：SNMPカウンターをポーリングする間隔（秒）
* Sampling rate：フローサンプリングを実施するレート（割合）

[Next]
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/705452/445bef31-aed5-97f1-f6c9-2ab576b16502.png)
[Install]
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/705452/f805bec4-2474-1141-0846-110ba183ea2d.png)
[Finish]

##Hyper-Vスイッチでの「sFlow Traffic Monitoring」の有効化
Hyper-VスイッチでのHyper-Vや仮想マシンや仮想スイッチの設定は、
[Windows Hyper-Vによる仮想マシンの作成と仮想スイッチの作成](https://qiita.com/Shinya_IDENO/items/aecccaa0cc1e58190aff)
を参考にしてください。

「sFlow Traffic Monitoring」の有効化は、
Windowsのスタート＞Windows管理ツール＞Hyper-Vマネジャーの
[操作]＞[仮想スイッチマネージャー]で該当の仮想スイッチを選択して、
[拡張]の
[sFlow Traffic Minitoring] にチェックを入れる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/705452/0631325d-07ca-ba9a-8a64-d37442f68ec3.png)
[OK]

デフォルトの仮想スイッチで、
拡張機能の「sFlow Traffic Monitoring（キャプチャ）」を有効にした場合、以下のような「仮想スイッチの拡張の変更を適用中にエラーが発生しました」のエラーが出る場合は（おそらくレジストリ内の日本語文字列の問題と思われる）、[Windows Hyper-Vによる仮想マシンの作成と仮想スイッチの作成の「仮想スイッチの作成」](https://qiita.com/Shinya_IDENO/items/aecccaa0cc1e58190aff#%E4%BB%AE%E6%83%B3%E3%82%B9%E3%82%A4%E3%83%83%E3%83%81%E3%81%AE%E4%BD%9C%E6%88%90)を参考にして、新たな仮想スイッチを作成して適用してください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/705452/f9542137-62c2-d204-01a2-012b3b2dcfb6.png)

##TrafficSentinelでの情報の表示
フロー管理システムTrafficSentinelでの情報表示例をご紹介します
※フリーのsFlowコレクタであるsFlowTrendでも同様の情報を表示できます。[sFlowTrendのインストール](https://qiita.com/Shinya_IDENO/items/43f412fd30754fc1eaff)を参照ください。
###Host sFlowからのホスト（サーバー）パフォーマンスのレポート
####ホストマシン
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/705452/d5ecab82-a4b5-3722-01be-937b82b01048.png)

####仮想マシン
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/705452/bfa5d1a0-5beb-f551-478b-0e89bb659760.png)

###Host sFlowのHyper-Vスイッチ用のフローモニタリング拡張機能からのフローレポート
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/705452/591976ce-9cc6-a6f5-5513-e8896fe38d03.png)
このレポートは、ホストマシン全体のトラフィック（ホストマシン・インターフェースと仮想マシンインターフェースの全てのインターフェース）を表示しています。
仮想マシンの個別のインターフェースのトラフィック情報も該当インターフェースを選択すれば表示する事が出来ます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/705452/96365387-8fe7-330f-47fa-04f2adcadb5f.png)

※本記事は、Host sFlowの動作を保証するものではありません。Host sFlowは、GitHubコミュニティ（[sflow/host-sflow](https://github.com/sflow/host-sflow)）、[sflow.org](https://sflow.org/)、[sflow.net](https://sflow.net/) で公開・管理・議論されます。