Teamcity代理处于断开连接状态(代理已注销(将升级))

Teamcity代理处于断开连接状态(代理已注销(将升级)),teamcity,Teamcity,Teamcity构建代理在服务器UI上处于断开连接状态(代理已注销(将升级))。 生成代理服务处于挂起状态。已尝试重新启动,但仍无法工作,因此手动升级了TC生成代理,版本为服务器的版本。重新启动生成代理服务。仍然断开连接。请提出建议。我遇到了这个问题并找到了解决方案,但我将对您的设置做一些假设 这修复了我在Windows上使用TeamCity构建代理并以用户帐户(而不是系统帐户)运行时遇到的一个问题 停止TeamCity服务并将帐户更改为系统帐户 启动TeamCity服务并等待大约10分钟以完成

Teamcity构建代理在服务器UI上处于断开连接状态(代理已注销(将升级))。
生成代理服务处于挂起状态。已尝试重新启动,但仍无法工作,因此手动升级了TC生成代理,版本为服务器的版本。重新启动生成代理服务。仍然断开连接。请提出建议。

我遇到了这个问题并找到了解决方案,但我将对您的设置做一些假设

这修复了我在Windows上使用TeamCity构建代理并以用户帐户(而不是系统帐户)运行时遇到的一个问题

  • 停止TeamCity服务并将帐户更改为系统帐户
  • 启动TeamCity服务并等待大约10分钟以完成升级。生成代理显示在“已连接”代理选项卡中,表示升级成功
  • 停止TeamCity服务并切换回用户帐户
  • 启动了TeamCity服务

  • 另一个选项是授予用户帐户启动/停止服务的权限,但我改为使用此路径。有关这些步骤,请参阅。

    旧问题,但有人可能会发现我的评论很有用。如果无法读取升级日志,请检查
    buildAgent/update/
    文件夹,如果此特定文件夹中的文件和文件大小正在更改,则表示代理正在更新,您只需等待。如果情况并非如此,但您仍然看到
    代理已取消注册(将升级)
    在Team city中的代理-->断开连接下,则代理挂起或存在问题。从服务中停止代理,然后运行
    agent.bat
    (Windows)和
    agent.sh
    (nix),给出
    Stop
    参数,然后使用
    start
    参数从同一脚本启动它。您还可以使用
    status
    参数查看代理的状态。如果这也不起作用,那么您必须读取所有日志。

    这可能是运行代理的帐户的权限。在BuildAgent\Logs\Upgrade.txt中,您可以找到

    升级失败:未能停止TeamCity生成代理服务。请检查TeamCity生成代理服务用户是否有足够的权限停止和启动服务。 java.io.IOException:未能停止TeamCity生成代理服务。请检查TeamCity生成代理服务用户是否有足够的权限停止和启动服务

    尽管该服务在计算机上运行正常(在我的例子中是windows),但它在其日志中生成错误,而不是事件查看器或无法启动,并在升级时与TeamCity断开连接


    我给予了更高的特权,它开始工作了+如果您不想限制您的服务帐户的权限,请按Lemtronix的方式

    对于一直重新启动生成代理服务并看到“代理已注销(将升级)”的人,请检查BuildAgent/logs下的日志以查看升级过程并等待。

    我也遇到了同样的问题。我触发了一个构建,代理自动更改为连接状态。

    这对我有效:

  • 在代理选项卡中,我通过单击“删除代理”删除了构建代理
  • 我重新启动了服务
  • 我刷新了代理选项卡,发现构建代理出现在未授权代理中
  • 我授权了代理,现在已经接通了

  • 看起来代理试图自行升级,但如果您的Windows服务设置为从非管理员帐户运行,则会失败。 选项包括:

    • @Lemtronix提议将服务账户临时更改为系统
    • 将用户添加到管理员组并重新启动服务

    我在Ubuntu Linux 19.10上也遇到了这个问题,它与systemd有关。我的TeamCity代理使用systemd脚本启动和停止,这显然是阻止他们升级的原因。当我停止teamcity systemd services并使用
    agent.sh start手动启动代理时,代理成功更新,并且从那时起工作正常。

    我通过
    Windows Server 2016
    上的
    teamcity 2019.2.4
    解决了此问题,方法是完成以下步骤:

  • 停止
    TeamCity构建代理服务
  • 停止
    TeamCity服务器
    服务
  • 启动
    TeamCity服务器
    服务
  • 启动
    TeamCity构建代理
    服务
  • 刷新浏览器窗口中的TeamCity UI选项卡,并等待片刻,以使状态以绿色显示
    Connected

  • 查看生成代理的升级日志,查看它是否提供了任何信息。检查日志后,/work和/system中有一些文件没有被删除。强制删除它们,并进行了升级。谢谢检查服务器上的生成代理属性文件,确保令牌值正确。我必须更改服务器和代理的帐户以使其连接。