2013-03 / 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

2013-03-30 Sat

[別の年の同じ日: 2001 2005 2006 2007 2008 2009 2010 2011]

■ arcstat.pl で l2arc の統計をみる はてぶ

arcstat.pl updated for L2ARC statistics | Mike Harsch's Blog
http://blog.harschsystems.com/2010/09/08/arcstat-pl-updated-for-l2arc-statistics/
mharsch/arcstat · GitHub
https://github.com/mharsch/arcstat

こんな感じで l2arc の情報を表示できる。

$ ./arcstat.pl -f \
read,hits,miss,hit%,l2read,l2hits,l2miss,l2hit%,arcsz,l2size


mharsch/arcstat は zfs:0:arcstats:l2_size の存在を確認して、
l2arc 関連の処理をしているが、
Oracle Solaris 11 以降、kstat の zfs:0:arcstats:l2_size がなくなっているため、
Oracle Solaris 11 以降では l2arc に関する情報がとれない。

この問題に対応した fork は以下の 2 つ

DrOwl/arcstat · GitHub
https://github.com/DrOwl/arcstat

carsonoid/arcstat · GitHub
https://github.com/carsonoid/arcstat

DrOwl / arcstat は l2_size のかわりに l2_hdr_size を使うようにしている。

carsonoid/arcstat は l2_size の確認をつぶしている。

2013-03-25 Mon

[別の年の同じ日: 2003 2007 2008 2009 2010 2011]

■ serverspec を Solaris に対応させた はてぶ

昨日メモした serverspec [2013-03-24-3] を Solaris に対応させた。

https://github.com/ftnk/serverspec/tree/add-solaris-support

日中に mizzy さんのところ https://github.com/mizzy/serverspec に
multi OS 対応が merge されていたので、mizzy さんのところから fork して、
対応させてみた。

とりあえず、以下のような spec を書いて、このあたりが通ることは確認。

pull request をしたことがないので、
ちゃんとした方法かわからないけど、
いちおう、pull request を送っておいた。

(追記)
無事に merge された
https://github.com/mizzy/serverspec/commit/96d4c0f1acf77ce828d920d2cca5ba14524f49ef

Referrer (Inside):
[2013-04-14-1] serverspec にいくつかの matcher を merge してもらった

2013-03-24 Sun

[別の年の同じ日: 2003 2006 2007 2008 2010 2011 2012 2015 2016]

■ serverspec はてぶ

とりあえず、メモだけ

- Puppet や Chef で構築したサーバを RSpec でテストする - Gosuke Miyashita
  http://mizzy.org/blog/2013/03/23/1/
- 構築済みサーバを RSpec でテストする serverspec という gem をつくった - Gosuke Miyashita
  http://mizzy.org/blog/2013/03/24/3/
- https://github.com/mizzy/serverspec

lib/serverspec/matches/ 以下のファイルを Solaris 用に書き換えれば
Solaris 対応ができる。

すでに debian 対応したフォークがあるので、
これをもとに Solaris にも対応させればよさげ。

https://github.com/ttakamura/serverspec

Referrer (Inside):
[2013-03-25-1] serverspec を Solaris に対応させた

■ Solaris で Rabbit を動かす はてぶ

[rabbit-shocker:1091] Rabbitを使ったファイルビューアを作りました
http://www.cozmixng.org/~w3ml/index.rb/rabbit-shocker/msg/1091

という話が流れてきたので、
Solaris 上で Rabbit が動く環境を作ってなかったと思い出し、
週末に作業してみた。

とりあえず、必要な gem をインストールすれば動きます。

はまるのは Ruby/poppler くらいかも。

Oracle Solaris 11.1 では poppler は evince に含まれているので、
evince をインストールしておく必要がある。

poppler をビルドする場合は、古いけど 0.12.4 がビルドできる。
poppler 0.15 以降は cairo 1.10.0 以降を必要とするので、
cairo 1.8.10 な Oracle Solaris 11.1 では
cairo のアップデートが必要になって面倒臭い。

