2011年のHak5の動画
私はこの動画2014年くらいに見たと思います。
Hak5 https://www.youtube.com/watch?v=4J5vldQBKxU
PrxomoxVEを知ったのは、この動画でした。
新規サーバーを構築するのに、ケースはマザーボードの箱ですませているし、仮想環境を提供するOS(ProxmoxVE)をインストールするのもtftpで流し込んでブートさせていて、CD/DVDすらマザーボードに付けていないし、でもきちんと仮想環境を増築しているのを見て、凄いと思いました。
ドメイン販売会社にとって、、ドメインを必要とする人に、より多くのサーバーを提供することが出来る仮想化テクノロジーは大正解だったのではないでしょうか?。
今後も、この状況が継続するなら、無料に近い仮想化ソリューションは存続できると思いますが、将来どのような変化が起きるのかは予測できません。
当時は仮想環境で動かす仮想マシンで、どのようなことをするのかなーと思っていました。
先ほどの動画を見る前は、Xenを使っていて
VirutalBOXを少し触り始めた頃。
個人がパソコンを使う場合、Microsoft Officeや写真関連のグラフィックソフトやゲームを使うことが多いだろうと思ってました。
そして、そのようなアプリケーションはCPUパワーや画像処理の機能にパワーを必要としました。
仮想マシン環境を提供するのにパワーを削がれた上に、さらに幾つかの仮想マシンで残りのマシンパワーを分け合う事になるので、もっさりしたり、反応が極端に落ちたりするのではないかとも思っていました。
当時のLinuxにも、KVM仮想化と言う技術が搭載されていて、私はXenの仮想環境か、Linux+KVM仮想化の仮想環境かどちらが良いのかなと、思っていた頃でした。
VirtualBOXやCygwin等も少し試したりしていましたが、実際使いみちとして何に使えるのかな?と言う感想を持っていました。
Microsoft Officeと似たようなソフトに、OpenOfficeやLibreOfficeと言うのが出てきましたが、これらはフリーソフトでしたので、自己責任で利用するスタイルでした。会社で業務に使うには、社員一人の判断で使うのは怖かったのですが、家計簿など自宅で利用するには、充分かな?と思ったりもしていました。
そして、当時のPCで、KVM仮想化やVirtualBOXを動かしていて、フリーのOpenOfficeやLibreOfficeを動かした感じでは、自宅でゆっくり使うには充分だという感想を持ちました。
セキュリティー的にどうなのかな?とか。
普通は、1台のコンピュータのハードウェアに1つのOSを動かしていると思います。
そして、そのコンピュータに1枚か、複数枚のLANインタフェースが搭載されている。
そこで、クライアントアプリケーションや、サーバーアプリケーションを動かしている。
LANインタフェースと、各々のアプリケーションの括りつけを明確にしているなら、LANインタフェースを監視することで、それに括りつけられたアプリケーションの通信や通信ログを得ることが出来ると思いますし、LANインタフェースを閉塞することで、そのLANインタフェースに括りつけられたアプリケーションに出入りする通信を遮断することも可能になります。
しかし、一般的にパソコンを利用する場合、有線LANで通信するか、WIFIで通信するか、ブルーツースは、スピーカーやイヤホンや、キーボード、マウスに使うくらいだと思います。
この感覚で、パソコン内にサーバーを動かすと、1つのLANインタフェースにあらゆる通信が含まれることになります。
しかも、個々のアプリケーション毎に通信内容を見る機能や、個々のアプリケーションのログを確認する機能が提供されていないことも多いと思います。
1つに1つだと
複数の仮想マシンを使って、1つの仮想マシンに、1つのサーバーアプリケーションを動かすように、アプリケーションを別けて入れれば、LANインタフェースとサーバーアプリケーションを括りつけるという難しいことが、簡単にできてしまいます。ログもサーバー毎に別けることが出来てしまいます。
コンピュータを学習する環境?
1台のパソコン、1台のコンピュータをある程度理解していないまま、いきなり沢山のコンピュータが入り混じった環境を使いこなすのは厳しいと思います。
しかし、1台のコンピュータについては、理解を終えたので、複数のコンピュータ環境、複数のサーバー環境、各種クライアント・サーバー環境にステップを進めようとしている人には、ログ解析や通信の解析、システムの動きを理解するのに、仮想環境は便利なのではないか?と思えます。
不具合発生時の問題切り分けにも便利かも?
仮想マシンのバックアップを残せるなら、設定変更を行っていて、ミスった場合に、設定をいじる前のバックアップを持ってくれば、復活できる可能性が上がります。
実験環境以外で、最新のデータを壊すと、とんでもない事件に発生しかねないので、取り扱いには慎重を要すると思いますが、実験環境や学習環境なら、あれこれいじる前に戻す。というお手軽コースが用意できると思います。
大丈夫なイメージと、設定ミスのイメージを、ちょこちょこ入れ替えて何が問題なのか調べたりすることも出来るかも知れません。
いじる前と後の仮想マシンのイメージを、消さずに展開しておいて、停止させておいて、いずれかのバージョンの仮想マシンだけを起動させたりして、変更を加えたバージョンごとに、パフォーマンスが改善されるとか、落ちるとかを調べるのも、楽になるかも知れません。
無料の仮想化ソフトから始めるべきなの?。大手レンタルサーバーサービスや商用仮想環境ソフトは?。
こういう疑問を持つ人は多いと思いますが、各自の知識やスキルや状況により答えは変わると思います。
無料ソフトは、サポートがない場合も有りますので、自力で情報収集したり、仲間を探す力を養うことが出来ると思います。
有料ソフトでサポートも付いているなら、疑問について即答してもらえる環境を整えることが出来るかも知れません。その場合、システムを求める姿にするのに、短時間で到達できるとか、忘れる前に知識のセットを無駄なく揃えることが出来るなど大きなメリットもあると思います。
仮想化で、もっさりしたくない。
性能を求めるなら、コンピュータを沢山並べるのが一番だと思います。
自分の保有する一般的なコンピュータで仮想環境を作る場合、仮想環境を作るためのオーバーヘッドがありますので、もっさりすると思います。
一般的に、コンピュータは、隙間なく常に100%で動作するわけではないのです。結構スキマ時間が有ります。
なので、仮想環境を作って、そこで幾つかの仮想マシンを動かしても、常時100%で稼働すると言う事態に至らない組み合わせも結構あるようです。
コンテナは軽い?
仮想化技術に「KVM仮想化」や多くの技術が存在すると思います。
当時のProxmoxVEは、「KVM仮想化」と「OpenVZのコンテナの仮想化」をサポートしていました。
当時比べましたら、KVMより随分とOpenVZのコンテナは機敏に動作しました。
2021年現在、ProxmoxVEは、コンテナはLXCをサポートしているようです。
当時、あれこれ調べて居た処、仮想環境の上で動作する仮想マシンは、コンテナが機敏に動作可能だと言う事を知るに居たりました。
Webアプリケーション
昨今、ブラウザでどこかのサイトを見る事が多いと思います。
誰かが、どこかからアクセスしてきてコンテンツを見てくれたり、サービスを受けてくれる場合は、そのサーバーにGPUが必要ないケースが多いと思います。
見る側には、GPUによる画像処理性能が求められますが、送り出す側のサーバーは、データをいかに早く準備できるか、要求してきたユーザーに対して、いかに早く送り返せるかが重要になるようです。
サーバには、高いCPU性能や、ストレージ性能や、ネットワーク性能が求められるようです。
そうは言っても、一連の処理が終了して、要求してきたユーザー(人間)が、送り返されてきた結果を得た後は、少し読む動作が入るので、ミリ秒単位で、次の要求を投げてくることはなくて、サーバー側には、そのユーザーに関して空き時間が出来るようです。
お手軽パック
Webサーバーと言うジャンルで何があるのかな?。と考えると、クラウドストレージや、ブログサービスなどが思いつくと思います。
OSだけのマシンに、データベースアプリや、ストレージサーバーや、ブログサーバー等のアプリケーションをインストールして、きちんと設定を行い、運用するのは結構大変だと思います。
ところが、
仮想マシン環境を前提とした、ストレージサーバーや、ブログサーバー等の、お手軽パックが存在します。
大手クラウドサービスを前提とした、お手軽パックだけでなく、様々あるようです。
ProxmoxVEに私が興味を持ち始めた当時にも、既にProxmoxVEにダウンロードして利用できるコンテナとして存在していました。
世間と隔離した自宅のLANの上で
必要なときだけインターネットと繋がった環境につなぎながら、クラウドストレージサービスや、ブログサービスの実験をすることが出来ます。(自宅LANの中でだけですけど。)
インタネットを介して世間に向けて公開するには
その為に必要な勉強と設定をするだけです。
全ては自己責任!?。
自宅の仮想環境を使いこなそうとするなら、ネットワークに関する勉強は必要だと思います。
さらに、
自宅のネット環境に置いたサーバーをインターネットに公開?と言うか、自宅に置いたサーバーに、インターネットからアクセスが来るようにして、なお且つ自宅LAN環境を荒らされないようにするとか、インターネット上に良くないパケットを出して世間を騒がせる様な事態を招かない為には、充分にネットワークに関する勉強をすることが大切だと思います。
とりあえずベースでも、きちんと要点を抑えられていれば、自宅ネットワーク環境に配置したサーバーをインターネットに、充分公開出来ると思います。
しかし、知識が少ない場合、不用意に設定を変えてしまっても気づかないとか、世間の何かが変化した時に、自宅のセキュリティーが危機に晒されるとか、各種条件の関連性を踏まえた管理が出来にくいので、危険が伴うかも知れません。
無料なの?
サブスクや、寄付や、請求書、支払い方法等、課金関連について、調べることが大切だと思います。
有料無料様々なので、きちんと情報収集して見極めていくことが大切。
ケースバイケースで、去年は無料だったとか、去年は有料だったということも発生するかも知れません。
セキュリティーは万全?
判断するのは当人。
誰かに安全を保証して欲しいのですが、難しいと思います。
UNIXの時代は、普通は、自分でコンパイルするのが当たり前だったらしいです。
ソースコードは読めますが、コンパイルして、マシン語になってしまった実行モジュールはチンプンカンプンなので、実行モジュールで受け取らないとか。
ソースコードで受け取り、ソースコードを読み、ソフトウェアの挙動を思い浮かべて、様々な条件での動作を理解し、安全だったらコンパイルして、インストールする。
一般人には無理です。というか、並の人間には無理です。
しかも、昨今では、多様なプログラミング言語で書かれており、様々なテクノロジーの集大成みたいなアプリケーションをソースコードで受け取る事が難しいのと、読みこなせないのと、規模が膨大なので、人海戦術でも簡単には行かないので、見極めるのが難しい。
誰かの理論をもとに、誰かが何かを制作して、その上に誰かが、何かを作る。と言うふうな、多重構造なのと、その誰かの国籍も多様なのと、自分が入手したものには、それ以外の誰かの改変が加えられていないか?を調べるのも容易ではないので。
誰に聞くのが良いのかについても、聞く相手を見つけるのが大変。
嘘はついていないか?。
何かを隠しているのではないか?。
何かを見落としているのではないか?。
本当に理解できているのか?。
わからないことばかりです。
ペットの鶉くんに問いかけてみる。と打ち込んだ処…、テレパシーかな?
隣の部屋で、鶉くんが「gaggar」とか「wakkarukar」とか鳴き出したのが、聞こえてきました。
テレパシー?。
恐山の潮来さんに聞いてみる?。
AIに聞いてみる?。
仮にあなたが、ソフトウェア会社の社長だった場合に、コアエンジニアが誰なのかを世間にわかるようにしますか?。隠しますか?。
ヘッドハンティング防止とか考えて予防線を張りますか?。
コアエンジニアさんに、「あなたがコアエンジニアだ」と言いますか?。
エンジニア社員の殆どに、「あなたがコアエンジニアだ」と言いますか?。
等考えた時、聞く相手がわからないのと、
仮に誰か聞く相手が出来たとして、どの程度まともな解答が得られるのか?(本当に見落としや勘違いはないのか?)判らない。
理路整然と、ITやDXの現状と将来について述べることが出来る信頼できる人材。
は、現れるのでしょうか?。
また、自ら、そう言う人材像を目指す人は、何から始めれば良いのでしょうか?。