代理安装指南

Pagerduty代理是您在监视系统上安装的助手程序,以将监视工具与PagerDuty集成。

该代理还包括命令行工具,以接受监视系统中的事件以及处理这些事件向Pagerduty发送的守护程序。守护程序的过程会处理对Pagerduty的缓冲,重试和节流活动。支持的事件是在Pagerduty事件API文档

系统要求

Pagerduty代理当前可用DebRPM包装格式并在Ubuntu 12.04、14.04和16.04以及CENTOS 6上支持。请升级到最新的默认版本Python,然后进行安装。

该代理不会在CentOS 5或更低的情况下运行,因为它需要比CentOS 5包含的版本更新版本的Python。请使用基于Perl的Nagios集成或年龄较大基于Python的Zabbix集成在较旧的CentOS系统上。

在Pagerduty中创建服务

如果您使用PagerDuty代理建立自定义集成,则代理支持将事件发送到“通用API”服务。如果您没有设置通用API服务,则可以创建如下:

  1. 服务菜单和选择服务目录,然后单击添加新服务
  2. 进入一个姓名为您的新服务,选择直接使用我们的API对于集成类型,请选择升级政策当服务从代理接收警报时使用,然后选择所需的通知紧迫对于事件(仅提供基本或更高计划)。点击添加服务完成后。
  3. 创建服务后,您将被带到服务页面。在万博pc版下载标签,您会看到集成密钥,当您通过代理的命令行工具将事件发送到Pagerduty时,您将需要。注意:并非所有集成类型和集成密钥都与事件API兼容。您必须选择直接使用我们的API(或者通用API从下拉列表中)集成类型确保在测试集成或使用PD-Send命令时与我们的API兼容。

代理来源,安装和更新

Pagerduty代理是开源的(以及其集成),可以在万博pc版下载github,但是大多数用户只想从我们的易于或者百胜存储库如下所述。

安装了代理后,请记住定期更新代理软件包,以确保您拥有最新的修复程序。您可以使用常规软件包更新更新代理软件包,或单独使用:如图所示:

Ubuntu

  1. 如果您还没有apt-transport-https已安装的软件包,您需要首先安装它:
    sudo apt-get安装apt-transport-https
  2. 要将PagerDuty存储库添加到您的系统:
    wget -o -https://packages.pagerduty.com/gpg-key-pagerduty |sudo apt -key add -sudo sh -c'echo“ deb https://packages.pagerduty.com/pdagent deb/> /etc/apt/sources.list.list.d/pdagent.list.list.list'
  3. 要安装(或更新)PagerDuty代理包:
    sudo apt-get更新万博pc版下载

Centos

笔记:Pagerduty剂与CentOS 5或更低的兼容,因此该装置将无法在Centos 5上成功

  1. 要安装,请将Pagerduty存储库添加到您的系统:
    sudo sh -c'cat> /etc/yum.repos.d/pdagent.repo << eof [pdagent] name = pdagent baseurl = https://packages.pagerduty.com/pdagent/pdagent/pdagent/rpm= https://packages.pagerduty.com/gpg-key-rpm-pagerduty eof'
  2. 安装Pagerduty代理包:
    sudo yum安装pdagent pdagent融合万博pc版下载
  3. 仅更新代理包:sudo yum更新pdagent pdagent融合万博pc版下载
  4. 复制pdagent.Service文件来自/var/lib/pdagent/scripts/pdagent.service/etc/systemd/system/pdagent.service
  5. 重新加载Systemctl守护程序以刷新Systemctl服务SystemCtl守护程序重电。

验证代理正在运行

安装代理后,请运行以下命令以启动代理:systemctl启动pdagent.service。您可以使用Systemctl(对于基于系统D的系统,例如Ubuntu 16.04)或服务(对于基于SYSV的Init系统,例如Ubuntu 14.04)命令启动,停止和检查代理的状态。

Systemd示例:

sudo systemctl状态pdagent

SYSV初始示例:

sudo服务状态

如果守护程序未运行并且不会启动,请检查/var/log/pdagent/pdagentd.log错误。

将活动发送给Pagerduty

要将事件发送到Pagerduty,您可以使用pd-send命令。此命令在本地磁盘上招募事件。代理守护程序将实际将事件实际发送到Pagerduty Integration API。如果是pdagentd服务停止,直到再次开始服务之前,将不会将事件发送到Pagerduty。

使用-H或者- 帮助选项将返回使用信息:

$ pd-send  -  -help用法:pd-send [-h] -k service_key -t {触发,确认,reclove,resolve} [-d description} [-i Invest_Key] [-f字段]排队触发器,确认或确认或将事件解析为Pagerduty。...

service_key上面是集成密钥这显示在Pagerduty网站的服务页面上。

这是一个示例命令,如果您的服务的集成密钥是65D9CD0E14C04DAE8EF86867277D138C

