2011年2月22日火曜日

refresh pattern太郎(こじまよしお)

squidだお。
HTTPのヘッダーの中に、cacheを無視するとか、無視するとか・・・という
不届きものがいるので、そんなの関係ねー。cacheミロヤーとする方法。

squid.confの中に。


refresh_pattern -i \.gif 43200 100% 102400 ignore-no-cache override-lastmod ignore-private ignore-reload ignore-no-store

とぶち込んだれ。

おのおののパラメータは、google大先生に聞けば、すぐ出てくるので、割愛。

tcpdump太郎

忘れがたき。


#-w で出力ファイル -sで取得するデータ長 -iでNIC指定。
/usr/sbin/tcpdump -w /home/hogehoge/tcpdump -s 1500 -i eth0


これ、出力したファイルを、wiresharkで見るお。
内容わかりまんもす。

2011年2月19日土曜日

replicasetの状態確認太郎

mongoで、replicasetの状態確認するぽ。
replicasetは3台構成。


./mongo localhost:ポート番号
#XXXはIP、NNNNはポート。
> db._adminCommand("replSetGetStatus")
{
"set" : "shard2",
"date" : "Fri Feb 18 2011 22:37:23 GMT+0900 (JST)",
"myState" : 2,
"members" : [
{
"_id" : 0,
"name" : "XXX.XXX.XXX.XXX:NNNNN",
"health" : 1,
"state" : 1,
"uptime" : 25844,
"lastHeartbeat" : "Fri Feb 18 2011 22:37:23 GMT+0900 (JST)"
},
{
"_id" : 1,
"name" : ""XXX.XXX.XXX.XXX:NNNNN",",
"health" : 1,
"state" : 2,
"self" : true
},
{
"_id" : 2,
"name" : ""XXX.XXX.XXX.XXX:NNNNN",",
"health" : 1,
"state" : 2,
"uptime" : 25844,
"lastHeartbeat" : "Fri Feb 18 2011 22:37:22 GMT+0900 (JST)"
}
],
"ok" : 1
}


state:1は、primary 2はsecondcary
health:1は、server生きてる。0は死んでる。

XFS太郎

CentOS5.4で、XFS使う。


#xfsに必要なrpmいれる。
rpm -ihv xfsprogs-2.9.4-1.el5.centos.x86_64.rpm xfsprogs-devel-z.9.4-1.el5.centos.x86_64.rpm

#対象ディスクのラベル付け。パーティション作成
/sbin/parted -s /dev/sdb -- mklabel gpt mkpart primary 0 -0

#XFSでのファイルしシステム作成
/sbin/mkfs.xfs -f -b size=4096 -i size=512 -d unwritten=0,su=512k,sw=1 /dev/sdb1

#マウントポイント作成・マウント
mkdir /log
mount -t xfs -o noatime /dev/sdb1 /log

2011年2月12日土曜日

mongodbをmuninで監視太郎

もんごもんご

もんごもんご
mongodbの情報をmuninでとるお
insert、deleteとかの情報やら、connectionの状況やらとれるもんご。

githubにねたがあるので
まずはとってくる


wget http://github.com/erh/mongo-munin/tarball/master

#んで展開
tar zxvf erh-mongo-munin-8d4a954.tar.gz
cd erh-mongo-munin-8d4a954

#そうしたら
cp -irp mongo_* /usr/share/munin/plugins/.

#munin-node再起動
/etc/init.d/munin-node restart


ちなみに、python2.6以上が必要とのこと。

parted太郎

今使ってるサーバのディスクがパツパツになったきたので
usb接続のHDDにデータを退避したお。

ディスクのフォーマット手順。


#parted起動
/sbin/parted /dev/sdc

#ディスクにラベルつける。
mklabel parted

パーティションつくる
#mkpart primary 0 1000MB

#確認
print

#でる
quit

#ファイルシステム作る
/sbin/mkfs.ext2 /dev/sdc1

#確認
/sbin/fdisk -l

swapoff太郎

