gpt4 book ai didi

c# - 通过 windows 服务器上的 windows-service 检查 ubuntu 服务器上的服务状态

转载 作者:行者123 更新时间:2023-12-04 18:51:24 25 4
gpt4 key购买 nike

我的 Windows 服务 (C#) 存在很大问题。我们在一些服务器上进行了系统更改(从 windows 2012R2 到 Ubuntu),对于所有这些服务器,我编写了一个监视工具作为在 windows 服务器上运行的 windows 服务。在这项服务中,我检查了服务器上运行良好的一些东西。我必须检查的一件事是某些特殊的 Windows 服务(例如 iis)是否在 state = running 中。 .

那么 - 是否有可能从我的监控服务中以编程方式检查 Ubuntu 服务?我可以在 Ubuntu shell 上设置命令吗?或者启动一个bat文件?

ServiceController sc = new ServiceController("servicename", "ubuntu-IP"))

我想使用 ServiceController 不起作用是因为 Windows != U​​buntu?!

这应该是一种“简单”的方法——所以如果它太华丽我就不做了。

任何信息,将不胜感激。

最佳答案

编辑:完全重写,我误解了这个问题。

Linux 不像 Windows 那样使用服务,首先没有像 Windows 域那样远程检查和管理服务的基础设施。

你有两个选择:

1-使用具有管理员权限的帐户通过 SSH 连接并发出“服务(服务名称)状态”,这将产生服务是否正在运行。要通过 SSH 连接,服务器必须配置 SSH 服务器并使用一些 C# 库进行 SSH 连接(例如:https://sshnet.codeplex.com/)

2-创建一个 C# 服务并在您的服务器上使用 Mono,这样该服务可以在本地执行命令,如“ps”或使用 Process.GetProcesses(),然后您可以以您最喜欢的方式将此进程与您的 Windows 进程通信,例如 TCP 或 UDP。

关于c# - 通过 windows 服务器上的 windows-service 检查 ubuntu 服务器上的服务状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34925213/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com