Rabbit と必要な gem はパッケージにしているので、
整理したあと #jposug につっこむ。

■ Solaris ZFS Mailing Lists はてぶ

zfs-discuss が以下に移動したので subscribe

http://java.net/projects/solaris-zfs/lists

Java.net のアカウントが必要

2013-03-23 Sat

[別の年の同じ日: 2006 2007 2008 2010 2011 2015]

■ Oracle Solaris で pycrypto をビルドする はてぶ

#A君 が Shizuoka.py (http://atnd.org/events/38088) で fabric について話すようなので、
fabric のパッケージを作ろうとしたところ、

fabric -> paramiko -> pycrypto


という依存関係のため、pycrypto を作ることに。

いつも通り spec file を作って specbuild すると
src/_fastmath.c で warning がでまくり

pkgbuild: "src/_fastmath.c", line 1652: cannot dereference non-pointer type
pkgbuild: "src/_fastmath.c", line 1653: cannot dereference non-pointer type
pkgbuild: "src/_fastmath.c", line 1654: cannot dereference non-pointer type
pkgbuild: "src/_fastmath.c", line 1655: cannot dereference non-pointer type
pkgbuild: "src/_fastmath.c", line 1661: undefined symbol: X
pkgbuild: "src/_fastmath.c", line 1662: undefined symbol: X


というところで止まる。

ググると、
- an enthusiastic austrian solaris user: Compiling pycrypto 2.3 and paramiko 1.7.7.1 on OpenIndiana/Solaris
http://ewaldertl.blogspot.jp/2011/06/compiling-pycrypto-23-and-paramiko-1771.html

というのが見つかったので、これにしたがって、_fastmath.c を書き換え。

--- src/_fastmath.c.orig        2013年  3月 23日 (土)
+++ src/_fastmath.c     2013年  3月 23日 (土)
@@ -33,7 +33,7 @@
#include <longintrepr.h>                               /* for conversions */
#include "config.h"
#if HAVE_LIBGMP
-# include <gmp.h>
+# include <gmp/gmp.h>
#elif HAVE_LIBMPIR
# include <mpir.h>
#else


これでビルドできた。

動作確認は fabric の使い方を確認しつつやるつもり。

2013-03-22 Fri

[別の年の同じ日: 2001 2006 2007 2008 2009 2010 2011]

■ 古い BE (Boot Environment) を削除する はてぶ

古い be (Boot Environment) を削除するいくつかのパターン。

環境は Oracle Solaris 11.1。

1. beadm destroy

基本的な方法で、man beadm にあるように、

beadm destroy beName


すればよい。

2. BE が zfs clone の元になっている場合

削除したい BE が zfs clone の元になっている場合、
依存している BE (ZFS?) が存在するため、
beadm destroy で削除できない
(なんて言われるかメモしていなかったので、あとで確認する)。

この場合、zfs promote で現在起動している BE にでも clone 元を移行すればよい。

zfs promote clone-filesystem


なので、現在起動している BE が solaris-2 という名前だったら、

zfs promte rpool/ROOT/solaris-2


とすればよい。
rpool/ROOT/solaris-2 以下があれば、それに対しても zfs promote を実行する。

これで、zfs clone 元が現在起動している BE に移るので、
それ以外の BE は削除できるはず
(BE の zfs clone の関係がこれ以外のパターンがあるか未確認)。

3. Active が !R となっている Zone の BE を削除する

Oracle Solaris に SRU をあて、古い BE を削除していくと、
Zone の BE が以下のような状態になる。

$ beadm list
BE                      Active Mountpoint Space   Policy Created
--                      ------ ---------- -----   ------ -------
solaris-1               !R     -          190.92M static 2012-11-22 12:10
solaris-2               NR     /          15.27G  static 2012-12-22 13:13


この solaris-1 を削除しようとすると以下のようになり、削除できない。

