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 取り付け