《掌控 构建Linux系统Nagios 监控服务器》PDF下载

  • 购买积分:17 如何计算积分?
  • 作  者:陶利军编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2013
  • ISBN:9787302311409
  • 页数:590 页
图书介绍:监控网络服务(SMTP, POP3, HTTP, NNTP, PING, 等等);监控主机资源(CPU处理器的负载、磁盘使用率,等等);简单的插件设计允许用户能够很容易的开发自己的服务检测;并行服务检测;能够使用“parent(父节点)”选项定义网络主机的层次结构,允许逐级检查,就是从父主机开始向下检查,允许检测和区分主机宕机和主机不可达;定义事件处理程序的能力,用于积极解决在服务或者是主机发生事件时能够主动解决问题;自动日志文件轮换。

第1部分 认识Nagios 2

第1章 Nagios的检测机制 2

1.1 两种检测方式 2

1.1.1 主动检测 2

1.1.2 被动检测 3

1.1.3 状态类型 4

1.2 外部命令和事件处理程序 7

1.2.1 外部命令 7

1.2.2 事件处理程序 8

1.3 两类检测对象 13

1.3.1 主机检测 14

1.3.2 服务检测 16

1.3.3 检测和处理“摆动”状态 18

1.4 六种监控策略 23

1.4.1 “可变”服务机制 23

1.4.2 “跟踪”状态机制 25

1.4.3 缓存检测 27

1.4.4 服务和主机“新鲜”检测机制 30

1.4.5 预测依赖性检测 32

1.4.6 被动主机状态转换 34

1.5 决定网络主机的状态和可达性 35

1.5.1 设定父/子关系 36

1.5.2 可达性逻辑的运作 38

1.5.3 UNREACHABLE状态和通知 39

1.6 优化Nagios 39

1.6.1 快速启动选项 39

1.6.2 Nagios调优发挥最大性能 46

1.6.3 使用内嵌Perl解释器 49

1.6.4 分布式监控 51

1.6.5 性能数据 51

1.6.6 使用use_large_installation_tweaks选项 54

1.7 Nagios与变量 54

1.7.1 理解宏变量及其如何工作 54

1.7.2 自定义对象变量 60

第2章 实现监控 62

2.1 监控公开提供的服务 62

2.1.1 用于监控服务的插件 63

2.1.2 监控HTTP 64

2.1.3 监控FTP 65

2.1.4 监控SSH 66

2.1.5 监控SMTP 66

2.1.6 监控POP3 67

2.1.7 监控IMAP服务 68

2.2 监控Windows机器 68

2.2.1 先决条件 70

2.2.2 安装Windows代理 73

2.2.3 配置Nagios 74

2.3 监控Linux/UNIX机器 76

2.4 监控网络打印机 77

2.4.1 先决条件 79

2.4.2 配置Nagios 81

2.5 监控路由器和交换机 82

2.5.1 先决条件 84

2.5.2 配置Nagios 86

第3章 相关设置 90

3.1 CGI设置 90

3.1.1 自定义CGI的页眉和页脚 90

3.1.2 增强CGI的安全和认证 91

3.1.3 在CGI中的认证和授权 95

3.2 Nagios的配置与校验 98

3.2.1 Nagios的配置文件 98

3.2.2 Nagios配置文件校验 98

3.3 设置联系人待命规则 100

3.3.1 方案1:假日和周末 100

3.3.2 方案2:隔日交替通知 103

3.3.3 方案3:隔周交替通知 103

3.3.4 方案4:假期通知 104

第4章 Nagios的高可用 107

4.1 方案1:冗余监控 108

4.1.1 冗余监控目标 108

4.1.2 网络拓扑图 108

4.1.3 初始化程序设置 108

4.1.4 初始化配置 108

4.1.5 事件处理程序命令的定义 109

4.1.6 事件处理脚本 109

4.1.7 时间间隔 114

4.1.8 特殊情况 114

4.2 方案2:故障转移监控 115

4.2.1 故障转移监控的目标 115

4.2.2 初始化程序设置 115

4.2.3 Master进程检测 115

4.2.4 额外的问题 116

第5章 分布式监控的实现 117

5.1 DNX 117

