質問: 駆け出しエンジニアです。 まだエンジニアとして半年くらいしか経っていないので、意図したことが質問できないかもしれませんが、ご回答宜しくお願い致します! 主にwebアプリを作成しております。 そうするとローカルにvirtualbox+centos+vagrantを使ったりして、そこで開発しています。 最近では、(私のPCはiOS,macを使用)macにubuntuを入れて、そこで色んな言語だったり、LinuxとiOS間で互換性?を持たせてDBの操作をしたり、redisをいじってみたり...しています。 本日もそのubuntuで、色々作業していたらターミナルでエラーが!、、 調べてみたらubuntuのディスク容量が足りないとのことでした。ググっていると、ディスクを拡張させたりするのは1年に1度あるかないかくらい、と記事を書いている方が多く、 そこでふと思ったのですが、仮想環境って一般的に(一般的にといっても目的にもよると思いますが...)、プロジェクト毎だったり、自分で仮想環境構築するのも何かこれを開発したい!とか、この言語学んでみようとかなんでしょうか? 僕はとりあえずubuntuになにからなにまでインストールして、開発してみてたので、目的もなくただこれを触ってみようとか、設定やってみようということだったわけなのですが、、 仕事だと先輩らがほとんど仮想環境を管理していてあまり心配しなくて良いとも聞きますし、また、ホストOS上で開発しているとたまにOSが壊れるとか聞きますし... 僕自身まだ駆け出しなので、目的として新しい言語でwebサイトとか開発してみるなら、 使ったことない仮想環境+新しい言語 (次考えてるのはdocker+ruby on rails) みたいな風にしてやっていこうかと思うのですが、あまりに非効率だと思いますか? 確かにどんどん環境構築していくとPCの容量もどんどん減っていく... 定性的な質問になりますが、 皆さんが何か仮想環境を構築するときに基準となる考えや考え方など、何かアドバイスを頂けたらと思います。 すごくざっくりしてしまい申し訳ございませんが、宜しくお願い致します。
回答: そもそも仮想環境というか仮想マシンを作成する意図も色々あると思います。 ・環境集約、リソース効率化 ・サービスの scrap&build ...etc。 結局のところ目的による、とも言えます。 それと VM側仮想ディスクについてですが Thin Provisioningと Thick Provisioningで 実際の占有量が異なりますし、初めから小さな VMとして仮想ディスクを作ってしまうと 結局は作り直しが面倒になるという事もあります。 ある意味必要なものだけ用意して、要らなくなったら環境ごと捨てる、という考え方もありますし、運用局面で考えれば「お考え次第」というのが正直なところだと思います。 個人的には現状の PCなり Serverであればそれなりのリソースを確保出来る機材を使用する限りそんなことを気にせず「必要な時に作って、退避しないとならんデータのみ退避したら VMなんて捨ててしまえばよいのでは?」と思う方です。