Gentoo Install Battle Part I
ここにThinkPad X240があります。これの中身を Gentoo/Linux にします。
準備
準備として、Gentoo/LinuxのLiveCDを作成、Bootの設定を行います。
イメージ作成
まずLiveCDイメージをダウンロードしUSBフラッシュメモリにコピーします。
$ wget ftp://ftp.iij.ad.jp/pub/linux/gentoo/releases/amd64/autobuilds/current-iso/install-amd64-minimal-20140814.iso
$ dd of=/path/to/disk if=install-amd64-minimal-20140814.iso bs=4m
でイメージの作成終了です。 次に、X240の設定を行います。
X240の起動準備
Windowsを起動し、Shift押しながら再起動します。 再起動したら、以下の順番でBIOSを起動させます。
トラブルシューティング -> 詳細オプション -> UEFIファームウェアの設定 -> 再起動
でBIOSがたちあがるので、Secure BootとUEFI BootとBoot順の設定を変更します。
Seucre BootではSecurety -> Secure Boot -> Secure Boot [Enable]を[Disable]に変更
UEFI BootではStartup -> UEFI/Legacy Boot [UEFI only]を[Both]に変更
Boot順の設定では、Startup -> BootでBootさせたい順番に変更
BIOSを変更したらRestartします。
まとめ
とりあえず今日はここで終りです。インストールは明日以降にします。
good-bye elasticsearch and jenkins
この環境では慢性的にメモリが足りなかったのでメモリを大量に使ってるElasticsearchを削除しました。 Jenkinsについては利用していなかったので停止してます。ついでに12.04から14.04にupgradeしました。
削除とUpgrade
削除する前にMackerelを導入したので、fluentd + Elasticsearch + Kibanaな構成にする必要がなくなりました。 Elasticsearchの削除とJenkinsの停止は以下のコマンドで行ないます。
$ sudo apt-get purge elasticsearch
$ sudo update-rc.d jenkins disable
つぎに14.04へupgradeを行ないます。
$ sudo do-release-upgrade -d
これで14.04になってます。
環境
- Machine: さくらVPS
- CPU: Intel Xeon E312xx (SandyBridge) * 2
- MEM: 1GB
- HDD: 100GB
- OS: Ubuntu Linux 12.04
インストール済ソフトウェア(一部)
- Elasticsearch
- fluentd
- Jenkins
- Jubatus
- Norikra
- Nginx
秘境でハッカソンがあったので行ってきた
7月19日〜7月21日まで秋山郷のかたくりの宿という場所でHackathonがあったので行ってきました。
1日目
1日目は仕事があったので仕事を終えてから新幹線で越後湯沢まで出て、@m_asamaさんと合流して秋山郷へ。
途中、最短経路が土砂に埋もれて通行できないので迂回して行きました。途中の道は狹く、えっここ通るの?って感じの道を通りました。宿に着いたらもう午後6時ですぐに食事の時間となりました。
夕飯は山菜づくしな夕飯でした。
夕飯終ってハックタイムでしたが、食堂を利用する予定だったので、食堂が空くまで部屋でだべってました。 午後9時頃からハックタイムが始まりました。その日はとても眠かったので@kotatu_miに絡んですぐに寝ました。
2日目
2日目は宿の人に起こされて起きました。朝食はこんなかんじでした。

朝食後、近くの橋まで散歩しました。軽い散歩だと思ってたら、山道で辛かった。

そのまま帰るのはもったいないと思って反対側を登りました。登りきったら、近くにcool wind holeがあるらしいのでそこまで行ってみました。

帰りは山道がつらいしつかれたので、周って帰りました。
昼飯は小赤沢まで温泉と熊らーめんを食べました。

宿に戻ってからはしばらくはハックタイムでした。夕食後、星を見に外出たらすごく星が綺麗でした。

星見に行ったあとにハックタイムがあり、mikutterでDockerのコントロールをしようとしてました。
3日目
午前中は夜の続きをやってました。
帰りは切明温泉にたちより、長野回りで帰りました。
今回の成果
成果です
SPDYをさくっと動かしてみた
NGINXでSPDY3.1がサポートされているようなので動かしてみた。
準備
SPDYはSSL必須のようなのでとりあえずOpenSSLで野良証明書を作成します。
$ cd /path/to/cert/dir
$ openssl genrsa -des3 -out server.key 2048
$ openssl req -new -key server.key -out server.csr
$ openssl rsa -in server.key.org -out server.key
$ openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
NGINXの設定
とりあえずNGINXの設定ファイルを作成します。
server {
listen 443 ssl spdy;
ssl_certificate server.crt;
ssl_certificate_key server.key;
}
と設定したらNGINXを再起動します。 これでSPDYで動いてます。わいわい。

