メニュー

関連ページリンク

トップ > usb > usb - 人気ブログ(Blog)検索結果詳細 (2008年12月2日 7時)

[CentOS] ボンディングを構成する

複数のネットワークインターフェイスを束ねて冗長性や負荷分散を行う技術を、Linuxではボンディングと呼ばれるドライバにより実現しています。CentOSでボンディングを構成したときのメモ。
CentOS 5.2にてテストしましたがRed Hat系のディストリビューションであれば適用できるかと思われます。

環境

  • CentOS 5.2 on VMware Server 1.0.6
  • 仮想NIC × 2
  • ホストマシン搭載物理NIC数: 3

構成してみる

ここで、eth0, eth1のようにネットワークデバイスがすでに利用できる状況になっていることが前提となります。

eth0とeth1をボンディングし、ネットワークデバイスbond0を生成する場合の手順は以下の通り。

1. /etc/sysconfig/network-scripts/ifcfg-eth[0|1] を編集

マスターデバイスの指定とスレーブデバイスであることを設定する。

DEVICE=eth[0|1]
USERCTL=no
ONBOOT=yes
MASTER=bond0
SLAVE=yes
BOOTPROTO=none

2. /etc/sysconfig/network-scripts/ifcfg-bond0 を編集

通常eth0などに記載する内容をここに記載する。

DEVICE=bond0
IPADDR=xxx.xxx.xxx.xxx
NETMASK=xxx.xxx.xxx.xxx
NETWORK=xxx.xxx.xxx.xxx
BROADCAST=xxx.xxx.xxx.xxx
ONBOOT=yes
BOOTPROTO=none
USERCTL=no

3. /etc/modprobe.d/bonding を作成

alias bond0 bonding
    options bonding mode=[N] miimon=100
# 上記のmodeが取る値は後述するボンディングポリシーを、
# miimonにて設定する値に関する詳細はMIIリンク監視を参照

4. ネットワークの再起動

# service network restart

ボンディングポリシー

/etc/modprobe.d/bonding の modeに設定可能な値と機能・制約について述べる

0: balance-rr

障害耐性とロードバランシングに対するラウンドロビンポリシー

制約
Ether ChannelなどのTrunkingをサポートするネットワークスイッチと接続する必要がある
  • 送信時: 1パケットごとにスレーブされたインターフェイスが順に使用される。
  • 受信時: ネットワークスイッチ側の判断で使用されるスレーブインターフェイスが決定する

1: active-backup

障害耐性に対するアクティブ バックアップ ポリシー

制約
ネットワークスイッチに特別な機能は必要ない
  • 1つのアクティブインターフェイスのみ使用し、アクティブインターフェイスの障害時にはスレーブされた他のインターフェイスに切り替わる

2: balance-xor

障害耐性とロードバランシングに対するXORポリシー

制約
Ether ChannelなどのTruningをサポートするネットワークスイッチと接続する必要がある
  • 送信アダプター: 送信先のMACアドレスをキーとするハッシュで選択される
  • 受信アダプター: ネットワークスイッチ側の判断で選択される

3: broadcast

障害耐性用のブロードキャストポリシー

  • 全てのアダプターからパケットを送出する。
  • 特殊なネットワーク構成において使用するもので通常の環境では使用できない。

4: 802.3ad

IEEE 802.3ad ダイナミック リンクアグリゲーションポリシー

制約
IEEE 802.3adに対応したネットワークスイッチが必要
  • IEEE 802.3ad Link Aggrigationの規格による接続(同じスピードとデュプレックス設定を共有するアグリゲーションを作成し、アクティブなアグリゲーション内全てのスレーブインターフェイス上で送受信を行う)

5: balance-tlb

障害耐性とロードバランシング用の送信ロードバランシング(TLB)ポリシー

制約
ネットワークスイッチに特別な機能は必要ない
  • 送信: アダプターの速度、負荷に応じて選択される
  • 受信: 1つのアクティブアダプターのみを選択し、障害時には他のアダプターに切り替えられる

6: balance-alb

障害耐性とロードバランシング用のアクティブロードバランシング(ALB)ポリシー

