Skip to main content
Cosmovisorは、Cosmos SDKベースのブロックチェーン向けに設計されたプロセスマネージャーで、バイナリ(チェーン)アップグレードの管理を簡素化します。このガイドでは、Injective NetworkノードにCosmovisorをセットアップする手順を説明します。
注意: これらの手順は、既存のチェーンバイナリ(例:injectived)があり、ソースからCosmovisorをインストールする場合にはGo環境が動作していることを前提としています。セットアップに応じて名前とパスを調整してください。

目次

  1. インストール
  2. 環境変数
  3. ディレクトリ構造
  4. Cosmovisorの実行
  5. チェーンアップグレードの処理
  6. Cosmovisorをsystemdサービスとして実行

インストール

Goによるインストール

Goがインストールされている場合、以下のコマンドでCosmovisorをインストールできます:
ヒント: Goバイナリのインストールパス(通常$GOPATH/binまたは$HOME/go/bin)がシステムのPATHに追加されていることを確認してください。以下のコマンドでインストールを確認できます:

環境変数

Cosmovisorがどのバイナリを実行し、どこにあるかを認識できるように、以下の環境変数をセットアップします:
  • DAEMON_NAME
    チェーンのバイナリ名(例:injectived)。
  • DAEMON_HOME
    ノードのホームディレクトリ(例:~/.injectived)。
これらの変数は、シェルのプロファイル(~/.bashrc~/.profileなど)に設定するか、ターミナルセッションで直接エクスポートできます:

ディレクトリ構造

Cosmovisorは、ノードのホームディレクトリに特定のフォルダ構造を必要とします:
  1. Genesisディレクトリの作成 このディレクトリには初期(genesis)バイナリが配置されます。
  2. 現在のバイナリのコピー 現在のチェーンバイナリ(例:injectived)をgenesisフォルダに配置します。ファイル名がDAEMON_NAMEの値と一致していることを確認してください(次のセクションを参照)。

Cosmovisorの実行

チェーンのバイナリを直接実行する代わりに、以下のコマンドでCosmovisorを使用してノードを起動します:
Cosmovisorは以下を行います:
  • $DAEMON_HOME/cosmovisor/genesis/bin(または適切なアップグレードフォルダ)のバイナリを検索します。
  • そのバイナリを使用してノードを起動します。
  • オンチェーンのアップグレードシグナルを監視し、必要に応じてバイナリを自動的に切り替えます。

チェーンアップグレードの処理

オンチェーンでアップグレードがアナウンスされた場合、Cosmovisorが自動的に切り替えられるように新しいバイナリを準備します:
  1. アップグレードディレクトリの作成 オンチェーンで提供されるアップグレード名(例:v1.14.0)を使用します:
  2. 新しいバイナリの配置 新しいバイナリをコンパイルまたはダウンロードし、アップグレードディレクトリにコピーします。バイナリ名がDAEMON_NAMEと一致していることを確認してください。
**ヒント:**GitHubからinjectivedバイナリをダウンロードした場合は、libwasmvm.x86_64.soも同じbinディレクトリにコピーしてください。 systemd設定でこのディレクトリをLD_LIBRARY_PATHに追加する必要があります。
  1. アップグレードプロセス アップグレード高に達すると、Cosmovisorはスケジュールされたアップグレードを検出し、対応するアップグレードフォルダにあるバイナリに自動的に切り替えます。

Cosmovisorをsystemdサービスとして実行

本番環境では、ノードをsystemdサービスとして実行するのが一般的です。以下はサービスファイルの例です。
  1. サービスファイルの作成 以下の内容でファイル(例:/etc/systemd/system/injectived.service)を作成します。パスと<your_username>を適宜調整してください:
  2. サービスの有効化と起動
  3. ログの確認 サービスが正常に動作していることを確認します:

最終更新日 2026年4月3日