オレオレ証明書なのでそのうちちゃんとした証明書を使いたいですね。
野良Gitサーバにuploadできなかった話
今日もろくでもない理由で嵌った。
嵌った理由
野良Gitサーバを立てているのでそこに新しいリポジトリを作成した。
で、リモートを追加し、ブランチを追加しようとすると
$ git remote add master ssh://myhost/my_project.git
$ git push origin master -f
error: src refspec master does not match any.
error: failed to push some refs to 'ssh://myhost/my_project.git'
というようなエラーが出てきてアップロードできなかった。 そのため理由を探ってたら同じ理由があった。
そこで git log としたら何もでてこなかったので
$ git add .
$ git commit -m 'first commit'
$ git push -u origin master
リモートリポジトリに追加できました。 ちゃんちゃん
docker on OS Xで嵌ったおはなし
MacOS XでDockerを動かしてたら嵌ったのでメモ
Docker on OS X
OS XでもDockerが動かせるようになりました。 インストールはこことかを参考にしてください。
で嵌ったところ
Docker上で動いているアプリケーションとどうしても通信ができない。どうやらDockerとアプリケーションは起動はしてるようなんだが、 どうしても通信できないということがわかりました。
$ docker run -p 9199:9199 hogehoge
$ netstat -a | grep 9199
でも見えない。なんでかなあと思ってたらこんなことやこんなことがわかりました。
解決策
VirtualBoxからboot2docker-vmのポートフォワードを設定すればいいです。
$ netstat -a | grep 9199
tcp4 0 0 localhost.9199 *.* LISTEN
ちゃんちゃん。
今日の夕飯
今日は昨日ビールを飲んだので、日本酒を飲みに行ってきた。

ほんとは、天麩羅食べたかったのだが、天麩羅もうなくなってたらしいので、 日本酒とそばを食べた。そばを石臼で引いた。

親父さんが江戸っこらしく、「そこのしろいテーブルに座って」っていわれてなんだ?
っておもったら、広いテーブルだった。

あと、githubにある使ってないリポジトリの整理を行った。
td-agent.pkg
td-agent2がリリースされ、Macへの公式パッケージがでたのでインストールメモ
Install
ダウンロードしてダブルクリックでインストールできます。
設定
設定ファイル置場は/etc/td-agent/td-agent.confになります。
設定ファイルはいままでの設定で使えるようです。
あとはMLにあるとおりにコマンドを実行すればOKです。
$ sudo launchctl load /Library/LaunchDaemon/td-agent.plist
JubatusをDocker上で動かしてみた
最近話題のDocker使ってJubatusを動かしてみたのでメモ的なものを
環境
環境はVagrantでUbuntu14.04を動かしその上でDockerでJubatusVMを動作
- Vagrant: 1.5.4
- docker: 0.11.1
Dockerfile
リポジトリを作成しておきましたのでcloneして実行します。
$ git clone https://github.com/katsyoshi/docker-jubatus
$ cd docker-jubatus
$ docker build .
$ docker run -p 9199:9199 最後に出てきたハッシュ値
で動きはじめます。
jubatus handsonにいってきたのでfluent-plugin-jubatusについてちょっとだけ
Jubatus Handson行ってきました
行ってきました。
fluent-plugin-jubatus 0.0.2をリリースしました
先日大江戸Ruby会議04に行ってみたらやる気が湧いてきたので半年ほど寝かせておいたfluent-plugin-jubatusをアップデートしました。
大きな変更点としては、異常検知(jubaanomaly)をサポートするようになってます。
プラグインの今後
今回も入れなかったのですが、このプラグインでは未だ判定のみのサポートです。 理由としては
- 計算量
- メモリ
のふたつがあげられます。計算量に関しては以前手元のMacで異常検出を動作させていたときマシンの動作がもっさりになるほどの計算量があったためです。メモリに関しては今のところ不安には感じてはいないですが、データ量(数)が巨大になったときどこまで必要なのかってのがよくわからない。という理由で積極的に導入していないです。
これらを解消する方法としては忘却(unlearning)が考えられるのですが、じゃぁどの必要のないデータを忘却させるのって問題があります。
とはいえ、そろそろ導入したいのでpull reqまってます。