3.2.2. mijin Catapult(v.2) のバージョンアップ¶
本章では、 mijin Catapult(v.2) ノードのマイナーバージョンアップ方法を説明します。
mijin Catapult(v.2) のプログラムは、dockerコンテナのバージョンを更新、必要であればConfigファイルを更新することでバージョンアップすることが可能です。
バージョンアップのアナウンスは、有償サポートのお客様向けに発信しています。
警告
メジャーバージョンアップや、バージョンの差異がある場合は、同期に失敗する可能性があります。
2022/9/20時点 バージョンアップはございません。
- 作成日:
2022/8/1
- 更新日:
2022/9/15
3.2.2.1. Step.1¶
ノードにリモートログインします。
AWS MarketPlace の mijin Catapult(v.2) にログインしたい場合は、 mijin Catapult(v.2) EC2インスタンスログイン方法 を参照してください。
3.2.2.2. Step.2¶
mijinを起動している「catapult」ユーザーにスイッチします。
$ sudo su - catapult
catapult@api1:~$
3.2.2.3. Step.3¶
mijinの起動ファイルがあるディレクトリに移動します。
API,PEERノードでディレクトリが違うことに注意してください。
ノード |
ディレクトリ |
API/Dual |
mijin-catapult-package/package/api/catapult/ |
PEER |
mijin-catapult-package/package/peer/catapult/ |
APIノードの場合は、以下のように移動します。
catapult@api1:~$ cd mijin-catapult-package/package/api/catapult/
catapult@api1:~/mijin-catapult-package/package/api/catapult$
3.2.2.4. Step.4¶
mijinではdockerによる複数コンテナを起動しています。
複数のコンテナを確認します。
3.2.2.4.1. APIノードの場合¶
4つのコンテナが起動しています。 全てのStateがUpであることを確認してください。 何かしら異常がある場合は、Up`ではなく `Exit になり、ダウンした状態になります。
catapult@api1:~/mijin-catapult-package/package/api/catapult$ docker-compose ps
Name Command State Ports
--------------------------------------------------------------------------------------------
catapult_api-node-broker_1 bash -c /bin/bash /scripts ... Up
catapult_api-node_1 bash -c perl /scripts/wait ... Up 0.0.0.0:7900->7900/tcp
catapult_db_1 docker-entrypoint.sh bash ... Up 27017/tcp
catapult_rest-gateway_1 docker-entrypoint.sh ash - ... Up 0.0.0.0:3000->3000/tcp
3.2.2.4.2. PEERノードの場合¶
1つのコンテナが起動しています。
全てのStateがUpであることを確認してください。
何かしら異常がある場合は、Up`ではなく `Exit になり、ダウンした状態になります。
catapult@peer1:~/mijin-catapult-package/package/peer/catapult$ docker-compose ps
Name Command State Ports
--------------------------------------------------------------------------------------
catapult_peer-node_1 bash -c /bin/bash /scripts ... Up 0.0.0.0:7900->7900/tcp
3.2.2.5. Step.5¶
docker-composeを使って、mijinコンテナすべてを停止します。
3.2.2.5.1. コンテナ全停止¶
catapult@api1:~/mijin-catapult-package/package/api/catapult$ docker-compose down
Stopping catapult_rest-gateway_1 ... done
Stopping catapult_api-node_1 ... done
Stopping catapult_db_1 ... done
Removing catapult_api-node-broker_1 ... done
Removing catapult_rest-gateway_1 ... done
Removing catapult_api-node_1 ... done
Removing catapult_db_1 ... done
Removing network catapult_default
3.2.2.5.2. 停止後、ロックファイルを確認し、あれば削除する¶
catapult@api1:~/mijin-catapult-package/package/api/catapult$ ls -la /mnt/mijin/blocks/data/*.lock
---------- 1 catapult catapult 0 Jul 14 02:17 /mnt/mijin/blocks/data/broker.lock
---------- 1 catapult catapult 0 Jul 14 02:17 /mnt/mijin/blocks/data/server.lock
上記のように停止後にロックファイルが存在する場合、異常停止したと考えられます。
そのため、ロックファイルを削除します。
$ rm -rf /mnt/mijin/blocks/data/broker.lock /mnt/mijin/blocks/data/server.lock
3.2.2.6. Step.6¶
docker-composeファイルを修正します。
ここでは例として、 1.0.0.0 から 1.0.0.1 へ置き換えます。
catapult@api1:~/mijin-catapult-package/package/api/catapult$ sed -i -e s/gcc-1.0.0.0/gcc-1.0.0.1/g docker-compose.yml
注釈
Configファイルの修正が必要な場合があります。
バージョンアップのアナウンス時に手順を公開します。(2022/9/20時点 バージョンなし)
3.2.2.7. Step.7¶
catapult@api1:~/mijin-catapult-package/package/api/catapult$ docker-compose up -d
Creating network "catapult_default" with the default driver
Creating catapult_db_1 ... done
Creating catapult_rest-gateway_1 ... done
Creating catapult_api-node-broker_1 ... done
Creating catapult_api-node_1 ... done
起動後、Step.4 の項目を実行し、すべてのコンテナが Up になっていることを確認してください。