制約
ネットワークスイッチに特別な機能は必要ない
  • 送信: アダプターの速度、負荷に応じて選択される
  • 受信: アダプターの速度、負荷に応じて選択される。ただし、通信相手のIPアドレスに応じて固定したアダプターを使用する(通信相手のARPテーブルに登録されるMACアドレスを変更することで受信アダプターを選択する(ARPネゴシエーション)ため、ルータ越しの通信の場合、常に同じアダプターが使用される)

スイッチの冗長構成を取る場合

active-backupポリシーが最適かと思われるが、balance-tlb, balance-albでもいけそう(未検証)。

MII(Media Independent Interface)リンク監視

MII規格のリンク情報を利用する。つまり、MIIのリンクダウンイベントのみを見ているので物理アダプタのドライバモジュールが検知できない障害(ネットワークスイッチより先の接続障害)は検知できない。デフォルトは100(ms)。

参考


■コメント(0件)

■トラックバック(0件)

作者:

更新日:2008年12月1日 14時43分

このブログのホーム

お勉強

とある本を利用して某OSの機能に関するお勉強をしているのですが、微妙。

何が微妙かというと

  • 何度も同じような説明が節毎に存在する
  • 段落毎に1つの機能について説明しているのではなく、何故か段落をまたがって説明されている
  • しかも段落でまとまりがなく、1つの段落で複数の話題を扱っていたりする
  • 妙に一文が長く、「で、結局何が言いたいのか」と問い詰めたくなる
  • 用語が出てくるときにそこまで説明する必要があるのかと
    • IDEが出てくる例: IDE(Integrated Drive Electronics)ディスクでは~

わざとわかりづらくしているようにしか思えない。
試しに箇条書きにしてみたら紙面の半分以下で非常にわかりやすくなったorz


■コメント(0件)

■トラックバック(0件)

作者:

更新日:2008年11月30日 2時34分

このブログのホーム

sigmarion IIIをパートナーシップを結ばずにLAN経由で同期する

普段Kubuntu環境しか利用していない身として、sigmarion IIIと同期を取る為だけにWindows環境を起動させたくありません。できればVMware Serverの仮想OS*1上にインストールしたActiveSyncと同期を取らせることができれば、再起動の手間とかがなくなり非常に便利です。

が、VMware Serverにて提供されるUSBエミュレーションではsigmarion IIIをUSB接続するとsigmarion IIIがフリーズしてしまい同期どころではありません*2。どうしたものかと考えていましたが、ActiveSync 3.xまではCEデバイスとパートナーシップを結んだ後はLAN経由で同期を取ることができます。

これはVMware Server上に構築されたActiveSync 3.8 on Windows 2000環境とパートナーシップを結ばずに無線LAN接続する方法について奮闘したときのメモ。

*1 : Windows 2000 Professional

*2 : ちなみにAdvanced W-ZERO3[es]はVMware Server上の仮想マシン(ActiveSync 4.5 on Windows 2000)と問題なく利用できました

環境

ActiveSyncホスト(仮想環境)

  • VMware Server 1.0.6 on Debian GNU/Linux 4.0(etch)/i386
  • Windows 2000 Professional SP4
  • コンピュータ名: vm-host
  • ActiveSync 3.8日本語版

ActiveSyncホスト(Windowsネイティブ環境)

  • Windows 2000 Professional SP4
  • コンピュータ名: native-host
  • ActiveSync 3.8日本語版

接続対象CEデバイス

  • NTT DoCoMo sigmarion III
  • CEデバイス名: sig3

パートナーシップ情報の取得

とりあえず、ネイティブ動作するWindows環境下でActiveSyncとsigmarion IIIとのパートナーシップを構成します。パートナーシップが構成できたら、母艦のレジストリエディタにてHKEY_CURRENT_USER\Software\Microsoft\Windows CE Service\Partners\01234567*3をエクスポートします。

エクスポートされたファイルを適当なエディタ*4で開き、以下のコメントに記述されたキーの値を適合するように編集。

