ブログトップ 記事一覧 ログイン 無料ブログ開設

仮想化でプリセールスしてるSEの一日 このページをアンテナに追加 RSSフィード Twitter

2015年03月31日

Software-Defind xx と対応ハードウェア - VXLAN オーバーヘッド (1)

f:id:ogawad:20121001003301p:image:right

「仮想スイッチの負荷」編: (1)
「VXLAN オーバーヘッド」編: (1) (2)


前回 から3か月が経ってしまいましたが、VMware NSX などで脚光を浴びている L3 オーバーレイの「VXLAN」について、サーバーハードウェアの視点から考えてみたいと思います。


VXLAN はトンネリング技術

L3 オーバーレイと書きましたが、簡単に言えば VXLAN は トンネリング です。

"トンネリング" と言うと、私は Web フォームからの送信データを暗号化する SSL が思い浮かびます。

昔の話になりますが、Web サーバーが SSL (HTTPS) が話せるようにすると、CPU 負荷が一気に上がる課題がありました。SSL を使うか使わないかでサイジングやレンタルサーバー費用が大きく変わると言われたほどです。


f:id:ogawad:20150401002747p:image
※ 「安心」と伝えるための SSL の利用有無でサーバー負荷が大きく変わった時代がありました。。。


ネットワークの世界での「トンネリングする」は、パケットを カプセリング することになります。つまり、ネットワーク機器にとって余分な仕事が増えるわけで、設計する側としてはオーバーヘッドが気になるところ。


試しに Google 検索で「VLAN オ」までキーを打ち込んでみました。


f:id:ogawad:20150401004859p:image

。。。検証でハマった人もいるのか、かなり注目を浴びているようです。


誰でも見れるベンチマーク結果として挙げられるのが次の VMware 社資料。
メッセージサイズが小さい場合で CPU 負荷は 60% 増しだそうです。


f:id:ogawad:20150401010524p:image
VMware VXLAN Performance Evaluation on VMware vSphere 5.1


では、どうすればこの過負荷を抑えられるでしょう?
最新テクノロジーを交えて 次回 解説してみたいと思います。

2015年02月28日

Hyper-V エンタープライズ設計の現実解(セミナー資料)

f:id:ogawad:20121001003258p:image:right

昨日、マイクロソフト品川オフィスで開催されたセミナーで登壇させていただきました。

Microsoft TechNet
第 1 回 Tech Fielders × Cloud Samurai Roadshow

https://technet.microsoft.com/ja-jp/windowsserver/dn891434


このイベントは2年ぶりに登壇させていただいたのですが、
前回は参加者を置いてけぼりにしてしまったようでしたので、今回はライトな内容を心掛けました。

資料や録画したビデオは Microsoft のサイトからもダウンロードできるようになると思いますが、いち早く SlideShare でも公開いたします。


Hyper-V エンタープライズ設計の現実解:2015 年版 from Daichi Ogawa


あわせて、同イベントで登壇させていただいた過去の資料も載せておきます。

続きを読む

2015年01月29日

ノンテクニカルな連載はじめました

f:id:ogawad:20150223173901p:image:right日常業務に追われているなか、
ITmedia さんの「企業IT」カテゴリで連載を持たせていただくことになりました。

ITmedia エンタープライズ
テクノロジーエバンジェリスト 小川大地の「ここが変だよ!? 日本のITインフラ」
http://www.itmedia.co.jp/enterprise/articles/1501/29/news011.html

(なかなか恥ずかしくなるタイトル。。。)


エビデンスを明確にできる技術記事とは違い、今回は答えが無いものに触れていくため、会社や立場によっては私と正反対の意見もあると思います。

一括りにできるほど綺麗な業界で無いことも日々感じていますし、今回の連載は私の住まう「インフラ」の分野にフォーカスを当てていますので、業務系エンジニアやアプリ開発をされている方などは全く異なる環境・状況にあるかもしれません。

温かい目で見守っていただけたら幸いです。

2014年12月29日

Software-Defind xx と対応ハードウェア - 仮想スイッチの負荷

f:id:ogawad:20121001003301p:image:right

「仮想スイッチの負荷」編: (1)
「VXLAN オーバーヘッド」編: (1) (2)


最近、「software-defined something.. (SDx)」というお題で、講演の機会をよくいただくのですが、SDx の正確な定義って何でしょう。。。

もう 9 年くらい経つ「サーバー仮想化」も software-defined Compute のような気がしますし、ストレージについてはユニファイド系の多くが Xeon プロセッサを積んだ x86 サーバーで動いているわけで、言ってしまえばそれも software-defined Storage なのではないかな、と思ったり。。。


さすがに最近は「software-defined になるとハードウェアは何でも良い」と言う人は減っていますが、ネタに困っていることもあり、SDx を意識したハードウェアや設計ネタについて数回紹介したいと思います(なるべくニュートラルに)。



物理スイッチと仮想スイッチ

最近のネットワークスイッチは、Broadcom Trident などのスイッチプロセッサと Linux/BSD ベースの OS(ファームウェア)で作られています。

しかも、x86 プロセッサにおける Intel Xeon のように、スイッチ用プロセッサは Broadcom Trident が寡占的です。このため、下図のようなスイッチのハードウェア部分は基本的に共通であり、各社は OS で独自性を出しています*1


f:id:ogawad:20141230003602p:image


つまり、Hyper-V や VMware といったハイパーバイザーに含まれる「仮想スイッチ」はもちろん、「物理スイッチ」も一種の "software-defined" なわけですが、同じ SDx である物理スイッチと仮想スイッチだと、効率が良いのは前者です。

理由は単純。スイッチプロセッサには、スイッチング処理の命令セットがたくさん用意されており、多くのスイッチングをハードウェア処理できるためです。

