怪しげだったものが世界を作る
2014年04月29日
ここ最近のPC関連の技術トレンドで外せないのは仮想化だと思います。
さてこの仮想化って何が便利なの?というのが本日のテーマでございます。
皆さんのお持ちのPCは1台なら1台分の働きを期待します。
(変な言い回しですがご勘弁ください。)
ところが、現在のコンピュータは、今や一部の特殊な処理を除けば充分な性能を持ちます。
つまり、1台でも1台分の働きだけだと、もったいないのです。
ましてや、最近のCPU(中心回路)は1つのチップの中に複数個収められていることがほとんどです。
つまり、1台のPCでも、中を見ると複数台のPCがギュッと入っている状態なのです。

引用:http://ja.wikipedia.org/wiki/Hyper-V
もちろん、皆さんがお持ちのPCが複数台になると言っても意味がわかりませんし、必要性も普通はほぼないでしょう。
仮想化が注目を浴びているのは「サーバ」周辺です。
例えば
ホームページを置くために必要なWebサーバ
仕事の大切なデータを保管し、共有するファイルサーバー
経理情報なんかを処理する汎用機なんかもありますね。
当社も仮想化はもう欠かせないものになっています。
Webシステムを開発するときに必要なのは、もちろんWebサーバーですね。
1台のWebサーバーで、複数のWebシステムを開発する場合、色々と考えなくてはいけない問題があります。
例えば、本番では、1つの専有サーバーで運用するシステムでも、開発は複数のWebシステムが同居する環境で開発するとします。
しかし、もうこの時点で、すでに本番サーバーと開発環境が同一ではなくなり、場合によっては、開発環境でテストしてOKを出しても、本番環境でもう一度テストしなくてはいけない事態が発生します。
つまり、本来は1つのWebシステムで1つの専有開発サーバーが理想的なわけです。
(本番サーバーと完全に一致させた環境で)
仮想化はこんな時に役立ちます。
ベースOSの上に複数の仮想的なハードウェアを構築し、このハードウェアの1つをサーバーとして使用するわけです。
仮想的なハードウェアに対し、OSのインストールも行い、まるっきり本当に1台のサーバーとして、開発サーバーを構築するわけです。
そして、構築した開発サーバーはそのままコピーして本番サーバーにすることも可能です。
そうすると環境もシステム構成も完全に一致した開発環境と本番環境が手に入るというわけですね。
これならば信頼性の高い動作テストが行えます。
これは我々にとってすごくありがたいことです。
というわけで、当社の開発環境は大部分を仮想化して構築するようになりました。
ところで、最近では物理的なハードウェアをコピーして、仮想的なハードウェアに変換するP2Vという技術もあります。
古いハードウェアの場合、補修パーツがすでに存在しない場合もあります。
このため、古いハードウェアをまるっと仮想化して、延命化するわけです。
例えば古い経理システム等、専用ハードで昔から使っているようなシステムの場合、仮想化は救世主のような技術なのです。
また、Webホスティングサービスの会社も、仮想化した1台を提供するサービスをすれば、専有サーバなのに、共有サーバと似た値段で提供できると考えました。
それがVPSです。
安いところでは、数百円から提供するようになりました。
サービスにばらつきがあり、ひどいところもありますが、何しろ専有サーバをかなりやすいコストで利用することができるので、とても今流行サービスだと思います。
http://kakaku.com/pc/rentalserver/ma_0/s1=3/
Amazon Web Servicesもその一つと考えても問題ないでしょう。
(厳密にはクラウドサービスになっていきますが、それはまた、次回に・・・)
https://aws.amazon.com/jp/
で、この仮想化技術、昔はエミュレータとよく呼ばれていました。
そう、以前ご紹介したこれと根っこが同じ考えなわけです。
http://iaseteam.eshizuoka.jp/e1110170.html

当初は怪しげでなんだか信頼の置けない技術だったわけです。
しかし、考え方は昔からあり、様々な面で利用されてきました。(信頼性は低いけど)
Macintoshでは68K MacからPowerPCに変わるときにOS標準で搭載されましたし、Mac OS XのCarbonやRosettaも同じ考え方だと思います。
http://ja.wikipedia.org/wiki/Mac_68K%E3%82%A8%E3%83%9F%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%BF
http://ja.wikipedia.org/wiki/Carbon
http://ja.wikipedia.org/wiki/Rosetta
※考えてみればMacはアーキテクチャが変わるたびに、綱渡りをして完成度の高いエミュレータを出していたわけですね。すごい!
ところは今は仮想化はトレンド。
何しろ、インテルまで通常のPCにIntel VTという機能を盛り込んでいるぐらいです。
当初はハッカーのおもちゃだったPCが、ビジネスの主流になり、今に至る流れの中、このトレンドも同じ流れの中で進化していったわけですね。
今や、怪しげな技術ではなく、背広着たオッサンたちにとって、非常に重要な技術になったわけです。
つくづくPCの世界は不良がスタンダードを作るのだなぁと思った次第。

不良でヒッピーだった某お人
さてこの仮想化って何が便利なの?というのが本日のテーマでございます。
皆さんのお持ちのPCは1台なら1台分の働きを期待します。
(変な言い回しですがご勘弁ください。)
ところが、現在のコンピュータは、今や一部の特殊な処理を除けば充分な性能を持ちます。
つまり、1台でも1台分の働きだけだと、もったいないのです。
ましてや、最近のCPU(中心回路)は1つのチップの中に複数個収められていることがほとんどです。
つまり、1台のPCでも、中を見ると複数台のPCがギュッと入っている状態なのです。