[HKEY_CURRENT_USER\Software\Microsoft\Windows CE Services\Partners\01234567]
"Schedule Option"=dword:00000000
#CEデバイス名に変更
"DisplayName"="sig3"
"DeviceType"="Jameson"
"Description"=""
#母艦上に作成する同期用フォルダを指定
"DataFolder"="C:\\Documents and Settings\\Username\\Application Data\\Microsoft\\ActiveSync\\Profiles\\sig3"
"Processor"=""
"ProcessorType"=dword:00000720
"OemInfo"="PDA for NTT DoCoMo"
"TotalSize"=dword:00000000
"Version"=dword:038c0a04
"Capabilities"=dword:00000110
"ServerMajor"=dword:00000000
"ServerMinor"=dword:00000000
"PimsInstalled"=dword:00000000
[HKEY_CURRENT_USER\Software\Microsoft\Windows CE Services\Partners\01234567\Services\Synchronization\Objects\Appointment]
@="Appointment Object"
"Store"="<*Invalid*>"
"Display Name"="予定表"
"Plural Name"="予定"
#ActiveSyncのインストールパスが異なる場合は正しいパスとなるように編集。
#この例では予定表ですが、チャンネル、連絡先、ファイル、受信トレイ、Pocket Access、仕事も同様に編集します
"DefaultIcon"="C:\\Program Files\\Microsoft ActiveSync\\outstore.dll,-131"
"Disabled"=dword:00000001
"Preserve"="Store,Disabled,DefaultIcon,Display Name,Plural Name"

*3 : 01234567はパートナーシップ構成時に自動的に振られるID。パートナーシップが複数結ばれている場合、このパスに含まれるDisplayNameキーの値がCEデバイス名となっているので、これを基準にエクスポートするパスを判断して下さい

*4 : メモ帳など

VMware Server上の母艦の設定

  1. エクスポートされたレジストリをインポート
  2. レジストリの\HKEY_CURRENT_USER\Software\Microsoft\Windows CE Services\Partners\01234567\DataFolderキーの値のフォルダを作成(上記の例だとC:\Documents and Settings\Username\Application Data\Microsoft\ActiveSync\Profiles\sig3)

CEクライアント側の設定

CEデバイスで動作する適当なレジストリエディタを用いて以下のキーを編集する。

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows CE Services\Partners\P1]
#ネイティブ環境のコンピュータ名(native-host)からVMware Server環境のコンピュータ名(vm-host)に変更
"PName"="native-host"
#パートナーシップのID
"PId"=dword:01234567

ここまで設定したら

sigmarion IIIからネットワーク経由でのActiveSyncをかければVMware Server環境下の母艦と同期できるようになります。

参考


■コメント(0件)

■トラックバック(0件)

作者:

更新日:2008年11月29日 19時53分

このブログのホーム

dateコマンドによる時刻の設定

Linux環境で時刻を設定するにはdateコマンドを使う。

例えば2008/11/29 22:58:00に合わせたい場合は

# date 1129225808
2008年 11月 29日 土曜日 22:58:00 JST

となる。

書式は 月,日,時,分,年の順。


■コメント(0件)

■トラックバック(0件)

作者:

更新日:2008年11月29日 14時4分

このブログのホーム

[Ubuntu/Kubuntu] パッケージをアップグレードしたらVMware Server Consoleが動かなくなった場合の対処

Kubuntu 8.04を導入しているメインマシンに導入されているVMware Server Consoleが先日のKernel 2.6.24-21から2.6.24-22へのパッケージアップグレードを機に動作しなくなった。その際に再びVMware Server Consoleが動作するように対処したときのメモ。

環境

VMware Server ホスト

  • Debian GNU/Linux 4.0(etch)/i386
  • VMware Server 1.0.6

VMware Server クライアント

  • Kubuntu 8.04.1 日本語ローカライズド(i386)
  • VMware Server Console 1.0.6

現象

VMware Server ConsoleがKatapultから起動させることが出来なくなった。で、vmware-server-console-distribに含まれているインストールスクリプトを叩いて再インストールしても立ち上がらず。直接VMware Server Consoleを叩くと以下のようなエラーを吐いていることを確認。

