/var/log/study

つまり雑記

FireFoxのユーザープロファイルを消したら軽くなった

メモ程度の話し

ターゲットのOSはmac

/Applications/Firefox.app/Contents/MacOS/firefox-bin -P

上記のコマンドで、ユーザープロファイルが意図しない数になっていたらそれを消したら軽くなるはず。

なにやらユーザープロファイルを使い分けるテクもあるらしい. が、自分はそんなテクを使ってなくて本来1つしかないはず. なのに2つのプロファイルがあったので消した.

自分の環境ではFirefox, osともに再起動しても, Addonを消しても, 履歴を消しても全然軽くならなかったfirefoxが軽くなった.

OSXからESXi 6.5.0 にvCenter6.5.0をインストールする際のエラーに対処する

やりたいこと

タイトルどおり、vCenter6.5.0をESXi6.5.0に対してインストールしたい

問題点

途中で色々とエラーが出る.

エラーログを見る感じ、インストールの過程で必要なファイルが見れないとのこと

自分の試行錯誤中のエラーログは以下のような感じ

2017-01-07T14:21:58.757Z - error: Could not find ovaFile /^VMware-vCenter-Server-Appliance-.*_OVF10.ova$/ in /private/var/folders/lk/jk8fbl3s4qgc7fzz7r3wxn300000gn/T/AppTranslocation/vcsa
2017-01-07T14:21:58.757Z - info: ovaFile: null
2017-01-07T14:21:58.758Z - error: OVF probe error: Error: OVA file is not available

参考URL

sflanders.net

上記のページを読みながら取り組みましょう.

ざっくりとした流れ

VMware-VCSA-all-6.5.0-4602587.iso (これは自分が 2017/1/7にmy vmware からダウンロードしたiso) をマウントする.

すると以下のようなディレクトリ構成になるはず.

.
├── dbschema
├── migration-assistant
├── readme-de.txt
├── readme-es.txt
├── readme-fr.txt
├── readme-ja.txt
├── readme-ko.txt
├── readme-zh-CN.txt
├── readme-zh-TW.txt
├── readme.txt
├── umds
├── vcsa
├── vcsa-cli-installer
└── vcsa-ui-installer

そのなかから vcsa-ui-installer/mac/Installer を起動する.

インストーラーの案内に沿ってポチポチ押すと、途中でエラーが発生するので,そこで出て来るアラートに, log というリンクがあるから, そこを押すとログファイルがダウンロード出来る.

ログファイルの一番下に、

/private/var/folders/lk/jk8fbl3s4qgc7fzz7r3wxn300000gn/T/AppTranslocation/

上記のようなパス(おそらく環境によって異なるはずなの)が記載されているはずなので、そこに対して、マウントしたisoのvcsaをまるっとコピーする.

cp -a /Volumes/CDROM/vcsa /private/var/folders/lk/jk8fbl3s4qgc7fzz7r3wxn300000gn/T/AppTranslocation/

すると自分の環境ではインストーラーが上手く進み始めた

Intel NUC BOXNUC6I3SYH に ESXi 6.5.0 をインストールする

TL;DL

特に何もしなくても, nucを購入し, ESXi6.5.0のboot usbを作成してインストールすると使えるようになる.

背景

現在会社ではインターネットに関連のあることを中心として様々なことに取り組んでいる. そんな会社に新入社員として入社し, 長期の研修を経て12月, クラウドを開発する部署に配属された.

弊社のクラウドは, VMWare社のソフトウェアを基盤としている. そうなるとクラウド開発者の一人として, VMWare社のソフトウェアはガンガン触っていく必要がある. しかし, 会社の本番環境は当然お客様が利用しているし, 検証環境も部署の多くの方が利用している.

自分はPHPなどを利用したwebアプリケーションの畑の人間で, 正直ネットワークや仮想基盤の話しは右も左も分からない. 右も左もわからない状態で色々と操作していくと, 「環境を壊してしまうのではないか?」という不安がつきまとう. さらに自分がプログラミングを始めた頃はAWS全盛期で, 「ぽちっ」と押したらサーバーが用意されるのが当たり前で, 物理サーバーなんて持った事が無い.

この際だから小規模の物理サーバー, 物理ネットワーク, 仮想化基盤をひとしきり用意して自分だけの検証環境を用意するのが, 今後の学習効率が最も良いのでは?と思ったのが今回の背景となる.

目的

物理サーバー, 物理ネットワークを入手し, 仮想化基盤をインストールして, 自分だけの検証環境を手に入れ, 今後の学習効率を挙げること.

目標

とは言え, 会社の環境と同じ環境を作るのはハードルが高い.

そのため小規模なコンピュータに対して, ESXiをインストールして, VMを自由に立てられる様にすることを最初の目標とする.

準備

お財布と検討した結果, 今回を購入した. VMWare製品の要件を眺めると, メモリは多めにしておいたほうが無難そう.