5.1.1 DNX的优点 118

5.1.2 下载和安装 118

5.1.3 DNX的配置文件 123

5.1.4 效果 123

5.1.5 关于实现HA 124

5.2 Nagios Fusion 124

5.2.1 Nagios Fusion的优点 124

5.2.2 下载和安装Nagios Fusion 125

5.3 MNTOS 127

5.3.1 MNTOS的优点 127

5.3.2 下载和安装MNTOS 128

第2部分 走进Nagios 134

第6章 安装前的目录结构 134

6.1 相关目录 137

6.1.1 contrib/目录 137

6.1.2 tools/目录 140

6.2 相关文件 141

第7章 安装Nagios 142

7.1 配置安装 142

7.2 分析Makefile文件 144

7.2.1 第一部分:变量设置 144

7.2.2 第二部分:make命令的选项 145

7.2.3 第三部分:make install命令的选项 149

7.2.4 第四部分:基于不同结构创建数据包 152

7.3 编译Nagios 154

7.3.1 执行make all 154

7.3.2 执行make X-install 155

7.4 启动/停止Nagios服务 158

7.5 安装Nagios Plugins 158

第8章 安装后的目录结构 163

8.1 bin/目录 163

8.1.1 bin/nagios 163

8.1.2 bin/nagiostats 170

8.2 etc/目录 176

8.2.1 etc/cgi.cfg 177

8.2.2 etc/nagios.cfg 184

8.2.3 etc/resource.cfg 218

8.2.4 etc/objects/commands.cfg 219

8.2.5 etc/objects/contacts.cfg 219

8.2.6 etc/objects/localhost.cfg 219

8.2.7 etc/objects/printer.cfg 219

8.2.8 etc/objects/switch.cfg 219

8.2.9 etc/objects/templates.cfg 219

8.2.10 etc/objects/timeperiods.cfg 222

8.2.11 etc/objects/windows.cfg 223

8.3 libexec/目录 223

8.3.1 安装Nagios插件之前 223

8.3.2 安装Nagios插件之后 224

8.4 sbin/目录 224

8.4.1 sbin/status.cgi 225

8.4.2 sbin/statusmap.cgi 225

8.4.3 sbin/statuswml.cgi 226

8.4.4 sbin/statuswrl.cgi 227

8.4.5 sbin/tac.cgi 227

8.4.6 sbin/outages.cgi 228

8.4.7 sbin/config.cgi 228

8.4.8 sbin/cmd.cgi 229

8.4.9 sbin/extinfo.cgi 230

8.4.10 sbin/showlog.cgi 231

8.4.11 sbin/history.cgi 231

8.4.12 sbin/notifications.cgi 232

8.4.13 sbin/trends.cgi 232

8.4.14 sbin/avail.cgi 234

8.4.15 sbin/histogram.cgi 235

8.4.16 sbin/summary.cgi 235

8.5 share/目录 236

8.5.1 share/contexthelp 238

8.5.2 share/docs 239

8.5.3 share/images 239

8.5.4 share/includes 239

8.5.5 share/locale 240

8.5.6 share/ssi 240

8.5.7 share/stylesheets 240

8.5.8 share/index.php 241

8.5.9 share/config.inc.php 244

8.5.10 share/main.php 244

8.5.11 share/robots.txt 244

8.5.12 share/side.php 245

8.6 var/目录 245

8.6.1 var/archives 245

8.6.2 var/nagios.lock 246

8.6.3 var/nagios.log 246

8.6.4 var/objects.cache 247

8.6.5 var/objects.precache 248

8.6.6 var/retention.dat 249

8.6.7 var/rw/nagios.cmd 251

8.6.8 var/spool/checkresults 251

8.6.9 var/status.dat 252

第3部分 使用Nagios 256

第9章 监控Linux系统下的host和service 256

9.1 认识NRPE 256

9.1.1 图解NRPE 256

9.1.2 使用方法 257

9.2 安装NRPE 258

9.2.1 客户端安装 259

9.2.2 服务器端安装 269

9.3 监控host和service 273

9.3.1 创建host和service定义 274

9.3.2 自定义监控 278

9.4 升级NRPE 279

9.4.1 监控主机升级 279

