-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathagent.html
More file actions
158 lines (127 loc) · 6.29 KB
/
agent.html
File metadata and controls
158 lines (127 loc) · 6.29 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
<!DOCTYPE html>
<!--[if IEMobile 7 ]><html class="no-js iem7"><![endif]-->
<!--[if lt IE 9]><html class="no-js lte-ie8"><![endif]-->
<!--[if (gt IE 8)|(gt IEMobile 7)|!(IEMobile)|!(IE)]><!--><html class="no-js" lang="en"><!--<![endif]-->
<head>
<meta charset="utf-8">
<title>Agent - Devophp Website</title>
<meta name="author" content="devophp">
<meta name="description" content="The Devophp Agent Component
The Agent is a crucial component, as it is installed on all the nodes you wish to control through Devophp.
The Agent rece">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="canonical" href="/agent.html">
<link href="/favicon.png" rel="icon">
<link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css">
<link rel="stylesheet" href="/stylesheets/devophp.css">
<link href='http://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,400,300,600,700' rel='stylesheet' type='text/css'>
<script type="text/javascript" src="//code.jquery.com/jquery-1.10.1.min.js"></script>
<script src="//netdna.bootstrapcdn.com/bootstrap/3.1.0/js/bootstrap.min.js"></script>
</head>
<body >
<header role="banner">
<div class="container">
<h1>Devop<b><i>hp</i></b></h1>
<h2>Tools for Devops written in PHP</h1>
</div>
</header>
<nav class="navbar navbar-default" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="/">Devophp</a>
</div>
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav">
<li><a href="/blog/archives">Blog</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Projects</a>
<ul class="dropdown-menu">
<li><a href="/agent">Agent</a></li>
<li><a href="/monitor">Monitor</a></li>
<li><a href="/nagios-library">Nagios library</a></li>
</ul>
</li>
</ul>
<ul class="nav navbar-nav pull-right">
<li class=""><a href="http://www.github.com/devophp/" target="_blank">Github</a></li>
</ul>
</div>
</div>
</nav>
<div id="content">
<div class="container">
<h1>The Devophp Agent Component</h1>
<p>The <strong>Agent</strong> is a crucial component, as it is installed on all the nodes you wish to control through Devophp.
The <strong>Agent</strong> receives commands to execute on the node, for example from the <a href="/monitor">Monitor</a>.</p>
<h2>Getting started</h2>
<h3>Prerequisites</h3>
<p>To run the agents on your nodes, you’ll need the following packages installed:</p>
<ul>
<li>php-cli</li>
<li>git</li>
<li>composer </li>
</ul>
<h3>Installation</h3>
<p>Installing the agent on your nodes is easy. simply follow these instructions:</p>
<pre><code>mkdir -p /usr/local/devophp/
cd /usr/local/devophp/
git clone git@github.com:devophp/agent.git
cd agent
composer install
</code></pre>
<h3>Configuration</h3>
<p>//TODO: Document the config file</p>
<h3>Starting the agent</h3>
<p>Start the agent using the following command:</p>
<pre><code>./bin/console agent:daemon
</code></pre>
<h2>Communication</h2>
<p>The Agent only communicates directly with a message queue. It subscribes to a topic to watch for commands.
Once a command is sent to the topic (by the <a href="/monitor">Monitor</a>), the Agent will execute the command.</p>
<p>The Agent can report back the output of the command back to the message queue.</p>
<h2>Plugins</h2>
<p>The <strong>Agent</strong> in itself does not provide any direct functionality.
All functionality is implemented by Agent plugins.</p>
<h3>Available plugins</h3>
<h4>Nagios plugin</h4>
<p>The Nagios Agent Plugin implements the <code>nagios:check</code> command.</p>
<p>By sending this command to the agent, you can execute nagios plugins (called ‘checks’).
Each Nagios check outputs a simple statuscode (OK, Warning or Critical) and optional details, which will be
reported back to the Monitor.</p>
</div>
</div>
<footer role="contentinfo">
<div class="container">
<div class="row">
<div class="col-md-4">
<h3>Further reading</h3>
<ul class="">
<li><a href="/">Frontpage</a></li>
<li><a href="/blog/archives">Blog</a></li>
<li><a href="http://www.github.com/devophp/" target="_blank">Github</a></li>
</ul>
</div>
<div class="col-md-4">
</div>
<div class="col-md-4">
<h3>Created by</h3>
<a href="http://www.linkorb.com/engineering">LinkORB Engineering</a>
</div>
</div>
</footer>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-5382953-31', 'devophp.com');
ga('send', 'pageview');
</script>
</body>
</html>