引用:http://ja.wikipedia.org/wiki/Hyper-V
もちろん、皆さんがお持ちのPCが複数台になると言っても意味がわかりませんし、必要性も普通はほぼないでしょう。
仮想化が注目を浴びているのは「サーバ」周辺です。
例えば
ホームページを置くために必要なWebサーバ
仕事の大切なデータを保管し、共有するファイルサーバー
経理情報なんかを処理する汎用機なんかもありますね。
当社も仮想化はもう欠かせないものになっています。
Webシステムを開発するときに必要なのは、もちろんWebサーバーですね。
1台のWebサーバーで、複数のWebシステムを開発する場合、色々と考えなくてはいけない問題があります。
例えば、本番では、1つの専有サーバーで運用するシステムでも、開発は複数のWebシステムが同居する環境で開発するとします。
しかし、もうこの時点で、すでに本番サーバーと開発環境が同一ではなくなり、場合によっては、開発環境でテストしてOKを出しても、本番環境でもう一度テストしなくてはいけない事態が発生します。
つまり、本来は1つのWebシステムで1つの専有開発サーバーが理想的なわけです。
(本番サーバーと完全に一致させた環境で)
仮想化はこんな時に役立ちます。
ベースOSの上に複数の仮想的なハードウェアを構築し、このハードウェアの1つをサーバーとして使用するわけです。
仮想的なハードウェアに対し、OSのインストールも行い、まるっきり本当に1台のサーバーとして、開発サーバーを構築するわけです。
そして、構築した開発サーバーはそのままコピーして本番サーバーにすることも可能です。
そうすると環境もシステム構成も完全に一致した開発環境と本番環境が手に入るというわけですね。
これならば信頼性の高い動作テストが行えます。
これは我々にとってすごくありがたいことです。
というわけで、当社の開発環境は大部分を仮想化して構築するようになりました。
ところで、最近では物理的なハードウェアをコピーして、仮想的なハードウェアに変換するP2Vという技術もあります。
古いハードウェアの場合、補修パーツがすでに存在しない場合もあります。
このため、古いハードウェアをまるっと仮想化して、延命化するわけです。
例えば古い経理システム等、専用ハードで昔から使っているようなシステムの場合、仮想化は救世主のような技術なのです。
また、Webホスティングサービスの会社も、仮想化した1台を提供するサービスをすれば、専有サーバなのに、共有サーバと似た値段で提供できると考えました。
それがVPSです。
安いところでは、数百円から提供するようになりました。
サービスにばらつきがあり、ひどいところもありますが、何しろ専有サーバをかなりやすいコストで利用することができるので、とても今流行サービスだと思います。
http://kakaku.com/pc/rentalserver/ma_0/s1=3/
Amazon Web Servicesもその一つと考えても問題ないでしょう。
(厳密にはクラウドサービスになっていきますが、それはまた、次回に・・・)
https://aws.amazon.com/jp/
で、この仮想化技術、昔はエミュレータとよく呼ばれていました。
そう、以前ご紹介したこれと根っこが同じ考えなわけです。
http://iaseteam.eshizuoka.jp/e1110170.html

当初は怪しげでなんだか信頼の置けない技術だったわけです。
しかし、考え方は昔からあり、様々な面で利用されてきました。(信頼性は低いけど)
Macintoshでは68K MacからPowerPCに変わるときにOS標準で搭載されましたし、Mac OS XのCarbonやRosettaも同じ考え方だと思います。
http://ja.wikipedia.org/wiki/Mac_68K%E3%82%A8%E3%83%9F%E3%83%A5%E3%83%AC%E3%83%BC%E3%82%BF
http://ja.wikipedia.org/wiki/Carbon
http://ja.wikipedia.org/wiki/Rosetta
※考えてみればMacはアーキテクチャが変わるたびに、綱渡りをして完成度の高いエミュレータを出していたわけですね。すごい!
ところは今は仮想化はトレンド。
何しろ、インテルまで通常のPCにIntel VTという機能を盛り込んでいるぐらいです。
当初はハッカーのおもちゃだったPCが、ビジネスの主流になり、今に至る流れの中、このトレンドも同じ流れの中で進化していったわけですね。
今や、怪しげな技術ではなく、背広着たオッサンたちにとって、非常に重要な技術になったわけです。
つくづくPCの世界は不良がスタンダードを作るのだなぁと思った次第。

不良でヒッピーだった某お人
MEANと私(出会い編)
[Rails]Railsのバージョンを上げたことでspatial_adapterが使用できなくなりました
[Rails] テーブル無しのモデルでお問い合わせフォームをつくる(その1?)
憧れの月額課金サービスモデル(レビュー)。
非デザイナーでも困らない!Bootstrapのページが誰でも簡単につくれるジェネレーター5つ
AWS summit Tokyo 2015に行ってきました!
[Rails]Railsのバージョンを上げたことでspatial_adapterが使用できなくなりました
[Rails] テーブル無しのモデルでお問い合わせフォームをつくる(その1?)
憧れの月額課金サービスモデル(レビュー)。
非デザイナーでも困らない!Bootstrapのページが誰でも簡単につくれるジェネレーター5つ
AWS summit Tokyo 2015に行ってきました!
Posted by iA SEチーム at 15:46│Comments(0)
│システム制作