イーサネットプライベートブロックチェーン-ゼロで仲裁を確立(4)


前の文章が最後だと思っていましたが、書いてある内容が多すぎて選挙の最後の文章が始まります.前回のレッスンまでdocker-comoseファイルでブロック作成サイクルの変更、不要なコンテナコメント、ログコメント、削除操作を行いました.では、dockerの内部ではなくdockerの外部で行われている仕事を整理してみましょう.
ログ・ファイル・ディレクトリの削除
quorum-ネットワークディレクトリに複数のShellスクリプトファイルがあります.いずれかの仲裁を実行する際に使用するrun.shファイルを変更してログファイルディレクトリを生成しないでください.
cd ./quorum-network
vi run.sh
# mkdir -p logs/besu logs/quorum logs/tessera
dockerログ管理
dockerはシステム内で各コンテナにログを記録します.このため、logrotateを使用してログ管理を行います.
1.ドッキングコンテナログファイルの場所
/var/lib/docker/containers
2.docker-コンテナログを管理するファイルを作成する
sudo vi /etc/logrotate.d/docker-container
3.docker-コンテナファイルの内容を作成する
/var/lib/docker/containers/*/*.log {
daily
			compress
			missingok
			copytruncate
			size=100M
			dateext
		  lastaction
		    /data/log/logrotate/docler-logrotate.sh
		  endscript
}
※オプションの説明
  • 毎日:ログ管理周期{年、月、週、日}
  • compress:ログファイル圧縮
  • missingokログファイルが存在しない場合、エラーメッセージ出力後に2番目の実行
  • copytruncate:レプリカ作成、サイズ0
  • size=100 M:大きさが100メガバイトを超える場合に実行
  • dateext:バックアップファイル名に日付を書き込む
  • lastaction~endscript:logrotate出力生成後運転
  • logrotateが動作していません
    logrotateプロファイルが作成されましたが、動作しません.原因究明のために逆追跡を行った.

  • /etc/logrotate.d/docker-コンテナを作成して検証しますが、機能しません.

  • /etc/logrotate.confのinclude/etc/logrotate.dの使用

  • /etc/cron.dail/logrotate/usr/sbin/logrotate/etc/logrotate.confで実行

  • /etc/crontabでコンポーネント-report/etc/cronを実行します.毎日実行

  • logrotateストリームの結果の表示
    -> crontab -> cron.daily -> logrotate -> logrotate.conf -> logrotate.d

  • ソリューション

  • /etc/logrotate.d/docker-コンテナの/etc/logrotateを使用します.確認conf

  • logrotate.confの/etc.cronを使用します.dail/logrotateで
    /usr/sbin/logrotate/etc/logrotate.検出はconfで実行

  • コマンドに入力->操作X

  • 調査の結果、強制オプションの追加-f

  • /usr/sbin/logrotate -f/etc/logrotate.conf->操作Oの実行

  • /etc/logrotate.confの変更

  • logrotateアクション
  • ※cronは、unixで特定の時間にタスクを実行するデーモンです
    サービスcronステータスを使用して、cronが正常に動作しているかどうかを確認できます.
    これで仲裁サーバの非情な成長原因の理解と最適化(?)が終了した.仕事を終えた.(うれしい...ハハ)必要に応じてcontainerを使ってログを記録する部分もあります.この投稿をもとに、状況に応じて設定を変更すればよい.サーバ容量増加の最適化結果は次のとおりです.