$ export pd_service_key = 65d9cd0e14c04dae8ef86867277d138c $ pd -send -k $ pd_service_key -t触发-d trigger -d“ server in fire” fire' -i server.i server.fire.fire evented evented evented evented evented evented。事件密钥:server.fire

这是一个示例命令,它触发具有多个字段(键/值对)的Pagerduty中的事件。注意-F在每对之前使用:

$ export pd_service_key = 65d9cd0e14c04dae8ef86867277d138c $ pd -send -k $ pd_service_key-t触发-d trigger -d“ server in fire'S in Fire” -i server.i server.fire.fire -f msg1 = test1 -ft test1 -ft test1 -ft test1 -ft test1 -ft test1 -ft test1 -ft test1 -f test1 -ft

如果复制此示例,请记住将正确的集成API密钥替换为PagerDuty服务!

笔记:运行PD-Send和其他PD-*集成脚本的用户最好具有一个符号,该符号允许使用用户创建的文件(即022)。如果umask更具限制性,则pd-*脚本在内部更改umask(仅适用于本身),因此可以使用正确的权限创建Enqueue-Event文件。

管理队列

要检查传出警报的队列,您可以使用pd-quesue命令。该命令可用于快速了解队列状态,并重试集成密钥。请注意,该命令需要作为根而运行,以便访问该命令Pdagent用户(即SudoPD标准状态)。

以下是命令的示例用途和输出:

pd -queue -h

$ pd-quesue -h用法:pd-queue [-h] {状态,重试} ...访问pagerduty代理的本地队列。可选参数:-h, -  help显示此帮助消息和退出子命令:{状态,重试}重试设置“死” pagerduty事件进行重试。状态打印出本地事件队列的状态。

PD标准状态

显示当前代理队列中的待处理,成功和误差事件,作为由服务密钥键起的表。

$ pd-quesue状态-H用法:pd-queue状态[-h] [-k service_key]打印本地事件队列的状态。可选参数:-h, -  help显示此帮助消息和退出-K service_key, -  service -key service_key print evish service api键$ pd quesue状态$ pd -quesue状态服务键悬在错误中=======================================================================================键1 0 0 0 key2 1 0 1 $ pd -quesue状态-K键2服务键悬在错误中=======================================================================================1

PD-Queue重试

将错误状态中的事件移至挂起状态EN质量,以获取指定的集成密钥。希望该用户首先纠正了任何引起错误的用户引起的问题,因此再次尝试事件不会导致错误。例如,如果事件太长,则用户已经编辑了该事件以减少其长度。如果事件再次导致错误,则将再次移至错误状态。

$ pd-queue retry -h用法:pd-queue retry [-h] [-k service_key] [-a]为重试设置“死” pagerduty事件。可选参数:-h, -  help显示此帮助消息和退出-K service_key, -  service -key service_key重试API键(不与-a一起使用-a)-a,-a, -  all -keys retry所有Service API键中的事件(不与-K一起使用)$ PD -QUEUE RETRY -K KEY2 1事件为重试设置。$ pd -queue重试-A 0事件(S)设置进行重试。

与监视工具集成

Pagerduty代理包括脚本,以帮助您与一些常见的监视工具集成。请参阅适当的指南以获取更多详细信息:

使用代理

如果您的环境需要为出站HTTP/HTTPS连接设置代理,则可以通过编辑指定代理配置sudo nano/lib/systemd/system/pdagent.service(在基于系统D的系统上)或/etc/init.d/pdagent(在基于SYSV Init的系统上)作为root用户。

基于系统的系统

sudo nano/lib/systemd/system/pdagent.service

只需添加两行,在此之后替换您的代理信息,以替换URLexecstartpre =/bin/chown -r pdagent:pdagent/var/run/pdagent线大约是第8行。完成后看起来应该像以下内容。

execstartpre =/bin/chown -r pdagent:pdagent/var/run/pdagent环境=“ http_proxy = http://proxy:3128/“ emoverition =” https_proxy = https_proxy = http:// proxy:// proxy:3128/

笔记:确保使用命令重新启动Pagerduty代理SystemCtl重新启动pdagent

基于SYSV Init的系统

sudo nano /etc/init.d/pdagent

只需添加两行,在此之后替换您的代理信息,以替换URLpid_file = $ pid_dir/pdagentd.pid线大约是第48行。完成后看起来应该像以下内容。

pid_file = $ pid_dir/pdagentd.pid export http_proxy = http://proxy:3128/export https_proxy = http:// proxy:3128/

笔记:确保使用命令重新启动Pagerduty代理服务pdagent重新启动

故障排除

如果您在将事件发送到Pagerduty时很难,请查看我们的Pagerduty代理故障排除指导。

立即开始使用Pagerduty

尝试免费使用Pagerduty 14天 - 无需信用卡。

Baidu