ソフトウェアプログラムの場合であれば数十〜数百コードになるスイッチ処理が、特殊な命令セットを持つ専用プロセッサによって一瞬で処理できます
(できるだけソフトウェア処理させないよう、ASIC を更に搭載したものもあります)



仮想スイッチの処理で CPU が振り切る!?

これに対し、仮想スイッチはスイッチ処理のほぼすべてを CPU で処理します。
CPU には仮想スイッチの処理を高速化する命令セットはありませんし、特別な ASIC も搭載されていません。

ここで、昨今流行りの 10Gbps NIC*2 を考えてみましょう。10G や 20G のトラフィックを仮想スイッチに流した場合、その処理で CPU がどれくらい奪われてしまうか想像できますでしょうか?


次のスライドは若干古いですが、ネットから入手できる資料の抜粋です。


f:id:ogawad:20141230012127p:image

f:id:ogawad:20141230012125p:image

13:00 更新)ハイパーバイザーやデバイスドライバの出来によって負荷は異なります。
また、後者の富士通さんのグラフは元々 VMQ の効果測定の結果です。VMQ を有効にして処理コアを増やした途端、そのコアの使用率が 0 → 80% に跳ね上がったところに着目いただければと思います。

こちらのベンチマークもおすすめです: http://it.anandtech.com/show/2956/10gbit-ethernet-killing-another-bottleneck-


帯域やスピードばかり気にしがちになりますが、同じ 1 秒間において、
10Gbps は 1Gbps の 10 倍の仕事をこなしている ことを思い出してください。



どうやって設計する?

NFV などは特にですが、この問題を回避したいのであれば
「仮想スイッチにはできる限りスイッチング処理させない」ことです。
CPU が振り切っているので、基本的にはハードウェアによる対応になります。


  • 仮想スイッチへ流れるトラフィックを減らす技術を用いる
    • NIC Partitioning
    • SR-IOV、VEB、VEPA
  • 仮想スイッチの処理を肩代わりする技術を用いる
    • Virtual RSS、VMQ(これは個人的にお勧めしません)
  • 設計でカバー
    • 仮想スイッチに tagged VLAN は流さない
    • 仮想スイッチで QoS は行わない
  • 力技
    • 18コア Xeon などのハイパワープロセッサで押し切る

この辺りはまだ「software-defined に対する現実問題」なのかなと思います。

もちろん、仮想スイッチの方が柔軟でプログラマブルです。
各社の仮想スイッチの仕様がある程度統一化されて、x86 プロセッサに仮想スイッチ関連の命令セットが搭載される日を心待ちにしています。。。


次回 は、最近話題の VXLAN の CPU 負荷について触れてみようと思います。

*1:Trident チップを複数載せたり、処理を高速化するために ASIC を追加するものもあります

*2:LAG を用いる場合は 20Gbps

2014年11月25日

すべてわかる仮想化大全2015 と VMware Horizon 導入実践ガイド

f:id:ogawad:20100717202036g:image:right

最近は連載記事や単著といった大物の執筆依頼はごめんなさいをしたり、代わりに優秀な方をご紹介させていただいております。

軽めなご依頼についてはできるだけ頑張りたく、
最近では、先日ご紹介させていただいた Mastering vSphere 5.5 の監修や、ここ7年くらい担当させていただいている「すべてわかる仮想化大全」などです。


すべてわかる仮想化大全 2015

編集の方より、仮想化大全は今年で9年目になると聞きました。
私は 2008 年から「VMware によるサーバー仮想化」のセクションを担当させていただいています。

今年は新バージョンがリリースされないため、昨年の記事をそのまま流用するという話もありましたが「それはさすがにどうだろう」ということで、いくつか書き下ろさせていただきました。


  • 次期 vSphere 6.0 の概要
  • VMware VSAN (Virtual SAN) のアーキテクチャ
  • VMware VVOL (Virtual Volumes) のアーキテクチャ

f:id:ogawad:20141123001813j:image


その中でも、次期 vSphere 6.0 のタイミングで正式リリースされるらしい VVOL については、ストレージ情報の見える化やアレイベース QoS が着目されていますが、私は バックアップが容易になること が一番のメリットに感じています。

皆さんは VVOL のどこに期待されますでしょうか??



仮想化大全は例年、巻末に著者一覧があります。

これまでの執筆者は会社を移られてしまった方も多いのですが、皆さん新天地で更に飛躍しています。現役の優秀な執筆陣で共著できることを思うと「良い文章を書かないと」と身が引き締まるところです。



VMware Horizon 導入実践ガイド

自分の著書ではありませんが、最近入手した VMware 系の書籍について。

VMware View 関連の和書はバージョン 5.x のものしかありませんでしたが、
11月に刊行されたこちらの本は最新バージョンの 6.0 がベースとなっています。

タイトルから分かるとおり「VMware Horizon」の書籍であるため、Horizon View 以外のコンポーネントについても触れられているところが特徴的です。*1

  • ThinApp
  • RDS Hosted Desktop & Apps
  • Workspace Portal
  • NVIDIA vGPU, App Volumes, Mirage, vRealize, ...

下記は View のセクションからの抜粋です。
表やスクリーンショットを多く使われていて読み易いと思いました。

f:id:ogawad:20141123013340j:image


機能概要が中心であるため、運用フェーズというよりは PoC や製品検討・エディションの選択など、検討や導入フェーズで役立つと思います。

タイトルに「View」の文字が無いので見落としがちですが、
6.0 の新機能はもちろん、View 以外のバンドルコンポーネントはどのようなものか、どのエディションが自社に最適か、などを判断するのにとてもお勧めです。


*1:これらの Horizon ファミリーについて触れた和書はこれまで無かったかと。。