Capstanの使い方

CapstanはGo言語で実装されたOSvのデプロイツールです。
各種アプリケーションを含んだディスクイメージを1コマンドでダウンロードし、ローカルのKVMVirtualBoxなどへデプロイすることが出来ます。

以下に使い方を紹介します。

Capstanの対応環境

対応OSはLinux, Mac, Windowsの3つです。
対応しているハイパーバイザIaaSはQEMU(可能ならKVM)、VirtualBoxVMwareGoogle Compute Engineです。
ハイパーバイザを指定しない場合のデフォルトは、LinuxQEMU(可能ならKVM)、Mac, WindowsVirtualBoxです。

インストール方法

Linux / Mac
curl https://raw.githubusercontent.com/cloudius-systems/capstan/master/scripts/download | bash

コマンドのヘルプ(capstan help)

helpでコマンドの一覧を、help <コマンド名>でコマンドの詳細と引数の説明を読むことが出来ます。

capstan help
capstan help run

リモートイメージの検索(capstan search)

search <アプリ名>でアプリ名を含むリモートイメージの検索を行います。
searchだけで実行すると全てのリモートイメージの一覧を表示します。

capstan search tomcat
capstan search

リモートイメージのダウンロード(capstan pull)

pull <リモートイメージ名>でイメージをダウンロードします。

capstan pull cloudius/osv-tomcat

ダウンロード済みリモートイメージの一覧(capstan images)

ダウンロード済みのイメージ一覧を表示します。
ダウンロード済みのイメージはrunコマンドにより再ダウンロードの必要無く実行出来ます。

capstan images

リモートイメージ・停止済みインスタンスの実行(capstan run)

run <リモートイメージ名>でリモートイメージをダウンロード&実行します。既にダウンロードされている場合はダウンロード済みイメージを使用します。

run <インスタンス名>で停止済みインスタンスを実行します。

引数無しのrunではカレントディレクトリのCapstanfileからbuildコマンドで生成されたインスタンスを実行します。

以下にオプション引数の説明をします。

  • -i <インスタンス名>でインスタンス名の変更を行います。デフォルト値はリモートイメージ名から生成されます。
  • -p <ハイパーバイザ名>でハイパーバイザの指定を行います。有効な値はqemu, vbox, vmw, gceのいずれかになります。Linuxのデフォルト値はqemu、それ以外はvboxです。
  • -m <メモリサイズ>でメモリサイズの変更を行います。デフォルト値は1Gです。
  • -c でCPU数の変更を行います。デフォルト値は2です。
  • -n <ネットワークタイプ>でネットワーク構成の変更を行います。有効な値はnat, bridge, tapのいずれかになります。デフォルト値はnatです。
  • -b <ブリッジ名>でブリッジ先デバイス名の変更を行います。デフォルトネットワークタイプはnatなので使用されませんが、デフォルト値はvirbr0です。
  • -f '<ローカルポート番号>:'でnat環境でのポートフォワード設定を行います。
capstan run cloudius/osv
capstan run -m 4G -c 4 -f '8000:8000' -f '8081:8081' cloudius/osv-tomcat

インスタンスの一覧(capstan instances)

instancesでインスタンスの一覧を表示します。

capstan instances

実行中インスタンスの停止(capstan stop)

stop <インスタンス名>で実行中インスタンスを停止します。

capstan stop cloudius-osv-tomcat

インスタンスの削除(capstan delete)

delete <インスタンス名>でインスタンスを削除します。

capstan delete cloudius-osv-tomcat