% sudo beadm destroy solaris-1
Are you sure you want to destroy solaris-1?  This action cannot be undone(y/[n]): y
be_destroy: Operation not supported on active unbootable BE
Unable to destroy solaris-1.
Operation not supported for zone BE


この場合、正しい方法かはわからないが、

zfs destroy -r rpool/ROOT/solaris-1


すると、beadm list の一覧から消える。

2013-03-21 Thu

[別の年の同じ日: 2003 2006 2007 2008 2010 2011]

■ Nagios 3.5.0 はてぶ

出ていたので、#jposug のパッケージをアップデート。

http://www.nagios.org/news/77-news-announcements/347-nagios-core-350-released

2013-03-09 Sat

[別の年の同じ日: 2004 2006 2007 2009 2010 2011]

■ Solaris 上で tmux 1.7 をビルドする はてぶ

縦分割が欲しかったので、tmux を使ってみようと、
SFE の spec でビルドしてみた。

1.5 なら SFE の spec でビルドできるが、
1.7 ではビルドできない。

ググったら以下のサイトを見つけたので、
ここの patch を利用。

- Compile tmux on Solaris 10 / Solaris 11 | s!mplex
  http://simplex.swordsaint.net/?p=103

これでビルドできたので、#jposug にコミットしておいた。

Referrer (Inside):
[2013-05-17-1] tmux 1.8 の Solaris 上でのビルド

2013-03-07 Thu

[別の年の同じ日: 2004 2005 2006 2007 2008 2009 2011 2015]

■ Ruby 2.0.0p0 のパッケージを作った はてぶ

Ruby 2.0.0p0 のパッケージを作って、
#jposug にコミットしておいた。

■ Ruby で GrowthForecast をいじってます はてぶ

最近、とりあえず、GrowthForecast にいろんなデータをつっこむようにしたんだけど、
そうするとグラフの数が多くなり、グラフの設定を変えたり、
複合グラフを作るのが面倒臭くなってくる。

ということで、Ruby でそのあたりをなんとかするべく、

- growthforecast | RubyGems.org | your community gem host
  https://rubygems.org/gems/growthforecast
- GrowthForecastのJSON APIおよびクライアントライブラリについて - tagomorisのメモ置き場
  http://d.hatena.ne.jp/tagomoris/20130103/1357210812

あたりを読んでごにょごにょしているところ。

Ruby でどうするというところより、
グラフをどう見せるかが重要なので、
そのあたりをよく考えないとなぁ という感じ。

2013-03-03 Sun

[別の年の同じ日: 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012]

■ ThinkPad x230 に mSATA SSD 取り付け はてぶ

昨日ぽちった Crucial の mSATA SSD([2013-03-02-1])を
ThinkPad x230 に取り付け。

取り付け方法はここを参照

- IT x Diary: Lenovo x230へmSATA SSD を装着
  http://oatrap485.blogspot.jp/2012/12/lenovo-x230msata-ssd.html

ちょっと面倒だけど、それほど難しいわけでもない。

かなり遅かった Solaris 11 のブートが速くなったので、
いろいろと捗りそう。

Crucial 256GB mSATA接続SSD SATA6Gbps CT256M4SSD3

■ アレグラ FX 飲みはじめ はてぶ

最近、鼻がむずむずするので、
アレルギー専用鼻炎薬のアレグラ FX を飲みはじめた。

14 日分で 1,980 円。

2013-03-02 Sat

[別の年の同じ日: 2005 2006 2007 2008 2009 2010]

■ Crucial 256GB mSATA接続SSD SATA6Gbps CT256M4SSD3 はてぶ

Crucial 256GB mSATA接続SSD SATA6Gbps CT256M4SSD3

会社の ThinkPad x230 用にぽちった。

容量的には 128GB でもよかったのだけど、
256GB の方が GB単価が安いのと、
boot 兼 HDD の zil や L2ARC として使うことを考えて 256GB に。

Referrer (Inside):
[2013-03-03-2] ThinkPad x230 に mSATA SSD 取り付け