ギャバンITサービス
お菓子の家が作れるシステムエンジニアです

vmwareのホストOSについて調査

親ホストのサーバで動かせるOSを調査 Dell R620関連 http://ja.community.dell.com/techcenter/software/w/wiki/391.free-os.aspx ※古いサーバなのでもうページはもうない VMwareが動くLinuxを調査 http://www.vmware.com/jp/support/support-resources/pubs/player_pubsにアクセスできませんでした www.vmware.com ※レイアウトは変わったけどページは存在する Product Interoperability Matrix interopmatrix.broadcom.com ※broadcomに買収されたからページは引っ越した vmware4のときに調査 vmware5のときに調査

vmwareの画面表示

vmware tools vmwareのゲストOSにwindows使うとき、vmware toolsっていう追加ソフトウェアを必ず入れる。 これがないとGUIが快適にならない。 トリプルスクリーン行くで vmware toolsを入れて複数画面使っていると、上のほうに画面のアイコンが表示されてて、またがって画面を使う指定ができる箇所がある。 ここで指定はできるはずなんだけど、rtx3080のグラボのせたマシンでこの指定がきかないー! 古いマシンだと普通にトリプルスクリーン行けたのに、新しいハードウェアだとダメみたい(2021年4月時点ではアカンかった)。 回避するには、ゲストOSへリモートデスクトップ接続するときに「リモートセッションですべてのモニターを使用する」にチェックを入れて使う。 vmwareさまなんとかしてー。 vmware toolsのバージョン上がって対応してくれたらうれしい。 って、2021年10月にwindows11にアップグレードするときtpm対応をやったから、vmwareを16.2にバージョン上げてvmware toolsもバージョン上げたらトリプルスクリーン使えるようになってた。 メジャーバージョンアップすると、次のバージョンアップまではトリプルならず 2023年1月にvmware17.0.0が出てた。vmware toolsも12.1.0になってたけど、トリプルスクリーン使えず・・・。 windows10から11になってから初めてのvmwareバージョンアップ。 画面は映るし、LANもちゃんと性能出てるし、3ヶ月ぐらい待ってマイナーバージョンアップやってみっか。

仮想化の系譜