9.4.2 远程主机升级 280

第10章 监控Windows系统下的host和service 281

10.1 认识NSClient++ 281

10.1.1 图解NSClient++ 282

10.1.2 使用方法 282

10.2 安装NSClient++ 283

10.2.1 客户端安装 283

10.2.2 服务器端安装 289

10.3 监控host和service 289

10.3.1 创建host和service定义 289

10.3.2 自定义监控 292

第11章 监控公开提供的service 295

11.1 对公网提供的服务 295

11.2 对内网提供的服务 300

第12章 监控其他设备 303

12.1 路由器 303

12.2 交换机 303

12.3 网络打印机 304

第13章 升级Nagios 306

13.1 从早期3.x版本升级Nagios 306

13.2 从2.x版本升级安装Nagios 307

13.3 从RPM升级安装Nagios 308

第4部分 对象配置 310

第14章 配置文件概述 310

14.1 14种对象配置文件 313

14.1.1 host定义 313

14.1.2 hostgroup定义 323

14.1.3 service定义 325

14.1.4 servicegroup定义 333

14.1.5 contact定义 335

14.1.6 contactgroup定义 339

14.1.7 timeperiod定义 340

14.1.8 command定义 343

14.1.9 hostdependency定义 344

14.1.10 servicedependency定义 346

14.1.11 hostescalation定义 349

14.1.12 serviceescalation定义 352

14.1.13 extendedhost信息定义 356

14.1.14 extendedservice信息定义 358

14.2 host和service依赖性 359

14.2.1 服务依赖性 360

14.2.2 主机依赖性 364

第15章 对象继承与对象定义技巧 366

15.1 对象继承 366

15.1.1 继承介绍 366

15.1.2 定义格式 367

15.1.3 本地变量和继承变量的比较 368

15.1.4 继承链 369

15.1.5 使用不完整对象定义作为模板 370

15.1.6 自定义对象变量 371

15.1.7 取消继承的字符串值 372

15.1.8 添加继承的字符串值 372

15.1.9 隐含继承 373

15.1.10 扩充中的隐含/添加继承 373

15.1.11 “!”功能 374

15.1.12 多个继承源 375

15.1.13 多继承源的优先权 376

15.2 对象定义技巧 376

15.2.1 正则表达式匹配 377

15.2.2 service定义 377

15.2.3 service扩充定义 378

15.2.4 service依赖定义 380

15.2.5 host扩充定义 383

15.2.6 host依赖定义 384

15.2.7 host组 385

第5部分 图形化Nagios数据第16章 使用PNPNagios 388

16.1 PNPNagios的安装与设置 388

16.1.1 软件依赖性 388

16.1.2 下载和安装 388

16.1.3 安装后的结构 395

16.1.4 相关文件 396

16.2 PNPNagios的工作模式 405

16.2.1 Synchronous模式 405

16.2.2 Bulk模式 405

16.2.3 使用NPCD的Bulk模式 406

16.2.4 使用npcdmod的Bulk模式 406

16.2.5 Gearman模式 406

16.3 使用PNPNagios 407

16.3.1 Synchronous模式下的设置 407

16.3.2 Bulk模式下的设置 408

16.3.3 使用NPCD的Bulk模式下的设置 410

16.3.4 使用npcdmod的Bulk模式下的设置 411

16.3.5 Gearman模式下的设置 412

16.4 实例 414

16.4.1 使用Bulk模式 415

16.4.2 使用NPCD的Bulk模式 423

第17章 使用MRTG 425

17.1 nagiostats工具 425

17.1.1 使用信息 425

17.1.2 容易读懂的输出 425

17.1.3 分析数据与MRTG集成 427

17.2 使用MRTG绘制Nagios工作性能数据图 427

17.2.1 MRTG配置文件样本 427

17.2.2 图例分析 427

17.3 实例 436

17.3.1 安装MRTG 436

17.3.2 配置MRTG 440

17.3.3 运行MRTG 442

17.3.4 设置Apache访问 444

17.3.5 访问生成的页面 444

第6部分 实现Nagios通知第18章 概述通知 446

18.1 通知 446

18.1.1 通知策略 446

18.1.2 过滤器 446

18.1.3 发送通知的方式 450

