Skip to content

sechiro/fabfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

fabfiles

使えそうなFabricタスクをアップしていく予定です。

dtop

複数サーバのdstatの結果をtop風にコンソールにまとめて表示するタスクです。 Fabricの並列実行の仕組みで、各サーバで dstat を実行して表示します。

使用方法

基本的な使い方

$ fab -H 192.168.1.1,localhost dtop

各サーバのdstatの実行結果が top 風に並べて表示されます。順番はホスト指定の順番です。 特にタスクのオプションを指定しなかった場合は、まず各サーバの /tmp/dstat を実行しようとします。それに失敗するとPATHが通ったdstatを実行します。

オプション

以下のようにタスクにオプションを渡して実行することもできます。

$ fab -H 192.168.1.1,localhost dtop:dstat_file=/path/to/dstat,dstat_opts='-Tclmdrn',interval='1'

  • dstat_file
    • dstat 実行ファイルの場所をフルパスで指定します。
  • dstat_opts
    • dstat に渡すオプションを指定します。デフォルトでは、-Tclmdrn が指定されています。そのままこの値がコマンドラインに渡されるので、複数のロングオプションなども指定可能です。
  • interval
    • dstat の更新間隔を秒単位で指定します。デフォルトは1秒です。

dstat の配布

以下のタスクで dstat を配布することもできます。 各サーバに dstat を配布して実行権限をつけます。

$ fab -H 192.168.1.1,localhost dtop.put_dstat:dstat_file=/path/to/dstat,dst=/tmp

オプションは以下の通りです。

  • dstat_file
    • 配布元となる dstat ファイルをフルパスで指定します。デフォルトは ~/src/dstat となっています。
  • dst
    • dstat の配布先(Destination)を指定します。デフォルトは /tmp ディレクトリとなっています。

制限事項

  • Fabricの並列実行時の制限で、インタラクティブなパスワード入力ができません。パスワードなしでのログインができるように設定するか、実行時に -p オプションでのパスワード指定をするなどで対応してください。(パスワードをコマンドラインから与える場合は十分なセキュリティ上の注意を払ってください)
  • 表示画面の初期化が対象サーバ数だけ走ってしまうため、起動直後は何回も画面クリアが行われます。これは、Fabricの並列実行時の制限で @runs_once デコレータが指定されていても、並列実行時にはそれぞれのホストに対して1回実行されてしまうという仕様によります。

Releases

No releases published

Packages

No packages published

Languages