kaede@reika:/usr/local/bin/vmware-server-console-distrib$ vmware-server-console
/usr/lib/vmware-server-console/bin/vmware-server-console: /usr/lib/vmware-server-console/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_3.4' not found (required by /usr/lib/libcairo.so.2)
/usr/lib/vmware-server-console/bin/vmware-server-console: /usr/lib/vmware-server-console/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib/libstdc++.so.6)
/usr/lib/vmware-server-console/bin/vmware-server-console: /usr/lib/vmware-server-console/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_3.4' not found (required by /usr/lib/libcairo.so.2)
/usr/lib/vmware-server-console/bin/vmware-server-console: /usr/lib/vmware-server-console/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib/libstdc++.so.6)
/usr/lib/vmware-server-console/bin/vmware-server-console: /usr/lib/vmware-server-console/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_3.4' not found (required by /usr/lib/libcairo.so.2)
/usr/lib/vmware-server-console/bin/vmware-server-console: /usr/lib/vmware-server-console/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib/libstdc++.so.6)

対処法

VMware Serverクライアントに導入されているGCCは4.2.4 (Ubuntu 4.2.4-1ubuntu3)。要求されているGCCは3.4または4.2.0。このあたりの整合性の問題でエラーを吐いて起動しないと考えられる。
いろいろ調べた結果、以下のファイルをリネームすればいいらしい。

$ cd /usr/lib/vmware-server-console/lib
$ sudo mv libpng12.so.0/libpng12.so.0{,.bak}
$ sudo mv libgcc_s.so.1/libgcc_s.so.1{,.bak}

他にもwrapper-gtk24.shにパッチを当てる方法でも対処できるらしい。参考にしたWebサイトにてその方法も紹介されています。

おそらく

対象のlibgcc_sライブラリについて調べてみたらvmware-server-consoleにて用意されたものの他に導入されていた。

$ find /usr -name "libgcc_s*"
/usr/lib/gcc/i486-linux-gnu/4.2/libgcc_s.so
/usr/lib/vmware-server-console/lib/libgcc_s.so.1
/usr/lib/vmware-server-console/lib/libgcc_s.so.1/libgcc_s.so.1.bak

おそらくVMware Server Consoleにて用意されているライブラリを優先的に参照し、GCCのバージョン不整合によりエラーが発生しているものと考えられる。一方、GCCのバージョンと整合性が取れているものは/usr/lib/gcc/i486-linux-gnu/4.2/以下に導入されていると考えられる。
問題のファイルをリネームすることで、優先順位が低く設定されているVMware Server Consoleにて用意されている方ではないlibgcc_sが利用させるようになり、エラーが解消されるのであろう。

参考


■コメント(0件)

■トラックバック(0件)

作者:

更新日:2008年11月28日 16時55分

このブログのホーム

眠れなかったので

ついかっとなってやった。特に反省はしていない。

081125.jpg

ちなみにUSBメモリブートだったりします。記事はもうしばらくお待ち下さい。


■コメント(0件)

■トラックバック(0件)

作者:

更新日:2008年11月24日 20時42分

このブログのホーム

サブマシンセットアップ

少し前になりますがOpteron 254(2.80GHz) Dual/4GB/Quadro FX1400なデスクトップパソコンを購入したのですが、なかなか時間が無くセットアップ出来ていませんでした。
と、いうことでこの週末を利用してサブマシンをセットアップすることに。

081124a.jpg

選定OS

