conman

conman

conman を利用することで、端末間でのコンソールのセッションの共有や
コンソール出力のログ取得が可能となる。

バージョン

$ conmand -V
conman-0.2.7 FREEIPMI
$ conman -V
conman-0.2.7

conman サーバ設定

conman.conf の設定値について抜粋
ディレクティブ 項目 設定値 備考
server coredump on コアダンプを採取するよう設定
server coredumpdir <coredump_dir> コアダンプ採取ディレクトリ
server keepalive on 実際どう動作するかは未確認
server logdir "/var/log/conman" サーバ、各コンソールのログディレクトリ共通設定
server logfile <conmand_log> conman サーバのログ
server timestamp <タイムスタンプ間隔> コンソール出力がない場合でも、ログにタイムスタンプが残る。
global log "%N.log" コンソールログ名設定。左記の場合 <コンソール名>.log となる。
global logopts "timestamp" コンソールログのオプション。左記の場合、タイムスタンプを付与する。
global seropts <ser_opt> serial デバイスに関する設定。変更するならビットレートくらい?
console name <コンソール名> 任意の名前をつける。
dev "/usr/share/conman/exec/ipmitool.exp %N <user>" 左記は、設定したコンソール名=コンソール接続ホストの場合に、expect スクリプトで接続する例

logdir などは、下位のディレクティブ(global, console)の指定がより優先される。
console ディレクティブの dev は ipmitool.exp を利用している。
これは、接続が切れた場合に数分で再接続するため。(ipmi を使用した場合、再接続しないことがあった)


conman.pswd

/usr/share/conman/exec/ipmitool.exp を使用する場合、/etc/conman.pswd に
パスワード設定を記載すること。
ipmitool.exp に引数としても渡せるが、その場合 ps コマンドでパスワードが見えるため
ファイルに記載したほうが良い。

設定例
$ cat /etc/conman.pswd
# <host-regex> : <user> : <pswd> [ : <keyg> ]
hostname* : root : root

conman クライアントの使用方法

基本
$ conman <name>

リードオンリーの場合
$ conman -m <name>

コンソールセッションの共有(既に別端末でログイン済みでも可)
$ conman -j <name>

conman サーバがリモートサーバの場合
$ conman -d <remote_host> <name>
または
$ CONMAN_HOST=<remote_host> conman -d <remote_host> <name>

なおエスケープ文字のデフォルトは & になっている。
そのため conman クライアントから抜ける場合は &. を押す。
(-e オプションで変更可能)

コンソール名は、','区切りで複数指定でき glob 表現も可能で、-b オプションと
組み合わせブロードキャストでコマンド実行も可能。
ただし、複数の場合出力がないので注意(ログや別端末でログインして対応する)

  • 最終更新:2017-02-05 11:40:28

このWIKIを編集するにはパスワード入力が必要です

認証パスワード