18.2 通知扩充 450

第19章 通知方式 456

19.1 使用飞信 456

19.1.1 Linux命令行下使用飞信 456

19.1.2 Nagios与飞信结合 461

19.2 使用139信箱 462

19.2.1 注册139信箱 463

19.2.2 在Nagios中添加联系人 464

19.3 其他方式 464

第7部分 图解Nagios前端接口第20章 使用Nagios的Web接口 466

20.1 一般选项 466

20.2 当前状态选项 467

20.3 报告查看选项 467

20.4 系统配置选项 467

第21章 相关的Nagios前端程序 471

21.1 Web接口 471

21.2 Linux命令行接口 476

21.3 手机图形接口 478

第8部分 Nagios的扩展 482

第22章 Addon和Plugin 482

22.1 Nagios Addons 482

22.1.1 有效的Addon 482

22.1.2 获取Addon 483

22.2 Nagios Plugins 484

22.2.1 可用的插件 486

22.2.2 获取插件 486

22.2.3 使用Plugin的方法 486

22.2.4 Plugin API 487

22.3 Nagios Plugin API 487

22.3.1 返回代码 487

22.3.2 Plugin输出规格 487

22.3.3 Plugin输出举例 488

22.3.4 Plugin输出长度的约束 489

22.3.5 Perl Plugins 490

第23章 Nagios插件开发 491

23.1 对开发平台的要求 491

23.2 Nagios插件输出的约定 491

23.2.1 将文本仅打印在一行 491

23.2.2 详细输出 492

23.2.3 屏幕输出 492

23.2.4 插件返回代码 492

23.2.5 阈值和范围 493

23.2.6 性能数据 494

23.2.7 翻译 494

23.3 系统命令和辅助文件 495

23.4 Perl插件 495

23.5 运行时间超时 496

23.5.1 使用DEFAULT_SOCKET_TIMEOUT 496

23.5.2 为网络插件添加警告 496

23.6 插件选项 496

23.6.1 选项处理 497

23.6.2 门限值及门限范围的使用 498

23.7 测试 498

23.7.1 测试插件 498

23.7.2 测试C库函数 499

23.8 代码准则 501

23.8.1 C coding 501

23.8.2 Crediting sources 501

23.8.3 CVS注释 501

23.8.4 开发人员的翻译工作 501

23.9 提交新的插件和补丁 502

23.9.1 补丁的提交 502

23.9.2 捐献插件的提交 503

23.9.3 新插件的提交 503

第9部分 商业版Nagios XI服务器第24章 走进Nagios XI 506

24.1 安装Nagios XI 506

24.1.1 下载Nagios XI 507

24.1.2 安装过程 507

24.1.3 安装总结 511

24.2 安装后的目录结构 512

24.2.1 相关服务 521

24.2.2 商业价格 523

24.3 有关NRDP 524

24.3.1 NRDP要比NSCA更好使用 524

24.3.2 NRDP的工作原理 525

24.3.3 下载和安装NRDP 525

24.3.4 测试NRDP API 527

24.3.5 使用NRDP客户端 527

第25章 访问Web界面 529

25.1 Home选项 531

25.1.1 快速查看 532

25.1.2 详细查看 532

25.1.3 性能数据图 535

25.1.4 网络状态图 536

25.1.5 事件管理 537

25.1.6 监控Nagios引擎进程 538

5.2 Views选项 539

25.2.1 查看工具 540

25.2.2 定制查看 540

25.3 Dashboards选项 541

25.3.1 仪表板工具 541

25.3.2 我的仪表板 542

25.3.3 添加Dashlets 542

25.4 Repoit选项 543

25.4.1 我的报告 544

25.4.2 有效报告 544

25.4.3 数据可视化 548

25.4.4 遗留报告 548

25.5 Configure选项 549

25.5.1 运行配置监控向导 549

25.5.2 进入Nagios核心配置管理 557

25.5.3 账户设置 571

25.6 Help选项 573

25.7 Admin选项 574

25.7.1 查看系统状态 575

25.7.2 用户管理 577

25.7.3 系统配置 578

25.7.4 监控配置 584

25.7.5 检测输出传输 585

25.7.6 系统扩展 585