Windows XP Professional x64 Edition
このデスクトップパソコンに付属してきたOS。メインで利用する気はさらさらありませんが、もったいないのでインストール。
Ubuntu Desktop 8.10(Intrepid Ibex)/amd64
Kubuntu 8.10をいきなり導入するよりもUbuntu 8.10を導入した上でKubuntu環境を構築した方が幸せになれそうなので。
NetBSD 4.0/amd64
泣く子も黙るNetBSDです。使いこなすことが出来たら便利なのでしょうが、そのためには環境が必要です。ということで勉強の為にインストール(ぉ
CentOS 5.2/x86_64
Ubuntuはamd64環境だとあまり幸せになれないことはわかっているので、KDE3.5がまともに動いてamd64環境でもそれなりに幸せになれるディストリビューションとして選定。

ということで

さくさく導入。NetBSD入れるときにgrubを上書きしてしまったりして苦労したのは内緒。

081124b.jpg

やっぱり

Ubuntu/Kubuntu 8.10のKDE環境はKDE4.1になってしまっています。

081124c.jpg

実感としてKDE3.5と比較し、やはりまだまだこなれていないというのが正直なところ。
時間が解決するとはいえ、使い慣れたKDE3.5が使いたい。ということで、サブマシンではCentOS 5.2を利用することがメインとなりそうです。


■コメント(0件)

■トラックバック(0件)

作者:

更新日:2008年11月24日 13時16分

このブログのホーム

本日の創作物。

カレントディレクトリ配下のwavファイルをmp3に変換するシェルスクリプトを作ってみた。

#!/bin/sh

ls ./*.wav | while read line;do
    lame -h -V0 "$line"
done

というか、これくらいだったらスクリプトを書かなくても出来る気がするのだけど。。。
どなたか他の方法を知っていたら教えて下さい。


■コメント(2件)

なべ『for x in `*.wav`; do lame -h -V0 "$x" done 逆にパイプでつなぐ方法を知らなかっ...』(2008/11/09 22:42)
せ『The LAME Project@sourceforgeのsrc落として,miscにあるmlameを使う mlame -o"-h...』(2008/11/10 13:50)

■トラックバック(0件)

作者:

更新日:2008年11月9日 11時3分

このブログのホーム

[W2k3] ライセンス認証に失敗し、「メッセージ番号:32777」が表示される場合の対処法

Windows Server 2003のライセンス認証を行った際に、メッセージ番号:32777が表示され認証手続きを行うことができない場合の対処法のメモ。

環境

  • Windows Server 2003 Standard Edition R2 SP2 (32bit) 評価版
  • VMware Workstation 6.0 仮想マシン環境
  • Windows Updateなどは実行可能

対処方法

IEの詳細設定から「サーバー証明書の取り消しを確認する(再起動が必要)」のチェックボックスをオフにすれば認証を行うことができる。
ただし、この証明書の取り消しを無効にすることは推奨されないため、認証が通った後は元に戻すことをお勧めします。

ちなみに

インストール時の14日間のライセンス認証猶予期間を過ぎた状態ではIEの設定を弄る事ができません。このため、上記対処方法は利用できず電話でのライセンス認証を行うしかなくなってしまいます。*1

*1 : 電話をかけるのが面倒なので再インストールしましたが(苦笑

参考

Microsoft KB:816897 インターネット経由でWindows Server 2003のライセンス認証の手続きを行うと "メッセージ番号: 32777"のエラーメッセージが表示される


■コメント(0件)

■トラックバック(0件)

作者:

更新日:2008年11月7日 14時6分

このブログのホーム

世の中には2種類の人間がいる

世の中には2種類の人間がいる。各停から快速に乗り換える人間と、各停を乗り続ける人間だ。

各停から快速に乗り換えた場合、多少は目的地に早く着くだろう。しかし、多数の人間が同じような考えのもと乗っている為、非常に居心地は悪い。途中で席が空くこことの可能性は低い。最悪だ。
各停に乗り続けた場合、目的地につくには多少時間がかかる。しかし、快速よりも空いており、各停から快速に乗り換える人間が多少なりともいるため、座れる可能性が高い。

で、ここで思ったこと。

快速に乗り換える人間の休日は外に遊びに行ったりと精力的に活動するのだろうなぁ、と。各停を乗り続ける人間は、せっかくの休日だからとだらだらと過ごすのだろうなぁ、と。

どうなんでしょ?

えっ、私ですか?もちろん各停に乗り続けるタイプの人間ですw


■コメント(2件)

ひまを『品川で快特に乗ったのに京急川崎でわざわざ鈍行に乗り換えてまで横浜まで行くという、スローライフ丸出しな先輩を思い出しました。』(2008/11/05 26:51)
かえで『さすがに乗り換えまではしないですね。 自分の場合はスローライフというよりは惰性なだけです(苦笑』(2008/11/07 23:08)

■トラックバック(0件)

作者:

更新日:2008年11月4日 14時13分

このブログのホーム