创建systemd服务来管理代理
本指南适用于直接下载Grafana Agent二进制文件或从源代码构建它的用户,即使在这些情况下也是完全可选的。大多数用户一开始都会下载代理并直接运行它,就像应用程序内部的Grafana Cloud演练中所指示的那样。
运行代理作为systemd服务将创建一个长期存在的进程,该进程可以在被杀死或主机重新启动时自动重新启动。
在本页中,我们将描述一种创建、管理和启用systemd服务的方法,使其在主机启动时自动启动并重新启动。有关更复杂的配置可能性,请参见systemd文档.此过程需要通过sudo或root对主机具有管理员权限来创建.service
文件和管理systemd。
首先,请注意在主机上安装代理二进制文件和代理配置的位置。yaml文件。注意:为了简单起见,我们建议将两者放在同一个目录中。
步骤1。创建服务文件
我们把下载的二进制文件放进去/usr/local/bin
,所以我们的服务定义将使用这个二进制路径。对于本例,我们将下载的二进制文件重命名为grafana-agent
.
在/etc/systemd/system
被称为grafana-agent.service
.
如果您愿意,可以将其命名为其他名称,但必须以.service
.
在文件中插入以下内容,并更改:
ExecStart
值来匹配二进制文件的位置和名称;如果你把agent-config.yaml
在其他位置的文件中,修改该行最后一部分的位置grafana-agent
值以匹配将运行代理的主机上的用户名;我们建议为代理创建一个专门的用户,并将代理作为新用户运行,我们有意将新用户命名为与它将运行的服务相匹配的用户
注意:要创建用户,请使用
Sudo useradd——no-create-home——shell /bin/false grafana-agent
,在那里——no-create-home
而且——壳牌/bin/false
禁止新用户直接登录服务器。
的内容grafana-agent.service
:
[单位]描述=Grafana Agent[服务]User= Grafana - Agent ExecStart=/usr/local/bin/ Grafana - Agent——config.file= Agent -config. config. User= Grafana - Agent。yaml Restart=always [Install] WantedBy=multi-user.target
重启=总
告诉systemd监视这个服务,并在它停止运行时重新启动它。
WantedBy = multi-user.target
告诉systemd在系统运行之后,当所有网络服务启动并且系统可供用户登录时(但在激活本地GUI之前,这在不运行GUI的服务器系统上无关紧要)在引导期间加载此服务。如果不包括这个选项,服务将不会在系统引导时启动。
保存文件并移动到步骤2。
步骤2。管理您的新服务
每当您添加或修改.service
文件中/etc/systemd/system
时,必须重新加载服务文件。为此,输入:
Sudo systemctl daemon-reload
启动服务。
Sudo systemctl启动grafana-agent.service
查询服务状态。
Sudo systemctl status grafana-agent.service
检查状态将让您知道是否所有配置和运行都正确,如果没有,则提供错误消息以帮助您排除故障。
停止服务。
Sudo systemctl stop grafana-agent.service
启用服务在每次重启时自动运行:
Sudo systemctl启用grafana-agent.service
停止服务在每次重启时自动运行:
Sudo systemctl禁用grafana-agent.service
相关的Grafana云资源
《普罗米修斯》和《格拉夫纳云》简介
普罗米修斯要接管监控世界了!在本次网络研讨会中,我们将首先快速介绍开源项目,它是监控现代云原生系统的事实上标准。
如何用Grafana Cloud建立和可视化大规模的合成监控
学习如何使用Kubernetes, Grafana Loki和Grafana Cloud的合成监控功能来设置您的基础设施的检查。
使用Grafana Cloud来提高制造工厂的效率
本节GrafanaCONline将讲述Grafana如何帮助一家拥有75年历史的制造公司提高产品质量和设备维护。