52

CentOSマシンにJenkinsをデプロイしました。Jenkinsは 3 日間正常に動作していましたが、昨日Disk space is too low. Only 1.019GB left.問題が発生しました。

この問題を解決するにはどうすればよいですか?マスターが何時間もオフラインになりますか?

4

8 に答える 8

35

jenkins UI からしきい値を簡単に変更できます (私のバージョンは 1.651.3 です)。

[ 監視ページを防止するジェンキンスノード]


更新: 高いディスク容量を確保する方法

この機能は、ディスクの空き容量が少ないスレーブでの作業を防ぐことを目的としています。しきい値を下げても、一部のジョブが終了後に適切にクリーンアップされないという事実は解決されません。

あなたが構築しているものに応じて:

  1. ビルドのディスク出力が何であるかを理解していることを確認してください。可能であれば、出力がジョブ ワークスペースにのみ発生するように制限してください。ワークスペース クリーンアップ プラグインを使用して、ビルド後のステップとしてワークスペースをクリーンアップします。
  2. プロセスで外部フォルダーにデータを書き込む必要がある場合は、ビルド後の手順で手動でクリーンアップします。

代替案1 - ジョブごとに新しいスレーブをプロビジョニングします (スポット スレーブを使用します - さまざまなクラウド プロバイダーと統合してオンデマンドでオンザフライ マシンをプロビジョニングするプラグインが多数あります)

Alternative2 - コンテナー内でビルドを実行します。ビルドが完了すると、すべてが破棄されます

于 2016-12-22T12:42:23.773 に答える
8

古いビルドを破棄することで、ディスク容量の削減を制限できます。プロジェクト構成には、このためのチェックボックスがあります。

于 2012-05-17T22:16:52.577 に答える
3

これは実際には正当な質問なので、反対票を理解していません。おそらく、スーパーユーザーまたはサーバーフォールトに属しています。これは、ディスクの容量が不足している場合のハード制限ではなく、ソフト警告しきい値です。

ジェンキンスも同じです。結論として、多くの小さなプロジェクトでは、 呼び出されるシステム プロパティhudson.diagnosis.HudsonHomeDiskUsageChecker.freeSpaceThresholdを減らすことができます。

私はそれをテストしておらず、免責事項があると言って

互換性保証なし

一般に、これらのスイッチは実験的なものであることが多く、予告なしに変更される可能性があります。それらのいくつかが役立つと思われる場合は、チケットを提出して公式機能に宣伝してください。

于 2012-06-26T04:09:22.353 に答える
3

同じ問題が発生しました。私のジェンキンスのバージョンは 2.3 で、その UI は少し異なります。誰かを助けるためにここに置く。両方のディスク容量のしきい値を 5GB に増やすと、問題が修正されました。

ここに画像の説明を入力

于 2018-07-25T05:15:52.920 に答える
1

Jenkins Jobとして空き容量を確認するには:

パラメーター

  • FREE_SPACE: GB単位で必要な空き容量。

仕事

#!/usr/bin/env bash

free_space="$(df -Ph . | awk 'NR==2 {print $4}')"

if [[ "${free_space}" = *G* ]]; then
  free_space_gb=${x/[^0-9]*/}

  if [[ ${free_space_gb} -lt ${FREE_SPACE} ]]; then
    echo "Warning! Low space: ${free_space}"
    exit 2
  fi
else
  echo "Warning! Unknown: ${free_space}"
  exit 1
fi


echo "Free space: ${free_space}"

プラグイン

ビルドの説明を設定する

ビルド後のアクション

  • 正規表現:Free space: (.*)
  • 説明:Free space: \1

  • 失敗したビルドの正規表現:Warning! (.*)

  • 失敗したビルドの説明:\1
于 2019-10-06T15:57:36.840 に答える