磁盘空间不足

    您的查询搜索没有结果。

    磁盘空间不足

    在 GoCD 运行一段时间后,您在浏览 GoCD 时可能会注意到以下警告框:

    如果你不采取任何措施,最终你会看到以下错误:

    GoCD 将停止调度新的管道,直到你腾出更多空间,可以通过压缩大文件、附加更大的硬盘或删除未使用的构件来实现。你也可以通过启用旧构件的自动清理功能让 GoCD 管理构件磁盘空间。

    自动删除构建产物

    介绍

    如果服务器上的可用磁盘空间较低,可以配置 GoCD 自动删除构件。当可用磁盘空间低于给定值时,GoCD 将清理构件,直到可用磁盘空间大于定义的值为止。

    配置

    指定构建产物清理的起始和结束限制

    您必须以管理员用户身份登录才能配置此步骤。

    1. 从 GoCD 中任意页面的页眉导航到“管理 -> 服务器配置”部分。
    2. 导航到构件管理子部分。
    3. 在第一个编辑框中指定 GoCD 应何时开始清理构建产物。
    4. 在第二个编辑框中指定 GoCD 应何时停止清理构建产物。

    Purge artifacts

    从不删除某个阶段的构建产物

    您必须以管理员用户身份登录才能配置此步骤。

    您可以禁止从特定阶段删除构建产物,以便在删除过程中排除这些构建产物。此选项可以在流水线的阶段编辑器中设置。此选项可用于重要的阶段,以确保保留该阶段的构建产物。

    1. 进入 GoCD 仪表板的管理部分。
    2. 导航到流水线部分并选择一个流水线进行编辑。
    3. 导航到该阶段的阶段设置。

    Disable artifact cleanup

    4. 勾选“永不清理构件”复选框

    另请参阅…

    压缩大型日志文件

    在许多情况下,最简单的方法是压缩一些你不太常需要的较大构件。例如,如果你有一个名为 ’test.log’ 的大型日志文件,并且你在 Unix 系统上运行 GoCD 服务器,以下脚本将 gzip 那些在过去 10 天内未被修改的文件。

    find /var/lib/go-server/logs/pipelines -name test.log -mtime +10 -type f -exec gzip -v '{}' \;
    

    现在,如果你将此添加到系统定时任务表(crontab),你的服务器可以自动压缩大型构件。

    将构件存储库移动到一个新的(更大的)驱动器

    如果压缩大型构件没有给你足够的自由空间,你可以做的另一件事是附加一个更大的磁盘驱动器来存储构件。将驱动器连接到系统后,我们可以轻松更改 GoCD 使用的构件存储库的位置。

    • 找到 GoCD 配置文件的位置
    • 导航到管理 > 配置 XML标签部分
    • 配置文件的位置在此处列出
    • 安装新的驱动器
    • 关闭 GoCD 服务器
    • 将所有文件从原始构件存储库位置复制到新驱动器
    • 更改配置文件中的构件存储库位置
    <server artifactsDir="/path/to/new/artifacts">
        ...
    </server>
    
    • 启动 GoCD 服务器并验证是否仍可访问旧构件

    删除未使用的构件

    另一种腾出更多空间的选项是删除未使用(或容易重新创建)的构件。你也可能有不再需要的旧流水线。

    构件存储库的目录结构使选择哪些构件安全删除变得更容易。格式为:

    [artifacts-dir]/pipelines/[pipelineName]/[pipelineLabel]/[stageName]/[stageCounter]/[jobName]