mysqlメモリ食い過ぎて、swapしてる。
mysql止めたけど、freeコマンドのusedの箇所が減らん(ほかにアプリケーションは動かしてませんよ。

もいきーだったので


#スワップを無効化するぜ!!
swapoff /dev/sdaXX

#スワップを有効化するぜ!!
swapon /dev/sdaXX


freeのusedが0になったぜ

ipmiで、BIOSのエラーログ見太郎

ipmitoolを使って、BIOSに記録されてるログをみます。

メモリ障害などで、突然サーバがお亡くなりになった場合に
/var/log/messagesに記録されない場合がほとんどです。

その場合、BIOSに記憶されているログをみることが出来ますが
うちの環境は、リブートせないかんし、DCにいくのもちょっとということで。

これ、うてば、みれるお。


#エラーログ情報を表示
ipmitool -l lan -H ホストIP -u ipmiのユーザ名 sel list


ログの消去もできる
DELL PowerEdge R300だと、イベントログがいっぱいだよって表示よくみる。
うちの環境だけかな。


#エラーログ情報を表示
ipmitool -l lan -H ホストIP -u ipmiのユーザ名 sel clear

2011年2月9日水曜日

swap太郎

メモリswapのチューニング


#↓は、swapを発生される閾値らしい。
#たとえば、8GBの60%以上使用したら、swapを開始するってことらしい。
cat /proc/sys/vm/swappiness
60
echo 10 > /proc/sys/vm/swappiness

fd太郎

ファイルディスクリプタの設定値を確認するお


cat /proc/sys/fs/file-nr
510 0 343868


左から  割り当て済みファイルディスクリプタ
まんなか 使用中ファイルディスクリプタ
右 最大で使えるファイルディスクリプタ

ディスクリプタ・・
ディスクリプタ・・・
ディスクリプタ・・・・

SNMP太郎(デバイス番号取得)

毎回しらべるのめんどいので



snmpwalk -v 1 -c SNMPGROUPNAME localhost 1.3.6.1.4.1.2021.13.15.1.1.2

UCD-DISKIO-MIB::diskIODevice.1 = STRING: ram0
UCD-DISKIO-MIB::diskIODevice.2 = STRING: ram1
UCD-DISKIO-MIB::diskIODevice.3 = STRING: ram2
UCD-DISKIO-MIB::diskIODevice.4 = STRING: ram3
UCD-DISKIO-MIB::diskIODevice.5 = STRING: ram4
UCD-DISKIO-MIB::diskIODevice.6 = STRING: ram5
UCD-DISKIO-MIB::diskIODevice.7 = STRING: ram6
UCD-DISKIO-MIB::diskIODevice.8 = STRING: ram7
UCD-DISKIO-MIB::diskIODevice.9 = STRING: ram8
UCD-DISKIO-MIB::diskIODevice.10 = STRING: ram9
UCD-DISKIO-MIB::diskIODevice.11 = STRING: ram10
UCD-DISKIO-MIB::diskIODevice.12 = STRING: ram11
UCD-DISKIO-MIB::diskIODevice.13 = STRING: ram12
UCD-DISKIO-MIB::diskIODevice.14 = STRING: ram13
UCD-DISKIO-MIB::diskIODevice.15 = STRING: ram14
UCD-DISKIO-MIB::diskIODevice.16 = STRING: ram15
UCD-DISKIO-MIB::diskIODevice.17 = STRING: sda
UCD-DISKIO-MIB::diskIODevice.18 = STRING: sda1
UCD-DISKIO-MIB::diskIODevice.19 = STRING: sda2
UCD-DISKIO-MIB::diskIODevice.20 = STRING: sda3
UCD-DISKIO-MIB::diskIODevice.21 = STRING: md0

カーネルいじる太郎

ubuntu 10.4 で、カーネルパラメータいじる。ふがふが。
デフォルトだと、1ユーザがオープンできるファイルディスクリプタの数が

1024
らしい。

squidを使う場合、この値を上げておかないと
動きがおかしくなるとおもわれるので、値を上げた
(ちなみに、ファイルディスクリプタの上限を上回った場合にsquidがどういう動作をするのか
は、未確認だお。こんどやってみよう)

で、やりかたは
テンポラリーにやる場合は


ulimit -n 65356

#恒久的にやるなら

vi /etc/security/limits.conf
root soft nofile 65356
root hard nofile 65356

#確認
ulimit -a

で確認できるお。

mpt-status太郎(lsmod)

サーバリブートしたら・・

/var/log/messagesに変なメッセージが。


localhost mpt-statusd: detected non-optimal RAID status


???
と思ったので
mpt-statusコマンド実行したら


open /dev/mptctl: No such file or directory
Try: mknod /dev/mptctl c 10 220
Make sure mptctl is loaded into the kernel


mptctl用のスペシャルファイルがなくなったらしい・
ので。


mknod /dev/mptctl c 10 220
modprobe mptctl


したら、mpt-statusできるようになった。

oom-killer太郎(squid 殺害事件)

squid死んでたorz
message見たら


localhost kernel: [1384467.390098] squid invoked oom-killer: gfp_mask=0xd0, order=1, oom_adj=0

oom-killerに殺されたようだ・・・
なぜ、oom-killerにとおもたら


localhost kernel: [1315443.360029] EDAC MC0: CE page 0x0, offset 0x0, grain 1073741824, syndrome 0xe, row 2, channel 0, label "": i3200 CE


メモリのエラーめっちゃでてる。

EDACつうのは、メモリのECCエラーをOS側で検地できるようにする仕組みのことらしいですわ。
kernel 2.616からマージされているようだ。

いろんな記事に書いてあったけど、強制的にエラーをメモリエラーを出力させる仕組みもあるらしい。

結局
squidで結構メモリにファイルキャッシュさせてるので
メモリが不安定。


squidが不安定になる。

squid 殺害っ感じかな。

mailq太郎

mailqの確認。


postqueue -p
#もしくは
mailq


ただ、キューの数をカウントするときに
wc -lでやると

だめぽ。
postqueueの出力結果が3行?ででるためだお。

rescue太郎

使用しているサーバのOS(ubuntu)が起動できなくなたお。

なので、レスキューします。
cdromにKNOPIXXのisoが入ったディスクを用意して
BIOSからcdromからbootするように設定。

あとは、サーバ再起動後、
bootプロンプトから


linux rescue


コマンドでOSあげて、各ディスクをmount後、状態確認。

結局、/boot配下が消えていたので、OS再インストールしたお。

mongo太郎(基礎)


#インストール
wget http://downloads.mongodb.org/linux/mongodb-linux-x86_64-1.6.4.tgz
tar -zxvf mongodb-linux-x86_64-1.6.4.tgz




#起動
--dbpath でデータディレクトリを選択
--fork でバックグラウンド起動
※--forkで動かす場合は、--logpathの指定必須
/usr/local/mongo/bin/mongod --fork --logpath /data/db/ --dbpath /data/db



#DBかえる
use mydb
>switched to db mydb



#データぶちこむ
> j = { name : "mongo"};
{ "name" : "mongo" }
> t = { x : 3 };
{ "x" : 3 }



#保存
> db.things.save(j);
> db.things.save(t);

#探す
> db.things.find();
{ "_id" : ObjectId("4cfde0735a6d24817da83e3a"), "name" : "mongo" }
{ "_id" : ObjectId("4cfde0995a6d24817da83e3b"), "x" : 3 }

#for文も使える
> for( var i = 1; i <= 20; i++) db.things.save({x : 4, j : i });
> db.things.find();

#シャットダウン
use admin
db.runCommand("shutdown");

3master、slave関係で起動
/usr/local/mongo/bin/mongod --fork --logpath /data/db/master/logs --dbpath /data/db/master --master
/usr/local/mongo/bin/mongod --fork --logpath /data/db/slave/logs --dbpath /data/db/slave --slave --source localhosts --port 27018


まずは、こんなもん。
replica setはまたあとで。

packet drop太郎

うちで使ってるproxyサーバで、dropがでてる。


netstat -i
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
eth0 1500 0 795787871 0 3691 3691 1278361014 0 0 0 BMRU
eth1 1500 0 1375715814 0 0 0 1049770543 0 0 0 BMRU
lo 16436 0 26954 0 0 0 26954 0 0 0 LRU


messageに怪しいログでてない。
dmesg見たら、


KERNEL: assertion (cnt <= tcp_get_pcount(&tp->packets_out)) failed at net/ipv4/tcp_input.c (1553)

って出てる。

調べたら、redhatのバグ情報に書いてあった・・・

https://bugzilla.redhat.com/show_bug.cgi?id=446954

再現できないつーう。
困ったけど、ふがふが。

mpt-status太郎

Dellのサーバで使ってるRAIDカード(SAS6iR)用で、ディスクのrsync状況を確認するコマンド。


mpt-status -n
ioc:0 vol_id:0 type:IM raidlevel:RAID-1 num_disks:2 size(GB):930 state: DEGRADED flags: ENABLED RESYNC_IN_PROGRESS
ioc:0 phys_id:1 scsi_id:1 vendor:ATA product_id:ST31000333AS revision:CC1H size(GB):931 state: ONLINE flags: NONE sync_state: 38 ASC/ASCQ:0x11/0x00 SMART ASC/ASCQ:0x00/0x00
ioc:0 phys_id:0 scsi_id:8 vendor:ATA product_id:ST31000333AS revision:SD1B size(GB):931 state: ONLINE flags: OUT_OF_SYNC sync_state: 38 ASC/ASCQ:0xff/0xff SMART ASC/ASCQ:0xff/0xff

squid cache太郎

squidで、キャッシュ領域がいっぱいになってきたときに、キャッシュをどかするーる。

cache_replacement_policy

LRU は最近アクセスされたキャッシュオブジェクトをためようとする。
新しくアクセスされたやつをどんどんためる=アクセスがないやつは捨てられるってことですな

heap LFUDA サイズにかかわらずキャッシュの中でポピュラーなオブジェクトを維持するらしい。
つーか、ポピュラーなやつって・・・

どうやって、そのキャッシュオブジェクトがポピュラーなのか
判別してる仕組みが知りたい。

DBみたいなの持ってるのかな・・・
cache managerからは見えんし。

cron太郎

毎朝4時にサーバの負荷が高いと思って、調べたら・・・

/etc/cron.dailyの中に・・・

朝4時に動く設定のスクリプトがたくさんはいってた。
しかも、locate用のdbをupdateしてやがる・・・お。


道理でIOが高いと思ったわ。
ぶー。
Centの4x系は、slocate、Centの5x系は、mlocateなのか。

stub_status_module太郎

nginxのconfigure実行時に指定していたオプション。


--with-http_stub_status_module


何が出来るかというと、nginxの状態をみることができます。
Activeなコネクションとか、受け付けてるrequestの数とか。
Apacheでいう、mod_status。

Apacheの場合は、コンパイル時に


--enable-module=status


を指定。mod_statusの方がいろんな情報とれてすてきみたい。
lighttpdの場合も、mod_statusだけどデフォルトで有効になるらしい。

refer太郎

リファラからのアクセス確認。


curl -e referのアドレス -o 対象webサイト

MRTGではまった太朗2

MRTGでドロップパケットの値を取得する方法。

mrtg.cfgに


Target[eth0-droppacket]: ifInDiscards.2&ifOutDiscards.2:XXXX@XXX.XXX.XXX.XXX:
MaxBytes[eth0-droppacket]: 50000
Options[eth0-droppacket]: growright,bits,nopercent
Title[eth0-droppacket]:
PageTop[eth0-droppacket]:
YLegend[eth0-droppacket]: bytes


ifInDiscard.後につく数字は、構成によって都度変わるので、snmpwalkを使って調べる。
Option項目のとこは

growrite → グラフを右から左に表示される。
bit →デフォルトではbyte単位で表示されるので、bit単位に変更。
nopercent → パーセント表示しない。

ちなみに

gauge  → 取得したデータの値を前回の値との差分を計算せずそのまま使用。
absolute →  取得したデータの値を、前回の値との差分を計算せずそのまま使用。

MRTGではまった太朗

またはまった。最近よくはまる。

MRTGで、トラフィックの監視するときに、気をつけること。
109MB以上のトラフィックが流れる場合、snmp ver1だとグラフがうまく描かれない。
理由は、snmp ver1だとデフォルトで32bitのカウンタとして5分おきに動作するらしい。
つまり、どういうことかというと

2^32 * 8(bit換算) / 300(秒) = 109.227 Mbps

となる。
これ以上のトラフィックが流れると、つねに同じ値が取得されてしまい
グラフがえがけないのだ

そういうときは
mrtg.cfgでtargetの値を


Target[eth1-packet]: ifInOctets.3&ifOutOctets.3:XXXXXX@XXX.XXX.XXX.XXX:::::2

にすると、64bitカウンタとして動作するので値がとれるんだわ

yumではまった太朗

恥ずかしながら。yumではまった・・・
rpmを作って、yumサーバに配置後、createrepoコマンドでxmlを登録
が・・・・・・
インストールしたいクライアントからyumを実行したら、古いバージョンしか表示されない・・・
そんなとき、神の一声が・・・


yum clean all


でキャッシュをクリアして、再度yum実行したら、新しいバージョンがみえた!!
キャッシュきれいにしてあげないといけないのね・・・
(RX-7殿。感謝します)

コメントさよなら太朗

apacheやら、squidやら、設定ファイルはコメントだらけ。
なのでコメント行を表示しないようーにする。


grep -v -e "^[ ¥t]*#" 設定ファイル

squidログ変換太朗

☆squidのaccesslogは、デフォルトだと、UTCのミリ秒(1970/1/1から)であらわされる。

このままだと読みずらいので、perlのscriptで変換しゅる。


#! /usr/bin/perl -p
s/^\d+\.\d+/localtime $&/e;

squid pid太郎

proxyサーバとして有名なsquidちゃん。
今日、ちょっとはまったのでメモ。

ほかのアプリもそうだけど、squidが起動するときに
生成するpidファイル。

設定(squid,conf)によるけど、だいたい/var/run/squid.pidにある。

squid起動中に、squid.pidファイルを消すと
squid関連のコマンドを受け付けなくなって停止できないことが判明。

ERROR: no running copyと言われる。

しょうがないからsquidのプロセス、killしちゃった。

repl太郎

Mysqlのレプリケーション設定してみた。

環境は、
VM上で
CentOS 4.8
Mysql 4.1.22
です。

準備として、Master→Slave、Slave→Masterへ
telnet IPアドレス mysqlのポート(3306?)で
つなげることチェックしておいてください。

確認しないとあとあとめんどいですわ。


MasterとSlaveの設定ファイルを追加します。
serveridの値は、uniqな数字にしてください。
uniqにしないとほかサーバのreplが全停止したりします。
log_binはバイナリログを出力する設定です。(ORACLEのredoログ的なのりだと思ってます)


#Master側
vi /etc/my.cnf
[mysqld]
server-id = 1
log_bin

#Slave側
CMD >vi /etc/my.cnf
[mysqld]
server-id = 2


編集後、Master側、Slave側で設定反映させるためにmysqlを再起動します。

/etc/init.d/mysqld stop
/etc/init.d/mysqld start

#一応、Master側でlog_ binが有効になっているかを確認。

mysql> show variables like 'log_bin';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_bin   | ON |
+---------------+-------+
1 row in set (0.00 sec)

#Master側にレプリケーション専用のユーザをつくります。
mysql> GRANT REPLICATION SLAVE ON *.* TO 'replication'@'SlaveサーバのIP' IDENTIFIED BY 'パスワード';

#んでユーザできたか、確認
mysql> select * from mysql.user where user = 'replication'\G

*************************** 1. row ***************************
Host: IPアドレス
User: replication
Password: ********
Select_priv: N
Insert_priv: N
Update_priv: N
Delete_priv: N
Create_priv: N
Drop_priv: N
Reload_priv: N
Shutdown_priv: N
Process_priv: N
File_priv: N
Grant_priv: N
References_priv: N
Index_priv: N
Alter_priv: N
Show_db_priv: N
Super_priv: N
Create_tmp_table_priv: N
Lock_tables_priv: N
Execute_priv: N
Repl_slave_priv: Y
Repl_client_priv: N
ssl_type:
ssl_cipher:
x509_issuer:
x509_subject:
max_questions: 0
max_updates: 0
max_connections: 0
1 row in set (0.00 sec)



んで、Master側のバイナリログの出力ポジションを確認する。
Slaveからは、、File(BALTHAZAR-bin.000002)の、position(203)から
レプリケーションを開始する必要があるので、必ず確認する。


mysql> SHOW MASTER STATUS;
+----------------------+----------+--------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+----------------------+----------+--------------+------------------+
| BALTHAZAR-bin.000002 | 203 | | |
+----------------------+----------+--------------+------------------+
1 row in set (0.00 sec)

#んでSlave側で、Masterの情報を設定する。
mysql> CHANGE MASTER TO MASTER_HOST = 'MASTER側のIP',
-> MASTER_USER = 'replication',
-> MASTER_PASSWORD = 'replicationユーザのパスワード',
-> MASTER_LOG_FILE = 'BALTHAZAR-bin.000002',
-> MASTER_LOG_POS = 203;

#Slaveを動かす。
mysql> START SLAVE;

#Master側で状態を見てみる。
mysql> show processlist\G
*************************** 2. row ***************************
Id: 7
User: replication
Host: IPアドレス:32855
db: NULL
Command: Binlog Dump
Time: 18
State: Has sent all binlog to slave; waiting for binlog to be updated
Info: NULL

#Slave側で状態を見てみる。

*************************** 2. row ***************************
Id: 26
User: system user
Host:
db: NULL
Command: Connect
Time: 4
State: Waiting for master to send event
Info: NULL
*************************** 3. row ***************************
Id: 27
User: system user
Host:
db: NULL
Command: Connect
Time: 4
State: Has read all relay log; waiting for the slave I/O thread to update it
Info: NULL




#最後にほんとにレプリケーションできてるかっつーことでMaster側で
mysql> use test
Database changed

mysql> CREATE TABLE SAS (id int(10));
Query OK, 0 rows affected (0.04 sec)

mysql> INSERT INTO SAS VALUES (1);
;
mysql> select * from SAS;
+------+
| id |
+------+
| 1 |
+------+

#Slave側で、
mysql> use test
Database changed

mysql> select * from SAS;
+------+
| id |
+------+
| 1 |
+------+



SLAVE側から接続するとき、最初ちゃんとできませんでした。
FWの設定をいじったら接続できるようになりましたわ。
↓こうなって、masterへ接続できんかった。


*************************** 2. row ***************************
Id: 4
User: system user
Host:
db: NULL
Command: Connect
Time: 477
State: Connecting to master
Info: NULL
*************************** 3. row ***************************
Id: 5
User: system user
Host:
db: NULL
Command: Connect
Time: 477
State: Has read all relay log; waiting for the slave I/O thread to update it
Info: NULL
3 rows in set (0.00 sec)

x3250でcffgenを導入する太郎

古いけど、
IBM X3250 M2でHARD RAIDをくんでいる場合でチェックツールを導入する。


まずは、IBMのサイトから、cfggenユーティリティーをとってくる。
http://www-947.ibm.com/support/Aentry/portal/docdisplay?brand=5000008&lndocid=MIGR-63501
※環境により、選択してくださいな。

サーバ上の任意のディレクトリで展開します。


unzip ibm_utl_mptsas_cfggen-2.06.01_linux_32-64.zip
chmod + x cffgen
mv /usr/sbin/.
#モジュールをロードします。
modprobe mptctl
vi /etc/modprobe.conf

bonding太郎

☆CentOS 5.4で、bondingの設定
Windowsだとチーミングという記憶がある・・・

まずは、↓のファイルを編集


vi /etc/modprobe.conf

alias bond0 bonding
options bond0 miimon=100 mode=1 primary=eth0


そのあと、↓のファイルを作る。


vi /etc/sysconfig/network-scripts/ifcfg-bond.0

DEVICE=bond0
IPADDR=IPアドレス
NETMASK=サブネット
NETWORK=ネットワークアドレス
BROADCAST=ブロードキャストアドレス
ONBOOT=yes
BOOTPROTO=none
USERCTL=no


そのあと、↓のファイルを編集。

vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
MASTER=bond0
SLAVE=yes
USERCTL=no
ONBOOT=yes
BOOTPROTO=none



そのあと、↓のファイルを編集。

vi /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth0
MASTER=bond0
SLAVE=yes
USERCTL=no
ONBOOT=yes
BOOTPROTO=none


編集し終わったら


/etc/init.d/network restart

ipconfig -a で、bond0の表示がでることを確認する。

ping飛ばしながら、eth0とeth1のNICをそれぞれ交互に抜いて
pingが切れなければ、bondingの設定ができたことになりまんもす。

あとは、cat /proc/net/bonding/bond0で、NICのActive状態、linkのup/downが確認できる。