【GCP】ubuntu16.04にsteemノードを立ててみる #2💻

in #japanese6 years ago (edited)

ubuntu16.04にsteemノードを立ててますが、2日たってもブロック同期が完了しません。。
色々確認したところ、いくつか問題がありそうなので対応を記載します。

※ノード構築手順は↓です。
https://steemit.com/japanese/@yohei512/gcp-ubuntu16-04-steem

【はまりポイント①】メモリ不足

150万ブロック程度同期が完了してから中々同期が進みません。
確認してみると、下記のエラーがでていました。

bind: Bad file descriptor

たぶん、インスタンスのメモリ不足です。
そのため、GCPのインスタンスのメモリを16G→20GBへアップして再度同期を開始しています。これで2日ほど待ってみて状況を確認してみます。

↓・・・追記

2日経つとまたメモリ不足気味になります。一度docker をrestartすればいいっぽい。
同期が遅くなったら定期的に再起動ですね!

docker restart steemd-exchange

【はまりポイント②】steemのlogが大量にでる問題

steemコンテナを起動して2,3日経過後にコンテナのlogのサイズを見てみると、20GBありました笑。放置していたら容量がいくらあっても足りないので、コンテナのlogをlotateする必要があります。
docker runの起動オプションに下記を追加しました。(1ファイル20Mbyte, 3世代保存)

--log-opt max-size=20m
--log-opt max-file=3 

ログファイルを見てみると、だいたい20MBで世代交代されてますね。

sudo ls -ltr /var/lib/docker/containers/a603ac9af9550475e6e505e2a09e0a8aadee832a2c2e7b0aad
01fc3bb48c7a74

↓

-rw-r----- 1 root root 20000191 Sep  2 06:57 a603ac9af9550475e6e505e2a09e0a8aadee832a2c2e7b0aad01fc3bb48c7a74-json.lo
g.2
-rw-r----- 1 root root 20000187 Sep  2 06:57 a603ac9af9550475e6e505e2a09e0a8aadee832a2c2e7b0aad01fc3bb48c7a74-json.lo
g.1
-rw-r----- 1 root root  7064257 Sep  2 06:58 a603ac9af9550475e6e505e2a09e0a8aadee832a2c2e7b0aad01fc3bb48c7a74-json.lo