職業プログラマの頃は意識してなかった。 仮想化はメインフレームの頃にもあった。 本番環境と開発環境を分けるために使ってたと思う。 cobolで書いた処理をどうしても高速化したいために、アセンブラでミスって書いてしまい開発環境の中で無限ループしたときは当時の上司にめっちゃ怒られた。 1997年頃 solaris上での開発。お客さんの要件で建物作るときみたいに「中間検査」があって、途中までの開発内容を開示しなきゃいけなかった。当時のリーダーは、なぜか自分のPCをデュアルブートにしてwindowsとlinuxを起動できるようにしておき、検査の席ではlinuxに変身させてダミーサーバにするよう指示してきた。最初はlinuxのインストールに何度も失敗し、windows起動できなくなって苦労してた。休日にサーバの勉強や挑戦する習慣がついて、平日は気合と根性で仕事やってた時代ですな。なんと自席でタバコが吸えた。 2000年頃 power pc の入ったmacを使ってたら、コネクティクス社のvirtual PCというソフトウェアの配下でwindowsが動くことを知った。このソフトウェアは後にmicrosoftに買収されて製品は消えてしまった。 やってみたらあっさりwindows98がOS Xの中で動いた。このときはただ「動いた」だけで、それを使い込んだわけじゃない。なんでunixの中でwindowsが動けるのかまったく不思議な光景だった。 windows版というのもあって、ついでに solaris8 のメディアをサンから購入して動かそうとしたが、LAN系がどうしてもちゃんと動かず物理環境でインテルの1万円もするLANカード買ってoracle8入れて動かしてた。 virtualPCでのmacアドレス指定 拡張子がvmcのバーチャルマシン設定ファイルを、メモ帳で開いてみる。 アダプタアドレスが登録されているのは、この部分。 <ethernet_card_address type="bytes">12桁の数字と文字列</ethernet_card_address> 12桁のキャラクターを他のものに入れ替えれば、MACアドレスは変わる。 virtualPCのvhdファイル圧縮 仮想ドライブ容量の圧縮(Virtual PC 2007 SP1)のためprecompactorの実行 ゲストOSを起動する。 C:\Program Files\Microsoft Virtual PC\Virtual Machine Additions\Virtual Disk Precompactor.iso をマウント ウィザードが起動するので実行するとprecompactorが実行される。 コマンドプロンプトから以下の通り実行してもOK。 cd-rom\> precompact -setdisks:c ドライブの圧縮 precompactorの実行後に行う。 ゲストOSを停止する。 Virtual PC コンソールから、「ファイル→バーチャルディスクウィザード」を起動。 「既存のバーチャルディスクの編集」を選択。 圧縮するディスクファイル(.vhd)を選ぶ。 「圧縮する」を選び、あとはウィザードに従う。 2008年頃 社内SEやってるときにサーバの仮想化で物理容積を縮小することを考えた。ファイルサーバとイントラwebはあっさりp2vできた。バックアップにDLT使ってたのを、USB2.0の2TBディスク5本をVMに接続してリカバリ依頼をリモート作業で応答できるようにした。hyper-vよりvmwareのほうが扱いが簡単に思えた。 @it入門記事 業務アプリサーバをp2vし、macアドレス指定での製品アクティベートに成功して8台ぐらいあったサーバを3台に縮小できた。バックアップソフトウェアを使わず、vmdkファイルをコピーしておけばシステムを完全に維持できるようになったのは驚いた。 2011年頃 .netでアプリケーションを作っていた頃。前任者がポンコツで、扱いが面倒な crystal report と click once を取り入れたアプリの面倒を見なきゃいけなかった。本社で作っておいたアプリが店舗端末でどうしてもうまく配信できなくてかなり悩んだ。それやりながら、ファイルサーバをwindowsではなくvmのlinux + sambaにしてcalの節約に取り組んだ。購入したサーバではなく、vmをレンタル機にして5年単位でのハードウェア刷新を目指した。 2018年頃 ある業務でdockerの存在を知った。コンテナ仮想化は最初は意味がわからなかったが、インターネットの使える環境で構築の仕方をdockerファイルに書くことで、アプリケーションサーバやDBを一発仮想化できることを知った。railsで作ったアプリケーションのテストをローカルPCや開発環境で展開するとき、このコンテナ利用がとても役に立った。Dockerfileを作っておいて、db2のコンテナを作りrailsでビルドするとデータ流し込みと実行をやってくれる。これを応用してgcpのvmにmariadbとphpを入れていたのを、完全にdockerでの運用に切り替えた。gcpのmariadbデータを永続化領域にしておいて、そのバックアップをgoogleドライブ経由でローカルPCのvmに持ってくると、環境を完全に維持できてしまう。周辺知識としてvagrantとgitもこの頃に覚え始めた。svnはバージョン管理がやりにくいと感じたので、取り扱いすぐやめた。 2023年頃 業務でkubernetesを扱うチャンスがあった。google cloudの無償枠を新規で確保して、3ヶ月ほど練習。wordpress/mysql8のpod作ってみたり、イメージ置き場のGCRをGARに引っ越したりを練習した。無償枠の期限になったら、ローカルで練習したくなったからminikube使い始めた。docker-desktopが有償になってrancher-desktopも試したけどイマイチやったから、minikubeはmacの中で使うことにした。ビルドはlinux側のdocker環境の中でやるけど、minikubeではイメージをloadするようにした。kubernetesの中ではxrdpコンテナも動かす運用にした。 ...

VMWare3.0 使い始めの参考URLとvmdkファイルへの追記

参考1 参考2 mainMem.useNamedFile = “FALSE” MemTrimRate = “0” usb.autoConnect.device0 = “0x105a:0xff10” ※usbのdeviceに設定するvidとpidは親ホストで物理接続して確認すること

vsphere5-親ホストの自動ブート

crontabの原本 1 2 3 4 5 6 7 # cat /var/spool/cron/crontabs/root #min hour day mon dow command 0 20 * * * /bin/reboot 1 1 * * * /sbin/tmpwatch.py 1 * * * * /sbin/auto-backup.sh 0 * * * * /usr/lib/vmware/vmksummary/log-heartbeat.py */5 * * * * /sbin/hostd-probe crontabを書き換えするコマンドライン 1 2 3 #/bin/kill $(cat /var/run/crond.pid) #/bin/echo "0 20 * * * /bin/reboot" >> /var/spool/cron/crontabs/root #/usr/lib/vmware/busybox/bin/busybox crond 更新するための方法 /etc/rc.local.d/local.shに追記する ...