(以下は今後のことも考え2セット+スイッチを購入している)

f:id:yaaamaaaguuu:20161229205922j:plain

組み立て

特に言及することなし. NUCに入ってるペラ紙を参考にしたら問題なく組み立てられます.

完成したら, LANケーブルでルーターなりに接続する.

インストール

www.virten.net

上記を読むに、特に何もしなくてもNUCに対してESXi6.5.0がインストールできそうな雰囲気なので、後は

qiita.com

主に上記を参考に、ドライバを組み込む等のカスタムはすっ飛ばして, boot usbを作成し, usbを挿してnucを起動するとインストールが進む.

インストールの後

DHCPIPアドレスが割り当てられるはずなので, http://your-esxi-ip/ui にアクセスすると, embedded host clientにアクセスできます.

ESXi6.5.0からは組み込みでインストールされているようです.

設定したrootアカウントでログインすると以下の様になるはず.

f:id:yaaamaaaguuu:20161231124826p:plain

まとめ

BOXNUC6I3SYHを利用すると, パッチを当てる事無くESXi6.5.0がインストール可能という記事でした。

多分そのうち、初歩的なVMを立てる記事を書きます。

テストを書いた経験と、「書いていない」という話を受けて

厨二的ポエム

前提

  • 「テストコードを書いている」と言うことについて、現状の気持ちをざっくりと残しておきたい。
  • 「気持ち」なので技術的に云々の話は書かない。
  • ここで指す「テストコード」もしくは「テスト」とは単体テストのことで、それ以外のことを指すときは明記する。

テストコードを書いた経験

2016年の5月あたりに、@t_wadaさんの新人プログラマ向けの公演を聴き、「やっぱテストはきちんと書きたいよなぁ」なんて思っていた。

それまでもちょこちょこテストを書いて恩恵は受けてたけれども。

そんなことを考えていた矢先、2016年の7月下旬から9月23日までの2ヶ月足らずの間、テスト駆動開発的に、コードのリファクタリングをする機会に恵まれた。 参加させてもらったチームが持っている、改善対象のプロダクトには、回帰テストが用意されていたので、自分が修正する分に対して出来る限りテストコード追加してリファクタリング進めていった。

期間が9/23までという都合上、改善の余地のあるコードを残してしまったし、自分のテストコードが妥当であるかどうか?は反省すべき点が多い。 それでも Red-Green-Refactor の Green-Refactor回帰テスト単体テストの両方を利用して繰り返し、現状よりは良いコードを残せたのではないか?と考えている。

絶賛稼働中のプロダクトに対して、テストを書いて改善する活動を通しての感想は、「t_wadaさんの言っていたことは本当でした!」の一言に尽きる。

そんな感じの話を「テストコードを書くと言うのはつまり安心感を高める事に繋がるよ」という所に重点を置きつつ部署の人に対してプレゼンしたらだいぶ納得してもらえたし、「テスト書きたいと思えた」なんて感想もいただけた。

いい感じにt_wadaさんの公演が、自分や組織のためになったなぁと思っている。

「テストコードを書いていない」という話

それはさておき、最近、たまたま同期の「テストコードは書いていない」と言う話しを聞いた。

とりあえず、現状、雑でもテストを書けるようなったからと言って、「テストを書いていない」と言った同期に対して、鬼の首を取ったように責めたいわけではない。

いくらt_wadaさんの話しを聞いたとはいえ、突然テストが書けるようになるもんでも無いのは分かっている。

とはいえ、テストを書いていないのは事実で、「時間がないからテストをしないのではなく、テストを書かないから時間がなくなる」と教わって、実際に自分でテストを利用して改善する経験を積んだ後だとなんだかなぁと思った。

テストを書いた経験と、「書いていない」という話を受けて

まず最初に思ったことは、自分から進んでテストが書けるようになるまで、プログラミングを始めてからおおよそ3年はかかっていて、つまり「テストは書いていない」という状態は「来た道」だと認識している。

なので個人のスキルとしてテストが書けない人を見かけたら、一緒にテストが書ける様にガイド出来たら良いなぁと思う。

プロジェクト単位でテストを書く書かないは、トレードオフ的な話(ちょっと昔に公開されていたスライドだと、たとえばこれ)とか、理由はいくらでもあると思っているし、テストコード自体に良し悪しが当然あるので、書いているから良、書いていないから悪ではないと思う。

ただ、「書いていない」よりも「書いている」方が良い状況(=安心感がより高い状況)である事が大半だと思う。単純な技術的負債の意味合いでテストが無いプロジェクトにjoinする機会が巡ってくるまでに、テストを導入する提案とか、テストコードを書く環境の提供とかをサクッと出来るように努力したい。

とりあえず、現状自分には「テストを書く」以外でプログラム的側面から発生する、バグが発生しているかもしれない等の不安への対処方法が無い。

なので今後も継続的にテストコードを書いて行きたいなぁと思った次第でございます。