<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.soylentnews.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Xlefay</id>
	<title>SoylentNews - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.soylentnews.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Xlefay"/>
	<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/wiki/Special:Contributions/Xlefay"/>
	<updated>2026-05-16T02:40:46Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.41.4</generator>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=SoylentSwag&amp;diff=8087</id>
		<title>SoylentSwag</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=SoylentSwag&amp;diff=8087"/>
		<updated>2014-07-30T21:01:12Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: Created page with &amp;quot;This is a placeholder.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a placeholder.&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=IRC&amp;diff=7972</id>
		<title>IRC</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=IRC&amp;diff=7972"/>
		<updated>2014-07-21T23:49:26Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: /* Private establishments (unofficial) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Contact '''chat@soylentnews.org''' if you are interested in working on one of these projects. Also, the [[SoylentNews:IRC|IRC Page]] has information about getting started with IRC, and the [[IRCVision|IRC vision]] is worth checking out.&lt;br /&gt;
&lt;br /&gt;
==Who we are==&lt;br /&gt;
&amp;lt;section begin=whoarewe /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|'''[[IRC|IRC Team Main Page]]'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 20%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''nick'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''position'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''timezone'''&lt;br /&gt;
|-&lt;br /&gt;
| [[User:xlefay|xlefay]]&lt;br /&gt;
| Co-team leader&lt;br /&gt;
| UTC+2 (CEST)&lt;br /&gt;
|- &lt;br /&gt;
|-&lt;br /&gt;
| [[User:paulej72|paulej72]]&lt;br /&gt;
| Co-team leader&lt;br /&gt;
| UTC-4 (EDT)&lt;br /&gt;
|- &lt;br /&gt;
| [[User:kobach|Kobach]]&lt;br /&gt;
| Co-leader | Chief Bacon Officer&lt;br /&gt;
| UTC-5 (us/central)&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Landon|Landon]]&lt;br /&gt;
| Member&lt;br /&gt;
| ?&lt;br /&gt;
|-&lt;br /&gt;
| [[User:FunPika|FunPika]]&lt;br /&gt;
| Member&lt;br /&gt;
| UTC-4 (EDT)&lt;br /&gt;
|-&lt;br /&gt;
| [[User:juggs|juggs]]&lt;br /&gt;
| Member&lt;br /&gt;
| UTC+1 (BST)&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section end=whoarewe /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Current Projects==&lt;br /&gt;
&lt;br /&gt;
===Chat bot (Python)===&lt;br /&gt;
* ELIZA module that uses Futurama personalities (to match the bot's current nick)&lt;br /&gt;
* Modify bot logging to match existing formats (mIRC preferably)&lt;br /&gt;
&lt;br /&gt;
===Services (C)===&lt;br /&gt;
* Single sign on against the website (coordinate with NCommander)&lt;br /&gt;
* Get the web IRC to use the website's sessions to sign in&lt;br /&gt;
&lt;br /&gt;
===Documentation===&lt;br /&gt;
* Quick-Start/How-to guide for staff members (.op .topic nickserv commands etc.)&lt;br /&gt;
&lt;br /&gt;
===Misc bots===&lt;br /&gt;
* Anyone wanting to join existing bot development projects should contact the developer(s) noted below.&lt;br /&gt;
&lt;br /&gt;
===IRC Games===&lt;br /&gt;
* NerdRPG&lt;br /&gt;
* [[IRCiv]] is currently under development and is intended to be a civilization-like building game played on IRC. See crutchy for further details/involvement. Current source code is available @ https://github.com/crutchy-/test/tree/master/scripts&lt;br /&gt;
&lt;br /&gt;
==Dependencies==&lt;br /&gt;
*servers&lt;br /&gt;
*bots&lt;br /&gt;
&lt;br /&gt;
[[Category:Teams]]&lt;br /&gt;
[[Category:IRC]]&lt;br /&gt;
&lt;br /&gt;
==Channels==&lt;br /&gt;
&lt;br /&gt;
===Official channels===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Channel !! Description !! Maintained by&lt;br /&gt;
|-&lt;br /&gt;
| #soylent || General chat/lobby, mostly family-friendly || All SoylentNews Staff&lt;br /&gt;
|-&lt;br /&gt;
| #staff || Public Staff channel - Everyone's welcome to join, but messages from non-voiced are only send to the ops in the channel || All SoylentNews Staff.&lt;br /&gt;
|-&lt;br /&gt;
| #editorial || The home of the SoylentNews editors, here you can volunteer for duty, report typo's &amp;amp; ask for submission tips and the like. || Editors &amp;amp; IRC Staff.&lt;br /&gt;
|-&lt;br /&gt;
| #dev || The home of and for developers that help develop our fork of SlashCode. || Development team &amp;amp; IRC staff.&lt;br /&gt;
|-&lt;br /&gt;
| #help || This is the IRC help channel, where IRC operators and others provide help and answer any questions related to IRC you may have. || IRC Staff.&lt;br /&gt;
|-&lt;br /&gt;
| #sysops || This is the Sysops homefront, where most of the magic happens. We maintain the servers and services. || Sysops &amp;amp; IRC Staff.&lt;br /&gt;
|-&lt;br /&gt;
| #wiki || This is the Wiki's channel, nothing much happens here except for a bot reporting our every edit on the wiki! || IRC Staff.&lt;br /&gt;
|-&lt;br /&gt;
| #irpg || This is our &amp;quot;nerdRPG&amp;quot;'s (our fork of idleRPG) channel, feel free to idle along! || IRC Staff.&lt;br /&gt;
|-&lt;br /&gt;
| #test || Main testing chambers, feel free to test anything in here (just be friendly &amp;amp; be considerative) || IRC Staff.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Private establishments (unofficial)===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Channel !! Description !! Maintained by&lt;br /&gt;
|-&lt;br /&gt;
| ## || This is a channel which isn't family safe. It's mostly about bacon and stuff' || team-bacon ([[User:kobach|kobach]], [[User:xlefay|xlefay]])&lt;br /&gt;
|-&lt;br /&gt;
| # || exec's home base and proving ground. testing of other bots and general chit chat welcome :-) || [[User:crutchy|crutchy]]&lt;br /&gt;
|-&lt;br /&gt;
| #derp || Aqua's (bot) home ground || [[User:Subsentient|Subsentient]]&lt;br /&gt;
|-&lt;br /&gt;
| #sublight || Sublight's bot home ground || [[User:xlefay|xlefay]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Bots==&lt;br /&gt;
&lt;br /&gt;
There are a few bots lurking in the Soylent IRC channels besides the services mentioned above.&lt;br /&gt;
&lt;br /&gt;
Anyone wishing to develop bots should use #test for testing.&lt;br /&gt;
&lt;br /&gt;
Please avoid flooding in private establishments and official channels (except #test).&lt;br /&gt;
&lt;br /&gt;
===Bender===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SedBot===&lt;br /&gt;
Developer(s): [[User:FoobarBazbot|FoobarBazbot]]&lt;br /&gt;
&lt;br /&gt;
https://github.com/FoobarBazbot/sedbot&lt;br /&gt;
&lt;br /&gt;
lurks in #soylent, ##, etc&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
s/old/new/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
nick: s/old/new/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
weatherbot location&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;crutchy&amp;gt; weatherbot melbourne australia&lt;br /&gt;
 &amp;lt;SedBot&amp;gt; weather for Melbourne Regional Office, VIC, Australia: 1023.50 mbar, 60.4F/15.8C/288.9K&lt;br /&gt;
 &amp;lt;SedBot&amp;gt; wind mph / 0kph / 0m/s, 0 degrees&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
using sedbot:&lt;br /&gt;
&lt;br /&gt;
TERMINAL 1:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install ii gawk&lt;br /&gt;
mkdir ~/irc&lt;br /&gt;
wget https://raw.githubusercontent.com/FoobarBazbot/sedbot/master/sedbot.awk -O ~/irc/sedbot.awk&lt;br /&gt;
# on line 11 of the awk file, replace &amp;quot;/sedbotirc/irc.sylnt.us/#soylent/in&amp;quot; with &amp;quot;~/irc/irc.sylnt.us/#soylent/in&amp;quot;&lt;br /&gt;
ii -s irc.sylnt.us -p 6667 -n SedBot2 -f SedBot2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TERMINAL 2:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
echo &amp;quot;/j #soylent&amp;quot; &amp;gt; ~/irc/irc.sylnt.us/in&lt;br /&gt;
tail -Fn1 ~/irc/irc.sylnt.us/#soylent/out | ~/irc/sedbot.awk outfile=~/irc/irc.sylnt.us/#soylent/in&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Loggie===&lt;br /&gt;
Developer(s): [[User:xlefay|xlefay]]&lt;br /&gt;
&lt;br /&gt;
===SoylentMUD===&lt;br /&gt;
Developer(s): [[User:mattie_p|mattie_p]]&lt;br /&gt;
&lt;br /&gt;
===aqu4===&lt;br /&gt;
Developer(s): [[User:Subsentient|Subsentient]]&lt;br /&gt;
&lt;br /&gt;
lurks in ##, #derp, etc&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$sr text # echoes &amp;quot;txet&amp;quot; (reverse of text)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$burrito&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
...etc&lt;br /&gt;
&lt;br /&gt;
===sublight===&lt;br /&gt;
&lt;br /&gt;
Developer(s): [[User:xlefay|xlefay]]&lt;br /&gt;
&lt;br /&gt;
===[[User:Exec|exec]]===&lt;br /&gt;
&lt;br /&gt;
IRC SCRIPT EXECUTIVE&lt;br /&gt;
&lt;br /&gt;
Developer(s): [[User:Crutchy|crutchy]]&lt;br /&gt;
&lt;br /&gt;
See the [[IRC:exec|exec page]] for details.&lt;br /&gt;
&lt;br /&gt;
Example usage:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
~sed on|off&lt;br /&gt;
~weather location&lt;br /&gt;
~weather-add code location&lt;br /&gt;
~time location&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== [[WikiRC]] ===&lt;br /&gt;
Developer(s): [[User:FunPika|FunPika]]&lt;br /&gt;
&lt;br /&gt;
Outputs the wiki's recent changes into #wiki.&lt;br /&gt;
&lt;br /&gt;
===Regurgitator===&lt;br /&gt;
Developer(s): [[User:juggs|juggs]]&lt;br /&gt;
&lt;br /&gt;
Hangs out in #rss-bot outputting feed links.&lt;br /&gt;
&lt;br /&gt;
===ciri===&lt;br /&gt;
Developer(s): [[User:arti|arti]]&lt;br /&gt;
&lt;br /&gt;
!decide yes no maybe sometimes &amp;quot;could be&amp;quot; &amp;quot;won't be&amp;quot; &amp;quot;light it on fire&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===monopoly===&lt;br /&gt;
Developer(s): [[User:chromas|chromas]]&lt;br /&gt;
&lt;br /&gt;
Outputs the title of a URL, amongst other things.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===NerdRPG===&lt;br /&gt;
Outputs game data in the #irpg channel.&lt;br /&gt;
&lt;br /&gt;
==Sysops==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=sysops /&amp;gt;&lt;br /&gt;
IRC services are now server up on carbon.li694.22. The core IRC services as well as several bot live on this server. They are run from the sylnt user account out of /home/sylnt/.  &lt;br /&gt;
&lt;br /&gt;
Start and stop scripts are in the ~/bin directory. start.all and stop.all will start and stop each of the services below with the appropriate script in a proper order. start.all is also set in sylnt's crontab to start at reboot. Individual services can be stopped or started with the appropriate script stop.service or start.service where .service is replaced with the suffix listed in the table below.&lt;br /&gt;
&lt;br /&gt;
The services each have a cron.service script, also in ~/bin, that monitors that the service is running and restarts it if it does not find it.  This is done by monitoring the pid, set at startup, and seeing if the job is still running.  cron.all is run at 5 minute intervals from sylnt's crontab as well.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;6&amp;quot;|'''IRC Services'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Service'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Description'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Path'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''DNS'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Ports'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''start/stop/cron suffex'''&lt;br /&gt;
|-&lt;br /&gt;
| Charybids 3.4.2&lt;br /&gt;
| ircd services&lt;br /&gt;
| ~/charybdis&lt;br /&gt;
| irc.soylentnews.org&lt;br /&gt;
| 6667, 6697(ssl)&lt;br /&gt;
| .charybdis&lt;br /&gt;
|-&lt;br /&gt;
| Atheme Services 7.0.7&lt;br /&gt;
| a modular IRC Services package &lt;br /&gt;
| ~/atheme-services&lt;br /&gt;
| internal only&lt;br /&gt;
|&lt;br /&gt;
| .atheme&lt;br /&gt;
|- &lt;br /&gt;
| Atheme Iris &lt;br /&gt;
| web frontend for IRC&lt;br /&gt;
| ~/atheme-iris&lt;br /&gt;
| chat.soylentnews.org&lt;br /&gt;
| 80&lt;br /&gt;
| .iris&lt;br /&gt;
|-&lt;br /&gt;
| Bender&lt;br /&gt;
| jsonbot bot&lt;br /&gt;
| ~/.jsb&lt;br /&gt;
| internal only&lt;br /&gt;
|&lt;br /&gt;
| .bender&lt;br /&gt;
|-&lt;br /&gt;
| Loggie&lt;br /&gt;
| logging bot&lt;br /&gt;
| ~/logbot&lt;br /&gt;
| logs.sylnt.us&lt;br /&gt;
| 80&lt;br /&gt;
| .loggie&lt;br /&gt;
|-&lt;br /&gt;
| NerdRPG&lt;br /&gt;
| local Idle RPG&lt;br /&gt;
| ~/nerdrpg&lt;br /&gt;
| internal only&lt;br /&gt;
|&lt;br /&gt;
| .nerdrpg&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
All of /home/sylnt/ started out as a copy from the original server xlefay setup on his systems.  No new files were added to this, only certain services need to be recompiled. Source files for most of the services are found in ~/source, and copies of the original services that ran on original server are in ~/OLD.  Test compiles of some of the services were moved to ~/test before bring up the current versions.&lt;br /&gt;
&lt;br /&gt;
Charybdis was compiled with ./configure --prefix=/home/sylnt/charybdis/ --enable-epoll --enable-openssl --enable-ipv6 --disable-assert. Atheme was compiled with  $ ./configure --prefix=/home/sylnt/atheme-services.  Iris was configure by running ./compile from the ~/atheme-iris directory.  The bots did not require a recompile from what was transferred from original server.&lt;br /&gt;
&lt;br /&gt;
Config files were adjusted to set the proper ip addresses for the new server (both IPv4 and IPv6) and to adjust the staff who had admin access.&lt;br /&gt;
&lt;br /&gt;
In addition, nginx is also installed and used to serve IRC logs and such; there's also a reverse proxy vhost present for atheme-iris. Nginx's file structure is the default as supplied by Debian &amp;amp; Ubuntu, meaning, that configuration files are located in '''/etc/nginx/ &amp;amp; vhosts in /etc/nginx/sites-{enabled,available}'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section end=sysops /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=IRC&amp;diff=7971</id>
		<title>IRC</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=IRC&amp;diff=7971"/>
		<updated>2014-07-21T23:48:13Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: /* Official channels */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Contact '''chat@soylentnews.org''' if you are interested in working on one of these projects. Also, the [[SoylentNews:IRC|IRC Page]] has information about getting started with IRC, and the [[IRCVision|IRC vision]] is worth checking out.&lt;br /&gt;
&lt;br /&gt;
==Who we are==&lt;br /&gt;
&amp;lt;section begin=whoarewe /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|'''[[IRC|IRC Team Main Page]]'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 20%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''nick'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''position'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''timezone'''&lt;br /&gt;
|-&lt;br /&gt;
| [[User:xlefay|xlefay]]&lt;br /&gt;
| Co-team leader&lt;br /&gt;
| UTC+2 (CEST)&lt;br /&gt;
|- &lt;br /&gt;
|-&lt;br /&gt;
| [[User:paulej72|paulej72]]&lt;br /&gt;
| Co-team leader&lt;br /&gt;
| UTC-4 (EDT)&lt;br /&gt;
|- &lt;br /&gt;
| [[User:kobach|Kobach]]&lt;br /&gt;
| Co-leader | Chief Bacon Officer&lt;br /&gt;
| UTC-5 (us/central)&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Landon|Landon]]&lt;br /&gt;
| Member&lt;br /&gt;
| ?&lt;br /&gt;
|-&lt;br /&gt;
| [[User:FunPika|FunPika]]&lt;br /&gt;
| Member&lt;br /&gt;
| UTC-4 (EDT)&lt;br /&gt;
|-&lt;br /&gt;
| [[User:juggs|juggs]]&lt;br /&gt;
| Member&lt;br /&gt;
| UTC+1 (BST)&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section end=whoarewe /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Current Projects==&lt;br /&gt;
&lt;br /&gt;
===Chat bot (Python)===&lt;br /&gt;
* ELIZA module that uses Futurama personalities (to match the bot's current nick)&lt;br /&gt;
* Modify bot logging to match existing formats (mIRC preferably)&lt;br /&gt;
&lt;br /&gt;
===Services (C)===&lt;br /&gt;
* Single sign on against the website (coordinate with NCommander)&lt;br /&gt;
* Get the web IRC to use the website's sessions to sign in&lt;br /&gt;
&lt;br /&gt;
===Documentation===&lt;br /&gt;
* Quick-Start/How-to guide for staff members (.op .topic nickserv commands etc.)&lt;br /&gt;
&lt;br /&gt;
===Misc bots===&lt;br /&gt;
* Anyone wanting to join existing bot development projects should contact the developer(s) noted below.&lt;br /&gt;
&lt;br /&gt;
===IRC Games===&lt;br /&gt;
* NerdRPG&lt;br /&gt;
* [[IRCiv]] is currently under development and is intended to be a civilization-like building game played on IRC. See crutchy for further details/involvement. Current source code is available @ https://github.com/crutchy-/test/tree/master/scripts&lt;br /&gt;
&lt;br /&gt;
==Dependencies==&lt;br /&gt;
*servers&lt;br /&gt;
*bots&lt;br /&gt;
&lt;br /&gt;
[[Category:Teams]]&lt;br /&gt;
[[Category:IRC]]&lt;br /&gt;
&lt;br /&gt;
==Channels==&lt;br /&gt;
&lt;br /&gt;
===Official channels===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Channel !! Description !! Maintained by&lt;br /&gt;
|-&lt;br /&gt;
| #soylent || General chat/lobby, mostly family-friendly || All SoylentNews Staff&lt;br /&gt;
|-&lt;br /&gt;
| #staff || Public Staff channel - Everyone's welcome to join, but messages from non-voiced are only send to the ops in the channel || All SoylentNews Staff.&lt;br /&gt;
|-&lt;br /&gt;
| #editorial || The home of the SoylentNews editors, here you can volunteer for duty, report typo's &amp;amp; ask for submission tips and the like. || Editors &amp;amp; IRC Staff.&lt;br /&gt;
|-&lt;br /&gt;
| #dev || The home of and for developers that help develop our fork of SlashCode. || Development team &amp;amp; IRC staff.&lt;br /&gt;
|-&lt;br /&gt;
| #help || This is the IRC help channel, where IRC operators and others provide help and answer any questions related to IRC you may have. || IRC Staff.&lt;br /&gt;
|-&lt;br /&gt;
| #sysops || This is the Sysops homefront, where most of the magic happens. We maintain the servers and services. || Sysops &amp;amp; IRC Staff.&lt;br /&gt;
|-&lt;br /&gt;
| #wiki || This is the Wiki's channel, nothing much happens here except for a bot reporting our every edit on the wiki! || IRC Staff.&lt;br /&gt;
|-&lt;br /&gt;
| #irpg || This is our &amp;quot;nerdRPG&amp;quot;'s (our fork of idleRPG) channel, feel free to idle along! || IRC Staff.&lt;br /&gt;
|-&lt;br /&gt;
| #test || Main testing chambers, feel free to test anything in here (just be friendly &amp;amp; be considerative) || IRC Staff.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Private establishments (unofficial)===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Channel !! Description !! Maintained by&lt;br /&gt;
|-&lt;br /&gt;
| ## || This is a channel which isn't family safe. It's mostly about bacon and stuff' || team-bacon ([User:kobach|kobach]], [[User:xlefay|xlefay]])&lt;br /&gt;
|-&lt;br /&gt;
| # || exec's home base and proving ground. testing of other bots and general chit chat welcome :-) || [[User:crutchy|crutchy]]&lt;br /&gt;
|-&lt;br /&gt;
| #derp || Aqua's (bot) home ground || [[User:Subsentient|Subsentient]]&lt;br /&gt;
|-&lt;br /&gt;
| #sublight || Sublight's bot home ground || [[User:xlefay|xlefay]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Bots==&lt;br /&gt;
&lt;br /&gt;
There are a few bots lurking in the Soylent IRC channels besides the services mentioned above.&lt;br /&gt;
&lt;br /&gt;
Anyone wishing to develop bots should use #test for testing.&lt;br /&gt;
&lt;br /&gt;
Please avoid flooding in private establishments and official channels (except #test).&lt;br /&gt;
&lt;br /&gt;
===Bender===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SedBot===&lt;br /&gt;
Developer(s): [[User:FoobarBazbot|FoobarBazbot]]&lt;br /&gt;
&lt;br /&gt;
https://github.com/FoobarBazbot/sedbot&lt;br /&gt;
&lt;br /&gt;
lurks in #soylent, ##, etc&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
s/old/new/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
nick: s/old/new/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
weatherbot location&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;crutchy&amp;gt; weatherbot melbourne australia&lt;br /&gt;
 &amp;lt;SedBot&amp;gt; weather for Melbourne Regional Office, VIC, Australia: 1023.50 mbar, 60.4F/15.8C/288.9K&lt;br /&gt;
 &amp;lt;SedBot&amp;gt; wind mph / 0kph / 0m/s, 0 degrees&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
using sedbot:&lt;br /&gt;
&lt;br /&gt;
TERMINAL 1:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install ii gawk&lt;br /&gt;
mkdir ~/irc&lt;br /&gt;
wget https://raw.githubusercontent.com/FoobarBazbot/sedbot/master/sedbot.awk -O ~/irc/sedbot.awk&lt;br /&gt;
# on line 11 of the awk file, replace &amp;quot;/sedbotirc/irc.sylnt.us/#soylent/in&amp;quot; with &amp;quot;~/irc/irc.sylnt.us/#soylent/in&amp;quot;&lt;br /&gt;
ii -s irc.sylnt.us -p 6667 -n SedBot2 -f SedBot2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TERMINAL 2:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
echo &amp;quot;/j #soylent&amp;quot; &amp;gt; ~/irc/irc.sylnt.us/in&lt;br /&gt;
tail -Fn1 ~/irc/irc.sylnt.us/#soylent/out | ~/irc/sedbot.awk outfile=~/irc/irc.sylnt.us/#soylent/in&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Loggie===&lt;br /&gt;
Developer(s): [[User:xlefay|xlefay]]&lt;br /&gt;
&lt;br /&gt;
===SoylentMUD===&lt;br /&gt;
Developer(s): [[User:mattie_p|mattie_p]]&lt;br /&gt;
&lt;br /&gt;
===aqu4===&lt;br /&gt;
Developer(s): [[User:Subsentient|Subsentient]]&lt;br /&gt;
&lt;br /&gt;
lurks in ##, #derp, etc&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$sr text # echoes &amp;quot;txet&amp;quot; (reverse of text)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$burrito&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
...etc&lt;br /&gt;
&lt;br /&gt;
===sublight===&lt;br /&gt;
&lt;br /&gt;
Developer(s): [[User:xlefay|xlefay]]&lt;br /&gt;
&lt;br /&gt;
===[[User:Exec|exec]]===&lt;br /&gt;
&lt;br /&gt;
IRC SCRIPT EXECUTIVE&lt;br /&gt;
&lt;br /&gt;
Developer(s): [[User:Crutchy|crutchy]]&lt;br /&gt;
&lt;br /&gt;
See the [[IRC:exec|exec page]] for details.&lt;br /&gt;
&lt;br /&gt;
Example usage:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
~sed on|off&lt;br /&gt;
~weather location&lt;br /&gt;
~weather-add code location&lt;br /&gt;
~time location&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== [[WikiRC]] ===&lt;br /&gt;
Developer(s): [[User:FunPika|FunPika]]&lt;br /&gt;
&lt;br /&gt;
Outputs the wiki's recent changes into #wiki.&lt;br /&gt;
&lt;br /&gt;
===Regurgitator===&lt;br /&gt;
Developer(s): [[User:juggs|juggs]]&lt;br /&gt;
&lt;br /&gt;
Hangs out in #rss-bot outputting feed links.&lt;br /&gt;
&lt;br /&gt;
===ciri===&lt;br /&gt;
Developer(s): [[User:arti|arti]]&lt;br /&gt;
&lt;br /&gt;
!decide yes no maybe sometimes &amp;quot;could be&amp;quot; &amp;quot;won't be&amp;quot; &amp;quot;light it on fire&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===monopoly===&lt;br /&gt;
Developer(s): [[User:chromas|chromas]]&lt;br /&gt;
&lt;br /&gt;
Outputs the title of a URL, amongst other things.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===NerdRPG===&lt;br /&gt;
Outputs game data in the #irpg channel.&lt;br /&gt;
&lt;br /&gt;
==Sysops==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=sysops /&amp;gt;&lt;br /&gt;
IRC services are now server up on carbon.li694.22. The core IRC services as well as several bot live on this server. They are run from the sylnt user account out of /home/sylnt/.  &lt;br /&gt;
&lt;br /&gt;
Start and stop scripts are in the ~/bin directory. start.all and stop.all will start and stop each of the services below with the appropriate script in a proper order. start.all is also set in sylnt's crontab to start at reboot. Individual services can be stopped or started with the appropriate script stop.service or start.service where .service is replaced with the suffix listed in the table below.&lt;br /&gt;
&lt;br /&gt;
The services each have a cron.service script, also in ~/bin, that monitors that the service is running and restarts it if it does not find it.  This is done by monitoring the pid, set at startup, and seeing if the job is still running.  cron.all is run at 5 minute intervals from sylnt's crontab as well.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;6&amp;quot;|'''IRC Services'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Service'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Description'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Path'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''DNS'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Ports'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''start/stop/cron suffex'''&lt;br /&gt;
|-&lt;br /&gt;
| Charybids 3.4.2&lt;br /&gt;
| ircd services&lt;br /&gt;
| ~/charybdis&lt;br /&gt;
| irc.soylentnews.org&lt;br /&gt;
| 6667, 6697(ssl)&lt;br /&gt;
| .charybdis&lt;br /&gt;
|-&lt;br /&gt;
| Atheme Services 7.0.7&lt;br /&gt;
| a modular IRC Services package &lt;br /&gt;
| ~/atheme-services&lt;br /&gt;
| internal only&lt;br /&gt;
|&lt;br /&gt;
| .atheme&lt;br /&gt;
|- &lt;br /&gt;
| Atheme Iris &lt;br /&gt;
| web frontend for IRC&lt;br /&gt;
| ~/atheme-iris&lt;br /&gt;
| chat.soylentnews.org&lt;br /&gt;
| 80&lt;br /&gt;
| .iris&lt;br /&gt;
|-&lt;br /&gt;
| Bender&lt;br /&gt;
| jsonbot bot&lt;br /&gt;
| ~/.jsb&lt;br /&gt;
| internal only&lt;br /&gt;
|&lt;br /&gt;
| .bender&lt;br /&gt;
|-&lt;br /&gt;
| Loggie&lt;br /&gt;
| logging bot&lt;br /&gt;
| ~/logbot&lt;br /&gt;
| logs.sylnt.us&lt;br /&gt;
| 80&lt;br /&gt;
| .loggie&lt;br /&gt;
|-&lt;br /&gt;
| NerdRPG&lt;br /&gt;
| local Idle RPG&lt;br /&gt;
| ~/nerdrpg&lt;br /&gt;
| internal only&lt;br /&gt;
|&lt;br /&gt;
| .nerdrpg&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
All of /home/sylnt/ started out as a copy from the original server xlefay setup on his systems.  No new files were added to this, only certain services need to be recompiled. Source files for most of the services are found in ~/source, and copies of the original services that ran on original server are in ~/OLD.  Test compiles of some of the services were moved to ~/test before bring up the current versions.&lt;br /&gt;
&lt;br /&gt;
Charybdis was compiled with ./configure --prefix=/home/sylnt/charybdis/ --enable-epoll --enable-openssl --enable-ipv6 --disable-assert. Atheme was compiled with  $ ./configure --prefix=/home/sylnt/atheme-services.  Iris was configure by running ./compile from the ~/atheme-iris directory.  The bots did not require a recompile from what was transferred from original server.&lt;br /&gt;
&lt;br /&gt;
Config files were adjusted to set the proper ip addresses for the new server (both IPv4 and IPv6) and to adjust the staff who had admin access.&lt;br /&gt;
&lt;br /&gt;
In addition, nginx is also installed and used to serve IRC logs and such; there's also a reverse proxy vhost present for atheme-iris. Nginx's file structure is the default as supplied by Debian &amp;amp; Ubuntu, meaning, that configuration files are located in '''/etc/nginx/ &amp;amp; vhosts in /etc/nginx/sites-{enabled,available}'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section end=sysops /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=IRC&amp;diff=7970</id>
		<title>IRC</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=IRC&amp;diff=7970"/>
		<updated>2014-07-21T23:45:02Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: /* Channels */ tablified it!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Contact '''chat@soylentnews.org''' if you are interested in working on one of these projects. Also, the [[SoylentNews:IRC|IRC Page]] has information about getting started with IRC, and the [[IRCVision|IRC vision]] is worth checking out.&lt;br /&gt;
&lt;br /&gt;
==Who we are==&lt;br /&gt;
&amp;lt;section begin=whoarewe /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|'''[[IRC|IRC Team Main Page]]'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 20%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''nick'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''position'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''timezone'''&lt;br /&gt;
|-&lt;br /&gt;
| [[User:xlefay|xlefay]]&lt;br /&gt;
| Co-team leader&lt;br /&gt;
| UTC+2 (CEST)&lt;br /&gt;
|- &lt;br /&gt;
|-&lt;br /&gt;
| [[User:paulej72|paulej72]]&lt;br /&gt;
| Co-team leader&lt;br /&gt;
| UTC-4 (EDT)&lt;br /&gt;
|- &lt;br /&gt;
| [[User:kobach|Kobach]]&lt;br /&gt;
| Co-leader | Chief Bacon Officer&lt;br /&gt;
| UTC-5 (us/central)&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Landon|Landon]]&lt;br /&gt;
| Member&lt;br /&gt;
| ?&lt;br /&gt;
|-&lt;br /&gt;
| [[User:FunPika|FunPika]]&lt;br /&gt;
| Member&lt;br /&gt;
| UTC-4 (EDT)&lt;br /&gt;
|-&lt;br /&gt;
| [[User:juggs|juggs]]&lt;br /&gt;
| Member&lt;br /&gt;
| UTC+1 (BST)&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section end=whoarewe /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Current Projects==&lt;br /&gt;
&lt;br /&gt;
===Chat bot (Python)===&lt;br /&gt;
* ELIZA module that uses Futurama personalities (to match the bot's current nick)&lt;br /&gt;
* Modify bot logging to match existing formats (mIRC preferably)&lt;br /&gt;
&lt;br /&gt;
===Services (C)===&lt;br /&gt;
* Single sign on against the website (coordinate with NCommander)&lt;br /&gt;
* Get the web IRC to use the website's sessions to sign in&lt;br /&gt;
&lt;br /&gt;
===Documentation===&lt;br /&gt;
* Quick-Start/How-to guide for staff members (.op .topic nickserv commands etc.)&lt;br /&gt;
&lt;br /&gt;
===Misc bots===&lt;br /&gt;
* Anyone wanting to join existing bot development projects should contact the developer(s) noted below.&lt;br /&gt;
&lt;br /&gt;
===IRC Games===&lt;br /&gt;
* NerdRPG&lt;br /&gt;
* [[IRCiv]] is currently under development and is intended to be a civilization-like building game played on IRC. See crutchy for further details/involvement. Current source code is available @ https://github.com/crutchy-/test/tree/master/scripts&lt;br /&gt;
&lt;br /&gt;
==Dependencies==&lt;br /&gt;
*servers&lt;br /&gt;
*bots&lt;br /&gt;
&lt;br /&gt;
[[Category:Teams]]&lt;br /&gt;
[[Category:IRC]]&lt;br /&gt;
&lt;br /&gt;
==Channels==&lt;br /&gt;
&lt;br /&gt;
===Official channels===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Channel !! Description !! Maintained by&lt;br /&gt;
|-&lt;br /&gt;
| #soylent || General chat/lobby, mostly family-friendly || All SoylentNews Staff&lt;br /&gt;
|-&lt;br /&gt;
| #staff || Public Staff channel - Everyone's welcome to join, but messages from non-voiced are only send to the ops in the channel || All SoylentNews Staff&lt;br /&gt;
|-&lt;br /&gt;
| #editorial || The home of the SoylentNews editors, here you can volunteer for duty, report typo's &amp;amp; ask for submission tips and the like. || Editors &amp;amp; IRC Staff&lt;br /&gt;
|-&lt;br /&gt;
| #dev || The home of and for developers that help develop our fork of SlashCode. || Development team &amp;amp; IRC staff.&lt;br /&gt;
|-&lt;br /&gt;
| #help || This is the IRC help channel, where IRC operators and others provide help and answer any questions related to IRC you may have. || IRC Staff.&lt;br /&gt;
|-&lt;br /&gt;
| #sysops || This is the Sysops homefront, where most of the magic happens. We maintain the servers and services. || Sysops &amp;amp; IRC Staff.&lt;br /&gt;
|-&lt;br /&gt;
| #wiki || This is the Wiki's channel, nothing much happens here except for a bot reporting our every edit on the wiki! || IRC Staff.&lt;br /&gt;
|-&lt;br /&gt;
| #irpg || This is our &amp;quot;nerdRPG&amp;quot;'s (our fork of idleRPG) channel, feel free to idle along! || IRC Staff.&lt;br /&gt;
|-&lt;br /&gt;
| #test || Main testing chambers, feel free to test anything in here (just be friendly &amp;amp; be considerative) || IRC Staff.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Private establishments (unofficial)===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Channel !! Description !! Maintained by&lt;br /&gt;
|-&lt;br /&gt;
| ## || This is a channel which isn't family safe. It's mostly about bacon and stuff' || team-bacon ([User:kobach|kobach]], [[User:xlefay|xlefay]])&lt;br /&gt;
|-&lt;br /&gt;
| # || exec's home base and proving ground. testing of other bots and general chit chat welcome :-) || [[User:crutchy|crutchy]]&lt;br /&gt;
|-&lt;br /&gt;
| #derp || Aqua's (bot) home ground || [[User:Subsentient|Subsentient]]&lt;br /&gt;
|-&lt;br /&gt;
| #sublight || Sublight's bot home ground || [[User:xlefay|xlefay]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Bots==&lt;br /&gt;
&lt;br /&gt;
There are a few bots lurking in the Soylent IRC channels besides the services mentioned above.&lt;br /&gt;
&lt;br /&gt;
Anyone wishing to develop bots should use #test for testing.&lt;br /&gt;
&lt;br /&gt;
Please avoid flooding in private establishments and official channels (except #test).&lt;br /&gt;
&lt;br /&gt;
===Bender===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SedBot===&lt;br /&gt;
Developer(s): [[User:FoobarBazbot|FoobarBazbot]]&lt;br /&gt;
&lt;br /&gt;
https://github.com/FoobarBazbot/sedbot&lt;br /&gt;
&lt;br /&gt;
lurks in #soylent, ##, etc&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
s/old/new/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
nick: s/old/new/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
weatherbot location&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;crutchy&amp;gt; weatherbot melbourne australia&lt;br /&gt;
 &amp;lt;SedBot&amp;gt; weather for Melbourne Regional Office, VIC, Australia: 1023.50 mbar, 60.4F/15.8C/288.9K&lt;br /&gt;
 &amp;lt;SedBot&amp;gt; wind mph / 0kph / 0m/s, 0 degrees&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
using sedbot:&lt;br /&gt;
&lt;br /&gt;
TERMINAL 1:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install ii gawk&lt;br /&gt;
mkdir ~/irc&lt;br /&gt;
wget https://raw.githubusercontent.com/FoobarBazbot/sedbot/master/sedbot.awk -O ~/irc/sedbot.awk&lt;br /&gt;
# on line 11 of the awk file, replace &amp;quot;/sedbotirc/irc.sylnt.us/#soylent/in&amp;quot; with &amp;quot;~/irc/irc.sylnt.us/#soylent/in&amp;quot;&lt;br /&gt;
ii -s irc.sylnt.us -p 6667 -n SedBot2 -f SedBot2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TERMINAL 2:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
echo &amp;quot;/j #soylent&amp;quot; &amp;gt; ~/irc/irc.sylnt.us/in&lt;br /&gt;
tail -Fn1 ~/irc/irc.sylnt.us/#soylent/out | ~/irc/sedbot.awk outfile=~/irc/irc.sylnt.us/#soylent/in&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Loggie===&lt;br /&gt;
Developer(s): [[User:xlefay|xlefay]]&lt;br /&gt;
&lt;br /&gt;
===SoylentMUD===&lt;br /&gt;
Developer(s): [[User:mattie_p|mattie_p]]&lt;br /&gt;
&lt;br /&gt;
===aqu4===&lt;br /&gt;
Developer(s): [[User:Subsentient|Subsentient]]&lt;br /&gt;
&lt;br /&gt;
lurks in ##, #derp, etc&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$sr text # echoes &amp;quot;txet&amp;quot; (reverse of text)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$burrito&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
...etc&lt;br /&gt;
&lt;br /&gt;
===sublight===&lt;br /&gt;
&lt;br /&gt;
Developer(s): [[User:xlefay|xlefay]]&lt;br /&gt;
&lt;br /&gt;
===[[User:Exec|exec]]===&lt;br /&gt;
&lt;br /&gt;
IRC SCRIPT EXECUTIVE&lt;br /&gt;
&lt;br /&gt;
Developer(s): [[User:Crutchy|crutchy]]&lt;br /&gt;
&lt;br /&gt;
See the [[IRC:exec|exec page]] for details.&lt;br /&gt;
&lt;br /&gt;
Example usage:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
~sed on|off&lt;br /&gt;
~weather location&lt;br /&gt;
~weather-add code location&lt;br /&gt;
~time location&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== [[WikiRC]] ===&lt;br /&gt;
Developer(s): [[User:FunPika|FunPika]]&lt;br /&gt;
&lt;br /&gt;
Outputs the wiki's recent changes into #wiki.&lt;br /&gt;
&lt;br /&gt;
===Regurgitator===&lt;br /&gt;
Developer(s): [[User:juggs|juggs]]&lt;br /&gt;
&lt;br /&gt;
Hangs out in #rss-bot outputting feed links.&lt;br /&gt;
&lt;br /&gt;
===ciri===&lt;br /&gt;
Developer(s): [[User:arti|arti]]&lt;br /&gt;
&lt;br /&gt;
!decide yes no maybe sometimes &amp;quot;could be&amp;quot; &amp;quot;won't be&amp;quot; &amp;quot;light it on fire&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===monopoly===&lt;br /&gt;
Developer(s): [[User:chromas|chromas]]&lt;br /&gt;
&lt;br /&gt;
Outputs the title of a URL, amongst other things.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===NerdRPG===&lt;br /&gt;
Outputs game data in the #irpg channel.&lt;br /&gt;
&lt;br /&gt;
==Sysops==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=sysops /&amp;gt;&lt;br /&gt;
IRC services are now server up on carbon.li694.22. The core IRC services as well as several bot live on this server. They are run from the sylnt user account out of /home/sylnt/.  &lt;br /&gt;
&lt;br /&gt;
Start and stop scripts are in the ~/bin directory. start.all and stop.all will start and stop each of the services below with the appropriate script in a proper order. start.all is also set in sylnt's crontab to start at reboot. Individual services can be stopped or started with the appropriate script stop.service or start.service where .service is replaced with the suffix listed in the table below.&lt;br /&gt;
&lt;br /&gt;
The services each have a cron.service script, also in ~/bin, that monitors that the service is running and restarts it if it does not find it.  This is done by monitoring the pid, set at startup, and seeing if the job is still running.  cron.all is run at 5 minute intervals from sylnt's crontab as well.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;6&amp;quot;|'''IRC Services'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Service'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Description'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Path'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''DNS'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Ports'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''start/stop/cron suffex'''&lt;br /&gt;
|-&lt;br /&gt;
| Charybids 3.4.2&lt;br /&gt;
| ircd services&lt;br /&gt;
| ~/charybdis&lt;br /&gt;
| irc.soylentnews.org&lt;br /&gt;
| 6667, 6697(ssl)&lt;br /&gt;
| .charybdis&lt;br /&gt;
|-&lt;br /&gt;
| Atheme Services 7.0.7&lt;br /&gt;
| a modular IRC Services package &lt;br /&gt;
| ~/atheme-services&lt;br /&gt;
| internal only&lt;br /&gt;
|&lt;br /&gt;
| .atheme&lt;br /&gt;
|- &lt;br /&gt;
| Atheme Iris &lt;br /&gt;
| web frontend for IRC&lt;br /&gt;
| ~/atheme-iris&lt;br /&gt;
| chat.soylentnews.org&lt;br /&gt;
| 80&lt;br /&gt;
| .iris&lt;br /&gt;
|-&lt;br /&gt;
| Bender&lt;br /&gt;
| jsonbot bot&lt;br /&gt;
| ~/.jsb&lt;br /&gt;
| internal only&lt;br /&gt;
|&lt;br /&gt;
| .bender&lt;br /&gt;
|-&lt;br /&gt;
| Loggie&lt;br /&gt;
| logging bot&lt;br /&gt;
| ~/logbot&lt;br /&gt;
| logs.sylnt.us&lt;br /&gt;
| 80&lt;br /&gt;
| .loggie&lt;br /&gt;
|-&lt;br /&gt;
| NerdRPG&lt;br /&gt;
| local Idle RPG&lt;br /&gt;
| ~/nerdrpg&lt;br /&gt;
| internal only&lt;br /&gt;
|&lt;br /&gt;
| .nerdrpg&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
All of /home/sylnt/ started out as a copy from the original server xlefay setup on his systems.  No new files were added to this, only certain services need to be recompiled. Source files for most of the services are found in ~/source, and copies of the original services that ran on original server are in ~/OLD.  Test compiles of some of the services were moved to ~/test before bring up the current versions.&lt;br /&gt;
&lt;br /&gt;
Charybdis was compiled with ./configure --prefix=/home/sylnt/charybdis/ --enable-epoll --enable-openssl --enable-ipv6 --disable-assert. Atheme was compiled with  $ ./configure --prefix=/home/sylnt/atheme-services.  Iris was configure by running ./compile from the ~/atheme-iris directory.  The bots did not require a recompile from what was transferred from original server.&lt;br /&gt;
&lt;br /&gt;
Config files were adjusted to set the proper ip addresses for the new server (both IPv4 and IPv6) and to adjust the staff who had admin access.&lt;br /&gt;
&lt;br /&gt;
In addition, nginx is also installed and used to serve IRC logs and such; there's also a reverse proxy vhost present for atheme-iris. Nginx's file structure is the default as supplied by Debian &amp;amp; Ubuntu, meaning, that configuration files are located in '''/etc/nginx/ &amp;amp; vhosts in /etc/nginx/sites-{enabled,available}'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section end=sysops /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=IRC&amp;diff=7969</id>
		<title>IRC</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=IRC&amp;diff=7969"/>
		<updated>2014-07-21T23:36:49Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: /* Channels */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Contact '''chat@soylentnews.org''' if you are interested in working on one of these projects. Also, the [[SoylentNews:IRC|IRC Page]] has information about getting started with IRC, and the [[IRCVision|IRC vision]] is worth checking out.&lt;br /&gt;
&lt;br /&gt;
==Who we are==&lt;br /&gt;
&amp;lt;section begin=whoarewe /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|'''[[IRC|IRC Team Main Page]]'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 20%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''nick'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''position'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''timezone'''&lt;br /&gt;
|-&lt;br /&gt;
| [[User:xlefay|xlefay]]&lt;br /&gt;
| Co-team leader&lt;br /&gt;
| UTC+2 (CEST)&lt;br /&gt;
|- &lt;br /&gt;
|-&lt;br /&gt;
| [[User:paulej72|paulej72]]&lt;br /&gt;
| Co-team leader&lt;br /&gt;
| UTC-4 (EDT)&lt;br /&gt;
|- &lt;br /&gt;
| [[User:kobach|Kobach]]&lt;br /&gt;
| Co-leader | Chief Bacon Officer&lt;br /&gt;
| UTC-5 (us/central)&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Landon|Landon]]&lt;br /&gt;
| Member&lt;br /&gt;
| ?&lt;br /&gt;
|-&lt;br /&gt;
| [[User:FunPika|FunPika]]&lt;br /&gt;
| Member&lt;br /&gt;
| UTC-4 (EDT)&lt;br /&gt;
|-&lt;br /&gt;
| [[User:juggs|juggs]]&lt;br /&gt;
| Member&lt;br /&gt;
| UTC+1 (BST)&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section end=whoarewe /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Current Projects==&lt;br /&gt;
&lt;br /&gt;
===Chat bot (Python)===&lt;br /&gt;
* ELIZA module that uses Futurama personalities (to match the bot's current nick)&lt;br /&gt;
* Modify bot logging to match existing formats (mIRC preferably)&lt;br /&gt;
&lt;br /&gt;
===Services (C)===&lt;br /&gt;
* Single sign on against the website (coordinate with NCommander)&lt;br /&gt;
* Get the web IRC to use the website's sessions to sign in&lt;br /&gt;
&lt;br /&gt;
===Documentation===&lt;br /&gt;
* Quick-Start/How-to guide for staff members (.op .topic nickserv commands etc.)&lt;br /&gt;
&lt;br /&gt;
===Misc bots===&lt;br /&gt;
* Anyone wanting to join existing bot development projects should contact the developer(s) noted below.&lt;br /&gt;
&lt;br /&gt;
===IRC Games===&lt;br /&gt;
* NerdRPG&lt;br /&gt;
* [[IRCiv]] is currently under development and is intended to be a civilization-like building game played on IRC. See crutchy for further details/involvement. Current source code is available @ https://github.com/crutchy-/test/tree/master/scripts&lt;br /&gt;
&lt;br /&gt;
==Dependencies==&lt;br /&gt;
*servers&lt;br /&gt;
*bots&lt;br /&gt;
&lt;br /&gt;
[[Category:Teams]]&lt;br /&gt;
[[Category:IRC]]&lt;br /&gt;
&lt;br /&gt;
==Channels==&lt;br /&gt;
&lt;br /&gt;
===Official channels===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;width:100%;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Channel !! Description !! Maintained by&lt;br /&gt;
|-&lt;br /&gt;
| #soylent || General chat/lobby, mostly family-friendly || All SoylentNews Staff&lt;br /&gt;
|-&lt;br /&gt;
| #staff || Public Staff channel - Everyone's welcome to join, but messages from non-voiced are only send to the ops in the channel || All SoylentNews Staff&lt;br /&gt;
|-&lt;br /&gt;
| #editorial || The home of the SoylentNews editors, here you can volunteer for duty, report typo's &amp;amp; ask for submission tips and the like. || Editors &amp;amp; IRC Staff&lt;br /&gt;
|-&lt;br /&gt;
| #dev || The home of and for developers that help develop our fork of SlashCode. || Development team &amp;amp; IRC staff.&lt;br /&gt;
|-&lt;br /&gt;
| #help || This is the IRC help channel, where IRC operators and others provide help and answer any questions related to IRC you may have. || IRC Staff.&lt;br /&gt;
|-&lt;br /&gt;
| #sysops || This is the Sysops homefront, where most of the magic happens. We maintain the servers and services. || Sysops &amp;amp; IRC Staff.&lt;br /&gt;
|-&lt;br /&gt;
| #wiki || This is the Wiki's channel, nothing much happens here except for a bot reporting our every edit on the wiki! || IRC Staff.&lt;br /&gt;
|-&lt;br /&gt;
| #irpg || This is our &amp;quot;nerdRPG&amp;quot;'s (our fork of idleRPG) channel, feel free to idle along! || IRC Staff.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Private establishments (unofficial)===&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;&amp;amp;#35; ([[User:kobach|kobach]])&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;derp ([[User:Subsentient|Subsentient]])&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35; ([[User:crutchy|crutchy]])&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;sublight ([[User:xlefay|xlefay]])&lt;br /&gt;
&lt;br /&gt;
==Bots==&lt;br /&gt;
&lt;br /&gt;
There are a few bots lurking in the Soylent IRC channels besides the services mentioned above.&lt;br /&gt;
&lt;br /&gt;
Anyone wishing to develop bots should use #test for testing.&lt;br /&gt;
&lt;br /&gt;
Please avoid flooding in private establishments and official channels (except #test).&lt;br /&gt;
&lt;br /&gt;
===Bender===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SedBot===&lt;br /&gt;
Developer(s): [[User:FoobarBazbot|FoobarBazbot]]&lt;br /&gt;
&lt;br /&gt;
https://github.com/FoobarBazbot/sedbot&lt;br /&gt;
&lt;br /&gt;
lurks in #soylent, ##, etc&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
s/old/new/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
nick: s/old/new/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
weatherbot location&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;crutchy&amp;gt; weatherbot melbourne australia&lt;br /&gt;
 &amp;lt;SedBot&amp;gt; weather for Melbourne Regional Office, VIC, Australia: 1023.50 mbar, 60.4F/15.8C/288.9K&lt;br /&gt;
 &amp;lt;SedBot&amp;gt; wind mph / 0kph / 0m/s, 0 degrees&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
using sedbot:&lt;br /&gt;
&lt;br /&gt;
TERMINAL 1:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install ii gawk&lt;br /&gt;
mkdir ~/irc&lt;br /&gt;
wget https://raw.githubusercontent.com/FoobarBazbot/sedbot/master/sedbot.awk -O ~/irc/sedbot.awk&lt;br /&gt;
# on line 11 of the awk file, replace &amp;quot;/sedbotirc/irc.sylnt.us/#soylent/in&amp;quot; with &amp;quot;~/irc/irc.sylnt.us/#soylent/in&amp;quot;&lt;br /&gt;
ii -s irc.sylnt.us -p 6667 -n SedBot2 -f SedBot2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TERMINAL 2:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
echo &amp;quot;/j #soylent&amp;quot; &amp;gt; ~/irc/irc.sylnt.us/in&lt;br /&gt;
tail -Fn1 ~/irc/irc.sylnt.us/#soylent/out | ~/irc/sedbot.awk outfile=~/irc/irc.sylnt.us/#soylent/in&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Loggie===&lt;br /&gt;
Developer(s): [[User:xlefay|xlefay]]&lt;br /&gt;
&lt;br /&gt;
===SoylentMUD===&lt;br /&gt;
Developer(s): [[User:mattie_p|mattie_p]]&lt;br /&gt;
&lt;br /&gt;
===aqu4===&lt;br /&gt;
Developer(s): [[User:Subsentient|Subsentient]]&lt;br /&gt;
&lt;br /&gt;
lurks in ##, #derp, etc&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$sr text # echoes &amp;quot;txet&amp;quot; (reverse of text)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$burrito&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
...etc&lt;br /&gt;
&lt;br /&gt;
===sublight===&lt;br /&gt;
&lt;br /&gt;
Developer(s): [[User:xlefay|xlefay]]&lt;br /&gt;
&lt;br /&gt;
===[[User:Exec|exec]]===&lt;br /&gt;
&lt;br /&gt;
IRC SCRIPT EXECUTIVE&lt;br /&gt;
&lt;br /&gt;
Developer(s): [[User:Crutchy|crutchy]]&lt;br /&gt;
&lt;br /&gt;
See the [[IRC:exec|exec page]] for details.&lt;br /&gt;
&lt;br /&gt;
Example usage:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
~sed on|off&lt;br /&gt;
~weather location&lt;br /&gt;
~weather-add code location&lt;br /&gt;
~time location&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== [[WikiRC]] ===&lt;br /&gt;
Developer(s): [[User:FunPika|FunPika]]&lt;br /&gt;
&lt;br /&gt;
Outputs the wiki's recent changes into #wiki.&lt;br /&gt;
&lt;br /&gt;
===Regurgitator===&lt;br /&gt;
Developer(s): [[User:juggs|juggs]]&lt;br /&gt;
&lt;br /&gt;
Hangs out in #rss-bot outputting feed links.&lt;br /&gt;
&lt;br /&gt;
===ciri===&lt;br /&gt;
Developer(s): [[User:arti|arti]]&lt;br /&gt;
&lt;br /&gt;
!decide yes no maybe sometimes &amp;quot;could be&amp;quot; &amp;quot;won't be&amp;quot; &amp;quot;light it on fire&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===monopoly===&lt;br /&gt;
Developer(s): [[User:chromas|chromas]]&lt;br /&gt;
&lt;br /&gt;
Outputs the title of a URL, amongst other things.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===NerdRPG===&lt;br /&gt;
Outputs game data in the #irpg channel.&lt;br /&gt;
&lt;br /&gt;
==Sysops==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=sysops /&amp;gt;&lt;br /&gt;
IRC services are now server up on carbon.li694.22. The core IRC services as well as several bot live on this server. They are run from the sylnt user account out of /home/sylnt/.  &lt;br /&gt;
&lt;br /&gt;
Start and stop scripts are in the ~/bin directory. start.all and stop.all will start and stop each of the services below with the appropriate script in a proper order. start.all is also set in sylnt's crontab to start at reboot. Individual services can be stopped or started with the appropriate script stop.service or start.service where .service is replaced with the suffix listed in the table below.&lt;br /&gt;
&lt;br /&gt;
The services each have a cron.service script, also in ~/bin, that monitors that the service is running and restarts it if it does not find it.  This is done by monitoring the pid, set at startup, and seeing if the job is still running.  cron.all is run at 5 minute intervals from sylnt's crontab as well.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;6&amp;quot;|'''IRC Services'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Service'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Description'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Path'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''DNS'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Ports'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''start/stop/cron suffex'''&lt;br /&gt;
|-&lt;br /&gt;
| Charybids 3.4.2&lt;br /&gt;
| ircd services&lt;br /&gt;
| ~/charybdis&lt;br /&gt;
| irc.soylentnews.org&lt;br /&gt;
| 6667, 6697(ssl)&lt;br /&gt;
| .charybdis&lt;br /&gt;
|-&lt;br /&gt;
| Atheme Services 7.0.7&lt;br /&gt;
| a modular IRC Services package &lt;br /&gt;
| ~/atheme-services&lt;br /&gt;
| internal only&lt;br /&gt;
|&lt;br /&gt;
| .atheme&lt;br /&gt;
|- &lt;br /&gt;
| Atheme Iris &lt;br /&gt;
| web frontend for IRC&lt;br /&gt;
| ~/atheme-iris&lt;br /&gt;
| chat.soylentnews.org&lt;br /&gt;
| 80&lt;br /&gt;
| .iris&lt;br /&gt;
|-&lt;br /&gt;
| Bender&lt;br /&gt;
| jsonbot bot&lt;br /&gt;
| ~/.jsb&lt;br /&gt;
| internal only&lt;br /&gt;
|&lt;br /&gt;
| .bender&lt;br /&gt;
|-&lt;br /&gt;
| Loggie&lt;br /&gt;
| logging bot&lt;br /&gt;
| ~/logbot&lt;br /&gt;
| logs.sylnt.us&lt;br /&gt;
| 80&lt;br /&gt;
| .loggie&lt;br /&gt;
|-&lt;br /&gt;
| NerdRPG&lt;br /&gt;
| local Idle RPG&lt;br /&gt;
| ~/nerdrpg&lt;br /&gt;
| internal only&lt;br /&gt;
|&lt;br /&gt;
| .nerdrpg&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
All of /home/sylnt/ started out as a copy from the original server xlefay setup on his systems.  No new files were added to this, only certain services need to be recompiled. Source files for most of the services are found in ~/source, and copies of the original services that ran on original server are in ~/OLD.  Test compiles of some of the services were moved to ~/test before bring up the current versions.&lt;br /&gt;
&lt;br /&gt;
Charybdis was compiled with ./configure --prefix=/home/sylnt/charybdis/ --enable-epoll --enable-openssl --enable-ipv6 --disable-assert. Atheme was compiled with  $ ./configure --prefix=/home/sylnt/atheme-services.  Iris was configure by running ./compile from the ~/atheme-iris directory.  The bots did not require a recompile from what was transferred from original server.&lt;br /&gt;
&lt;br /&gt;
Config files were adjusted to set the proper ip addresses for the new server (both IPv4 and IPv6) and to adjust the staff who had admin access.&lt;br /&gt;
&lt;br /&gt;
In addition, nginx is also installed and used to serve IRC logs and such; there's also a reverse proxy vhost present for atheme-iris. Nginx's file structure is the default as supplied by Debian &amp;amp; Ubuntu, meaning, that configuration files are located in '''/etc/nginx/ &amp;amp; vhosts in /etc/nginx/sites-{enabled,available}'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section end=sysops /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=IRC&amp;diff=7968</id>
		<title>IRC</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=IRC&amp;diff=7968"/>
		<updated>2014-07-21T23:27:47Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: /* Sysops */  added nginx section &amp;amp; fixed some typos.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Contact '''chat@soylentnews.org''' if you are interested in working on one of these projects. Also, the [[SoylentNews:IRC|IRC Page]] has information about getting started with IRC, and the [[IRCVision|IRC vision]] is worth checking out.&lt;br /&gt;
&lt;br /&gt;
==Who we are==&lt;br /&gt;
&amp;lt;section begin=whoarewe /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|'''[[IRC|IRC Team Main Page]]'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 20%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''nick'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''position'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''timezone'''&lt;br /&gt;
|-&lt;br /&gt;
| [[User:xlefay|xlefay]]&lt;br /&gt;
| Co-team leader&lt;br /&gt;
| UTC+2 (CEST)&lt;br /&gt;
|- &lt;br /&gt;
|-&lt;br /&gt;
| [[User:paulej72|paulej72]]&lt;br /&gt;
| Co-team leader&lt;br /&gt;
| UTC-4 (EDT)&lt;br /&gt;
|- &lt;br /&gt;
| [[User:kobach|Kobach]]&lt;br /&gt;
| Co-leader | Chief Bacon Officer&lt;br /&gt;
| UTC-5 (us/central)&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Landon|Landon]]&lt;br /&gt;
| Member&lt;br /&gt;
| ?&lt;br /&gt;
|-&lt;br /&gt;
| [[User:FunPika|FunPika]]&lt;br /&gt;
| Member&lt;br /&gt;
| UTC-4 (EDT)&lt;br /&gt;
|-&lt;br /&gt;
| [[User:juggs|juggs]]&lt;br /&gt;
| Member&lt;br /&gt;
| UTC+1 (BST)&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section end=whoarewe /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Current Projects==&lt;br /&gt;
&lt;br /&gt;
===Chat bot (Python)===&lt;br /&gt;
* ELIZA module that uses Futurama personalities (to match the bot's current nick)&lt;br /&gt;
* Modify bot logging to match existing formats (mIRC preferably)&lt;br /&gt;
&lt;br /&gt;
===Services (C)===&lt;br /&gt;
* Single sign on against the website (coordinate with NCommander)&lt;br /&gt;
* Get the web IRC to use the website's sessions to sign in&lt;br /&gt;
&lt;br /&gt;
===Documentation===&lt;br /&gt;
* Quick-Start/How-to guide for staff members (.op .topic nickserv commands etc.)&lt;br /&gt;
&lt;br /&gt;
===Misc bots===&lt;br /&gt;
* Anyone wanting to join existing bot development projects should contact the developer(s) noted below.&lt;br /&gt;
&lt;br /&gt;
===IRC Games===&lt;br /&gt;
* NerdRPG&lt;br /&gt;
* [[IRCiv]] is currently under development and is intended to be a civilization-like building game played on IRC. See crutchy for further details/involvement. Current source code is available @ https://github.com/crutchy-/test/tree/master/scripts&lt;br /&gt;
&lt;br /&gt;
==Dependencies==&lt;br /&gt;
*servers&lt;br /&gt;
*bots&lt;br /&gt;
&lt;br /&gt;
[[Category:Teams]]&lt;br /&gt;
[[Category:IRC]]&lt;br /&gt;
&lt;br /&gt;
==Channels==&lt;br /&gt;
&lt;br /&gt;
===Official channels===&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;soylent (general chat, mostly family-friendly)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;staff (anyone welcome to join but only messages from voiced nicks will appear)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;editorial&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;dev&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;help (irc help)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;sysops&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;test (mainly for bot testing)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;wiki&lt;br /&gt;
&lt;br /&gt;
===Private establishments (unofficial)===&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;&amp;amp;#35; ([[User:kobach|kobach]])&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;derp ([[User:Subsentient|Subsentient]])&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35; ([[User:crutchy|crutchy]])&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;sublight ([[User:xlefay|xlefay]])&lt;br /&gt;
&lt;br /&gt;
==Bots==&lt;br /&gt;
&lt;br /&gt;
There are a few bots lurking in the Soylent IRC channels besides the services mentioned above.&lt;br /&gt;
&lt;br /&gt;
Anyone wishing to develop bots should use #test for testing.&lt;br /&gt;
&lt;br /&gt;
Please avoid flooding in private establishments and official channels (except #test).&lt;br /&gt;
&lt;br /&gt;
===Bender===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SedBot===&lt;br /&gt;
Developer(s): [[User:FoobarBazbot|FoobarBazbot]]&lt;br /&gt;
&lt;br /&gt;
https://github.com/FoobarBazbot/sedbot&lt;br /&gt;
&lt;br /&gt;
lurks in #soylent, ##, etc&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
s/old/new/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
nick: s/old/new/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
weatherbot location&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;crutchy&amp;gt; weatherbot melbourne australia&lt;br /&gt;
 &amp;lt;SedBot&amp;gt; weather for Melbourne Regional Office, VIC, Australia: 1023.50 mbar, 60.4F/15.8C/288.9K&lt;br /&gt;
 &amp;lt;SedBot&amp;gt; wind mph / 0kph / 0m/s, 0 degrees&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
using sedbot:&lt;br /&gt;
&lt;br /&gt;
TERMINAL 1:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install ii gawk&lt;br /&gt;
mkdir ~/irc&lt;br /&gt;
wget https://raw.githubusercontent.com/FoobarBazbot/sedbot/master/sedbot.awk -O ~/irc/sedbot.awk&lt;br /&gt;
# on line 11 of the awk file, replace &amp;quot;/sedbotirc/irc.sylnt.us/#soylent/in&amp;quot; with &amp;quot;~/irc/irc.sylnt.us/#soylent/in&amp;quot;&lt;br /&gt;
ii -s irc.sylnt.us -p 6667 -n SedBot2 -f SedBot2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TERMINAL 2:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
echo &amp;quot;/j #soylent&amp;quot; &amp;gt; ~/irc/irc.sylnt.us/in&lt;br /&gt;
tail -Fn1 ~/irc/irc.sylnt.us/#soylent/out | ~/irc/sedbot.awk outfile=~/irc/irc.sylnt.us/#soylent/in&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Loggie===&lt;br /&gt;
Developer(s): [[User:xlefay|xlefay]]&lt;br /&gt;
&lt;br /&gt;
===SoylentMUD===&lt;br /&gt;
Developer(s): [[User:mattie_p|mattie_p]]&lt;br /&gt;
&lt;br /&gt;
===aqu4===&lt;br /&gt;
Developer(s): [[User:Subsentient|Subsentient]]&lt;br /&gt;
&lt;br /&gt;
lurks in ##, #derp, etc&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$sr text # echoes &amp;quot;txet&amp;quot; (reverse of text)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$burrito&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
...etc&lt;br /&gt;
&lt;br /&gt;
===sublight===&lt;br /&gt;
&lt;br /&gt;
Developer(s): [[User:xlefay|xlefay]]&lt;br /&gt;
&lt;br /&gt;
===[[User:Exec|exec]]===&lt;br /&gt;
&lt;br /&gt;
IRC SCRIPT EXECUTIVE&lt;br /&gt;
&lt;br /&gt;
Developer(s): [[User:Crutchy|crutchy]]&lt;br /&gt;
&lt;br /&gt;
See the [[IRC:exec|exec page]] for details.&lt;br /&gt;
&lt;br /&gt;
Example usage:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
~sed on|off&lt;br /&gt;
~weather location&lt;br /&gt;
~weather-add code location&lt;br /&gt;
~time location&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== [[WikiRC]] ===&lt;br /&gt;
Developer(s): [[User:FunPika|FunPika]]&lt;br /&gt;
&lt;br /&gt;
Outputs the wiki's recent changes into #wiki.&lt;br /&gt;
&lt;br /&gt;
===Regurgitator===&lt;br /&gt;
Developer(s): [[User:juggs|juggs]]&lt;br /&gt;
&lt;br /&gt;
Hangs out in #rss-bot outputting feed links.&lt;br /&gt;
&lt;br /&gt;
===ciri===&lt;br /&gt;
Developer(s): [[User:arti|arti]]&lt;br /&gt;
&lt;br /&gt;
!decide yes no maybe sometimes &amp;quot;could be&amp;quot; &amp;quot;won't be&amp;quot; &amp;quot;light it on fire&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===monopoly===&lt;br /&gt;
Developer(s): [[User:chromas|chromas]]&lt;br /&gt;
&lt;br /&gt;
Outputs the title of a URL, amongst other things.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===NerdRPG===&lt;br /&gt;
Outputs game data in the #irpg channel.&lt;br /&gt;
&lt;br /&gt;
==Sysops==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=sysops /&amp;gt;&lt;br /&gt;
IRC services are now server up on carbon.li694.22. The core IRC services as well as several bot live on this server. They are run from the sylnt user account out of /home/sylnt/.  &lt;br /&gt;
&lt;br /&gt;
Start and stop scripts are in the ~/bin directory. start.all and stop.all will start and stop each of the services below with the appropriate script in a proper order. start.all is also set in sylnt's crontab to start at reboot. Individual services can be stopped or started with the appropriate script stop.service or start.service where .service is replaced with the suffix listed in the table below.&lt;br /&gt;
&lt;br /&gt;
The services each have a cron.service script, also in ~/bin, that monitors that the service is running and restarts it if it does not find it.  This is done by monitoring the pid, set at startup, and seeing if the job is still running.  cron.all is run at 5 minute intervals from sylnt's crontab as well.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;6&amp;quot;|'''IRC Services'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Service'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Description'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Path'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''DNS'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Ports'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''start/stop/cron suffex'''&lt;br /&gt;
|-&lt;br /&gt;
| Charybids 3.4.2&lt;br /&gt;
| ircd services&lt;br /&gt;
| ~/charybdis&lt;br /&gt;
| irc.soylentnews.org&lt;br /&gt;
| 6667, 6697(ssl)&lt;br /&gt;
| .charybdis&lt;br /&gt;
|-&lt;br /&gt;
| Atheme Services 7.0.7&lt;br /&gt;
| a modular IRC Services package &lt;br /&gt;
| ~/atheme-services&lt;br /&gt;
| internal only&lt;br /&gt;
|&lt;br /&gt;
| .atheme&lt;br /&gt;
|- &lt;br /&gt;
| Atheme Iris &lt;br /&gt;
| web frontend for IRC&lt;br /&gt;
| ~/atheme-iris&lt;br /&gt;
| chat.soylentnews.org&lt;br /&gt;
| 80&lt;br /&gt;
| .iris&lt;br /&gt;
|-&lt;br /&gt;
| Bender&lt;br /&gt;
| jsonbot bot&lt;br /&gt;
| ~/.jsb&lt;br /&gt;
| internal only&lt;br /&gt;
|&lt;br /&gt;
| .bender&lt;br /&gt;
|-&lt;br /&gt;
| Loggie&lt;br /&gt;
| logging bot&lt;br /&gt;
| ~/logbot&lt;br /&gt;
| logs.sylnt.us&lt;br /&gt;
| 80&lt;br /&gt;
| .loggie&lt;br /&gt;
|-&lt;br /&gt;
| NerdRPG&lt;br /&gt;
| local Idle RPG&lt;br /&gt;
| ~/nerdrpg&lt;br /&gt;
| internal only&lt;br /&gt;
|&lt;br /&gt;
| .nerdrpg&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
All of /home/sylnt/ started out as a copy from the original server xlefay setup on his systems.  No new files were added to this, only certain services need to be recompiled. Source files for most of the services are found in ~/source, and copies of the original services that ran on original server are in ~/OLD.  Test compiles of some of the services were moved to ~/test before bring up the current versions.&lt;br /&gt;
&lt;br /&gt;
Charybdis was compiled with ./configure --prefix=/home/sylnt/charybdis/ --enable-epoll --enable-openssl --enable-ipv6 --disable-assert. Atheme was compiled with  $ ./configure --prefix=/home/sylnt/atheme-services.  Iris was configure by running ./compile from the ~/atheme-iris directory.  The bots did not require a recompile from what was transferred from original server.&lt;br /&gt;
&lt;br /&gt;
Config files were adjusted to set the proper ip addresses for the new server (both IPv4 and IPv6) and to adjust the staff who had admin access.&lt;br /&gt;
&lt;br /&gt;
In addition, nginx is also installed and used to serve IRC logs and such; there's also a reverse proxy vhost present for atheme-iris. Nginx's file structure is the default as supplied by Debian &amp;amp; Ubuntu, meaning, that configuration files are located in '''/etc/nginx/ &amp;amp; vhosts in /etc/nginx/sites-{enabled,available}'''.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section end=sysops /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=IRC&amp;diff=7966</id>
		<title>IRC</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=IRC&amp;diff=7966"/>
		<updated>2014-07-21T20:27:04Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Contact '''chat@soylentnews.org''' if you are interested in working on one of these projects. Also, the [[SoylentNews:IRC|IRC Page]] has information about getting started with IRC, and the [[IRCVision|IRC vision]] is worth checking out.&lt;br /&gt;
&lt;br /&gt;
==Who we are==&lt;br /&gt;
&amp;lt;section begin=whoarewe /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|'''[[IRC|IRC Team Main Page]]'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 20%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''nick'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''position'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''timezone'''&lt;br /&gt;
|-&lt;br /&gt;
| [[User:xlefay|xlefay]]&lt;br /&gt;
| Co-team leader&lt;br /&gt;
| UTC+2 (CEST)&lt;br /&gt;
|- &lt;br /&gt;
|-&lt;br /&gt;
| [[User:paulej72|paulej72]]&lt;br /&gt;
| Co-team leader&lt;br /&gt;
| UTC-4 (EDT)&lt;br /&gt;
|- &lt;br /&gt;
| [[User:kobach|Kobach]]&lt;br /&gt;
| Co-leader | Chief Bacon Officer&lt;br /&gt;
| UTC-5 (us/central)&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Landon|Landon]]&lt;br /&gt;
| Member&lt;br /&gt;
| ?&lt;br /&gt;
|-&lt;br /&gt;
| [[User:FunPika|FunPika]]&lt;br /&gt;
| Member&lt;br /&gt;
| UTC-4 (EDT)&lt;br /&gt;
|-&lt;br /&gt;
| [[User:juggs|juggs]]&lt;br /&gt;
| Member&lt;br /&gt;
| UTC+1 (BST)&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section end=whoarewe /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Current Projects==&lt;br /&gt;
&lt;br /&gt;
===Chat bot (Python)===&lt;br /&gt;
* ELIZA module that uses Futurama personalities (to match the bot's current nick)&lt;br /&gt;
* Modify bot logging to match existing formats (mIRC preferably)&lt;br /&gt;
&lt;br /&gt;
===Services (C)===&lt;br /&gt;
* Single sign on against the website (coordinate with NCommander)&lt;br /&gt;
* Get the web IRC to use the website's sessions to sign in&lt;br /&gt;
&lt;br /&gt;
===Documentation===&lt;br /&gt;
* Quick-Start/How-to guide for staff members (.op .topic nickserv commands etc.)&lt;br /&gt;
&lt;br /&gt;
===Misc bots===&lt;br /&gt;
* Anyone wanting to join existing bot development projects should contact the developer(s) noted below.&lt;br /&gt;
&lt;br /&gt;
===IRC Games===&lt;br /&gt;
* NerdRPG&lt;br /&gt;
* [[IRCiv]] is currently under development and is intended to be a civilization-like building game played on IRC. See crutchy for further details/involvement. Current source code is available @ https://github.com/crutchy-/test/tree/master/scripts&lt;br /&gt;
&lt;br /&gt;
==Dependencies==&lt;br /&gt;
*servers&lt;br /&gt;
*bots&lt;br /&gt;
&lt;br /&gt;
[[Category:Teams]]&lt;br /&gt;
[[Category:IRC]]&lt;br /&gt;
&lt;br /&gt;
==Channels==&lt;br /&gt;
&lt;br /&gt;
===Official channels===&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;soylent (general chat, mostly family-friendly)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;staff (anyone welcome to join but only messages from voiced nicks will appear)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;editorial&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;dev&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;help (irc help)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;sysops&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;test (mainly for bot testing)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;wiki&lt;br /&gt;
&lt;br /&gt;
===Private establishments (unofficial)===&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;&amp;amp;#35; ([[User:kobach|kobach]])&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;derp ([[User:Subsentient|Subsentient]])&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35; ([[User:crutchy|crutchy]])&lt;br /&gt;
&lt;br /&gt;
&amp;amp;#35;sublight ([[User:xlefay|xlefay]])&lt;br /&gt;
&lt;br /&gt;
==Bots==&lt;br /&gt;
&lt;br /&gt;
There are a few bots lurking in the Soylent IRC channels besides the services mentioned above.&lt;br /&gt;
&lt;br /&gt;
Anyone wishing to develop bots should use #test for testing.&lt;br /&gt;
&lt;br /&gt;
Please avoid flooding in private establishments and official channels (except #test).&lt;br /&gt;
&lt;br /&gt;
===Bender===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===SedBot===&lt;br /&gt;
Developer(s): [[User:FoobarBazbot|FoobarBazbot]]&lt;br /&gt;
&lt;br /&gt;
https://github.com/FoobarBazbot/sedbot&lt;br /&gt;
&lt;br /&gt;
lurks in #soylent, ##, etc&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
s/old/new/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
nick: s/old/new/&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
weatherbot location&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;crutchy&amp;gt; weatherbot melbourne australia&lt;br /&gt;
 &amp;lt;SedBot&amp;gt; weather for Melbourne Regional Office, VIC, Australia: 1023.50 mbar, 60.4F/15.8C/288.9K&lt;br /&gt;
 &amp;lt;SedBot&amp;gt; wind mph / 0kph / 0m/s, 0 degrees&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
using sedbot:&lt;br /&gt;
&lt;br /&gt;
TERMINAL 1:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install ii gawk&lt;br /&gt;
mkdir ~/irc&lt;br /&gt;
wget https://raw.githubusercontent.com/FoobarBazbot/sedbot/master/sedbot.awk -O ~/irc/sedbot.awk&lt;br /&gt;
# on line 11 of the awk file, replace &amp;quot;/sedbotirc/irc.sylnt.us/#soylent/in&amp;quot; with &amp;quot;~/irc/irc.sylnt.us/#soylent/in&amp;quot;&lt;br /&gt;
ii -s irc.sylnt.us -p 6667 -n SedBot2 -f SedBot2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TERMINAL 2:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
echo &amp;quot;/j #soylent&amp;quot; &amp;gt; ~/irc/irc.sylnt.us/in&lt;br /&gt;
tail -Fn1 ~/irc/irc.sylnt.us/#soylent/out | ~/irc/sedbot.awk outfile=~/irc/irc.sylnt.us/#soylent/in&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Loggie===&lt;br /&gt;
Developer(s): [[User:xlefay|xlefay]]&lt;br /&gt;
&lt;br /&gt;
===SoylentMUD===&lt;br /&gt;
Developer(s): [[User:mattie_p|mattie_p]]&lt;br /&gt;
&lt;br /&gt;
===aqu4===&lt;br /&gt;
Developer(s): [[User:Subsentient|Subsentient]]&lt;br /&gt;
&lt;br /&gt;
lurks in ##, #derp, etc&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$sr text # echoes &amp;quot;txet&amp;quot; (reverse of text)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$burrito&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
...etc&lt;br /&gt;
&lt;br /&gt;
===sublight===&lt;br /&gt;
&lt;br /&gt;
Developer(s): [[User:xlefay|xlefay]]&lt;br /&gt;
&lt;br /&gt;
===[[User:Exec|exec]]===&lt;br /&gt;
&lt;br /&gt;
IRC SCRIPT EXECUTIVE&lt;br /&gt;
&lt;br /&gt;
Developer(s): [[User:Crutchy|crutchy]]&lt;br /&gt;
&lt;br /&gt;
See the [[IRC:exec|exec page]] for details.&lt;br /&gt;
&lt;br /&gt;
Example usage:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
~sed on|off&lt;br /&gt;
~weather location&lt;br /&gt;
~weather-add code location&lt;br /&gt;
~time location&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== [[WikiRC]] ===&lt;br /&gt;
Developer(s): [[User:FunPika|FunPika]]&lt;br /&gt;
&lt;br /&gt;
Outputs the wiki's recent changes into #wiki.&lt;br /&gt;
&lt;br /&gt;
===Regurgitator===&lt;br /&gt;
Developer(s): [[User:juggs|juggs]]&lt;br /&gt;
&lt;br /&gt;
Hangs out in #rss-bot outputting feed links.&lt;br /&gt;
&lt;br /&gt;
===ciri===&lt;br /&gt;
Developer(s): [[User:arti|arti]]&lt;br /&gt;
&lt;br /&gt;
!decide yes no maybe sometimes &amp;quot;could be&amp;quot; &amp;quot;won't be&amp;quot; &amp;quot;light it on fire&amp;quot;&lt;br /&gt;
&lt;br /&gt;
===monopoly===&lt;br /&gt;
Developer(s): [[User:chromas|chromas]]&lt;br /&gt;
&lt;br /&gt;
Outputs the title of a URL, amongst other things.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===NerdRPG===&lt;br /&gt;
Outputs game data in the #irpg channel.&lt;br /&gt;
&lt;br /&gt;
==Sysops==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=sysops /&amp;gt;&lt;br /&gt;
IRC services are now server up on carbon.li694.22. The core IRC services as well as several bot live on this server. They are run from the sylnt user account out of /home/sylnt/.  &lt;br /&gt;
&lt;br /&gt;
Start and stop scripts are in the ~/bin directory. start.all and stop.all will start and stop each of the services below with the appropriate script in a proper order. start.all is also set in sylnt's crontab to start at reboot. Individual services can be stopped or started with the appropriate script stop.servcie or start.service where .service is replaced with the suffix listed in the table below.&lt;br /&gt;
&lt;br /&gt;
The services each have a cron.service script, also in ~/bin, that monitors that the service is running and restarts it if it does not find it.  This is done by monitoring the pid, set at startup, and seeing if the job is still running.  cron.all is run at 5 minute intervals from sylnt's crontab as well.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;6&amp;quot;|'''IRC Serevices'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Service'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Description'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Path'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''DNS'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''Ports'''&lt;br /&gt;
| style=&amp;quot;background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''start/stop/cron suffex'''&lt;br /&gt;
|-&lt;br /&gt;
| Charybids 3.4.2&lt;br /&gt;
| ircd services&lt;br /&gt;
| ~/charybdis&lt;br /&gt;
| irc.soylentnews.org&lt;br /&gt;
| 6667, 6697(ssl)&lt;br /&gt;
| .charybdis&lt;br /&gt;
|-&lt;br /&gt;
| Atheme Services 7.0.7&lt;br /&gt;
| a modular IRC Services package &lt;br /&gt;
| ~/atheme-services&lt;br /&gt;
| internal only&lt;br /&gt;
|&lt;br /&gt;
| .atheme&lt;br /&gt;
|- &lt;br /&gt;
| Atheme Iris &lt;br /&gt;
| web frontend for IRC&lt;br /&gt;
| ~/atheme-iris&lt;br /&gt;
| chat.soylentnews.org&lt;br /&gt;
| 80&lt;br /&gt;
| .iris&lt;br /&gt;
|-&lt;br /&gt;
| Bender&lt;br /&gt;
| jsonbot bot&lt;br /&gt;
| ~/.jsb&lt;br /&gt;
| internal only&lt;br /&gt;
|&lt;br /&gt;
| .bender&lt;br /&gt;
|-&lt;br /&gt;
| Loggie&lt;br /&gt;
| logging bot&lt;br /&gt;
| ~/logbot&lt;br /&gt;
| logs.sylnt.us&lt;br /&gt;
| 80&lt;br /&gt;
| .loggie&lt;br /&gt;
|-&lt;br /&gt;
| NerdRPG&lt;br /&gt;
| local Idle RPG&lt;br /&gt;
| ~/nerdrpg&lt;br /&gt;
| internal only&lt;br /&gt;
|&lt;br /&gt;
| .nerdrpg&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
All of /home/sylnt/ started out as a copy from the original server xlefay setup on his systems.  No new files were added to this, only certain services need to be recompiled. Source files for most of the services are found in ~/source, and copies of the original services that ran on original server are in ~/OLD.  Test compiles of some of the services were moved to ~/test before bring up the current versions.&lt;br /&gt;
&lt;br /&gt;
Charybdis was compiled with ./configure --prefix=/home/sylnt/charybdis/ --enable-epoll --enable-openssl --enable-ipv6 --disable-assert. Atheme was compiled with  $ ./configure --prefix=/home/sylnt/atheme-services.  Iris was configure by running ./compile from the ~/atheme-iris directory.  The bots did not require a recompile from what was transferred from original server.&lt;br /&gt;
&lt;br /&gt;
Config files were adjusted to set the proper ip addresses for the new server (both IPv4 and IPv6) and to adjust the staff who had admin access.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section end=sysops /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=Category:SystemAdministration/Servers&amp;diff=7964</id>
		<title>Category:SystemAdministration/Servers</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=Category:SystemAdministration/Servers&amp;diff=7964"/>
		<updated>2014-07-21T19:52:33Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains a list with all SoylentNews Servers. You can click on a servers name and you will be presented with a general description of the server and it's services. Some services have their own individual page, in which their configuration is displayed.&lt;br /&gt;
&lt;br /&gt;
[[Category:System_administration]]&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=Category:SystemAdministration/Servers&amp;diff=7963</id>
		<title>Category:SystemAdministration/Servers</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=Category:SystemAdministration/Servers&amp;diff=7963"/>
		<updated>2014-07-21T19:52:01Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains a list with all SoylentNews Servers. You can click on a servers name and you will be presented with a general description of the server and it's services. Some services have their own individual page, in which their configuration is displayed.&lt;br /&gt;
&lt;br /&gt;
[[Category:SystemAdministration]]&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=SystemAdministration/Server/Beryllium&amp;diff=7962</id>
		<title>SystemAdministration/Server/Beryllium</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=SystemAdministration/Server/Beryllium&amp;diff=7962"/>
		<updated>2014-07-21T19:51:46Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: Xlefay moved page SystemAdministration/Server/Beryllium to Beryllium: Moved to SystemAdministration/Server category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Beryllium]]&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=Beryllium&amp;diff=7961</id>
		<title>Beryllium</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=Beryllium&amp;diff=7961"/>
		<updated>2014-07-21T19:51:46Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: Xlefay moved page SystemAdministration/Server/Beryllium to Beryllium: Moved to SystemAdministration/Server category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:SystemAdministration/Servers]]&lt;br /&gt;
= Beryllium =&lt;br /&gt;
&lt;br /&gt;
{{#lst:SystemAdministration/Special:Includes|server_header}}&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
This server is a Centos 6.5 server which functions as the primary misc services machine.&lt;br /&gt;
&lt;br /&gt;
== Services running on this host ==&lt;br /&gt;
&lt;br /&gt;
Any services that is prepended with an exclamation mark is not yet being monitored by our Icinga instance.&lt;br /&gt;
&amp;lt;section begin=services /&amp;gt;&lt;br /&gt;
* ![[SystemAdministration/Server/Beryllium/MySQL|MySQL]]&lt;br /&gt;
* [[SystemAdministration/Server/Beryllium/Postfix|Postfix]]&lt;br /&gt;
* ![[SystemAdministration/Server/Beryllium/Mailman|Mailman]]&lt;br /&gt;
* ![[SystemAdministration/Server/Beryllium/Dovecot|Dovecot]]&lt;br /&gt;
* ![[SystemAdministration/Server/Beryllium/Apache|Apache2/httpd]]&lt;br /&gt;
* OpenSSH&lt;br /&gt;
* ntpd&lt;br /&gt;
&amp;lt;section end=services /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please add any services that aren't listed here yet.&lt;br /&gt;
&lt;br /&gt;
== Basic Information ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This node's ip address: 72.14.184.41&lt;br /&gt;
&lt;br /&gt;
Services set to run at startup (can be restarted via /etc/init.d/&amp;lt;script&amp;gt;):&lt;br /&gt;
&lt;br /&gt;
*postfix - SMTP server, handles incoming and outgoing mail.&lt;br /&gt;
*dovecot - IMAP server and mail delivery agent.&lt;br /&gt;
*mailmain - listserv, this is just the qrunner service which picks up stuff in the queue to mail out.&lt;br /&gt;
*saslauthd - Mail authentication.&lt;br /&gt;
*mysqld - mysql databases&lt;br /&gt;
*httpd  - apache webserver running multiple virtualhosts&lt;br /&gt;
&lt;br /&gt;
Currently, mechanicjay, robind, ncommander, xlefay, and funpika have ssh access to this box.&lt;br /&gt;
&lt;br /&gt;
== Apache Config ==&lt;br /&gt;
All vhost configs are in /etc/httpd/conf.d/&amp;lt;servicename&amp;gt;.soylentnews.org.conf&lt;br /&gt;
All vhost wwwroots are in /var/www/vhosts/&amp;lt;servicename&amp;gt;&lt;br /&gt;
--mailman (lists.soylentnews.org) is the exception since that was installed as a system package via yum&lt;br /&gt;
&lt;br /&gt;
Current virtual hosts:&lt;br /&gt;
*lists&lt;br /&gt;
*postfixadmin&lt;br /&gt;
*wiki&lt;br /&gt;
*forums&lt;br /&gt;
*webmail (squirrelmail install)&lt;br /&gt;
*rt (not currently active)&lt;br /&gt;
*000_default (nothing to see here page if no or unrecognized host header is passed)&lt;br /&gt;
&lt;br /&gt;
== Mysql ==&lt;br /&gt;
Just a basic mysql install.&lt;br /&gt;
&lt;br /&gt;
Current databases:&lt;br /&gt;
*postfix -- handles mail accounts -- all mail services auth against this db&lt;br /&gt;
*wiki&lt;br /&gt;
*forums&lt;br /&gt;
*rt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Mail Config ==&lt;br /&gt;
&lt;br /&gt;
This is a nightmare, and will have to spend some time figuring out how to document it in a sane way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== System Packages ==&lt;br /&gt;
&lt;br /&gt;
Stuff that was installed from yum will go here&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=Beryllium&amp;diff=7960</id>
		<title>Beryllium</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=Beryllium&amp;diff=7960"/>
		<updated>2014-07-21T19:51:38Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:SystemAdministration/Servers]]&lt;br /&gt;
= Beryllium =&lt;br /&gt;
&lt;br /&gt;
{{#lst:SystemAdministration/Special:Includes|server_header}}&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
This server is a Centos 6.5 server which functions as the primary misc services machine.&lt;br /&gt;
&lt;br /&gt;
== Services running on this host ==&lt;br /&gt;
&lt;br /&gt;
Any services that is prepended with an exclamation mark is not yet being monitored by our Icinga instance.&lt;br /&gt;
&amp;lt;section begin=services /&amp;gt;&lt;br /&gt;
* ![[SystemAdministration/Server/Beryllium/MySQL|MySQL]]&lt;br /&gt;
* [[SystemAdministration/Server/Beryllium/Postfix|Postfix]]&lt;br /&gt;
* ![[SystemAdministration/Server/Beryllium/Mailman|Mailman]]&lt;br /&gt;
* ![[SystemAdministration/Server/Beryllium/Dovecot|Dovecot]]&lt;br /&gt;
* ![[SystemAdministration/Server/Beryllium/Apache|Apache2/httpd]]&lt;br /&gt;
* OpenSSH&lt;br /&gt;
* ntpd&lt;br /&gt;
&amp;lt;section end=services /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please add any services that aren't listed here yet.&lt;br /&gt;
&lt;br /&gt;
== Basic Information ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This node's ip address: 72.14.184.41&lt;br /&gt;
&lt;br /&gt;
Services set to run at startup (can be restarted via /etc/init.d/&amp;lt;script&amp;gt;):&lt;br /&gt;
&lt;br /&gt;
*postfix - SMTP server, handles incoming and outgoing mail.&lt;br /&gt;
*dovecot - IMAP server and mail delivery agent.&lt;br /&gt;
*mailmain - listserv, this is just the qrunner service which picks up stuff in the queue to mail out.&lt;br /&gt;
*saslauthd - Mail authentication.&lt;br /&gt;
*mysqld - mysql databases&lt;br /&gt;
*httpd  - apache webserver running multiple virtualhosts&lt;br /&gt;
&lt;br /&gt;
Currently, mechanicjay, robind, ncommander, xlefay, and funpika have ssh access to this box.&lt;br /&gt;
&lt;br /&gt;
== Apache Config ==&lt;br /&gt;
All vhost configs are in /etc/httpd/conf.d/&amp;lt;servicename&amp;gt;.soylentnews.org.conf&lt;br /&gt;
All vhost wwwroots are in /var/www/vhosts/&amp;lt;servicename&amp;gt;&lt;br /&gt;
--mailman (lists.soylentnews.org) is the exception since that was installed as a system package via yum&lt;br /&gt;
&lt;br /&gt;
Current virtual hosts:&lt;br /&gt;
*lists&lt;br /&gt;
*postfixadmin&lt;br /&gt;
*wiki&lt;br /&gt;
*forums&lt;br /&gt;
*webmail (squirrelmail install)&lt;br /&gt;
*rt (not currently active)&lt;br /&gt;
*000_default (nothing to see here page if no or unrecognized host header is passed)&lt;br /&gt;
&lt;br /&gt;
== Mysql ==&lt;br /&gt;
Just a basic mysql install.&lt;br /&gt;
&lt;br /&gt;
Current databases:&lt;br /&gt;
*postfix -- handles mail accounts -- all mail services auth against this db&lt;br /&gt;
*wiki&lt;br /&gt;
*forums&lt;br /&gt;
*rt&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Mail Config ==&lt;br /&gt;
&lt;br /&gt;
This is a nightmare, and will have to spend some time figuring out how to document it in a sane way.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== System Packages ==&lt;br /&gt;
&lt;br /&gt;
Stuff that was installed from yum will go here&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=SystemAdministration/Server/Oxygen&amp;diff=7959</id>
		<title>SystemAdministration/Server/Oxygen</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=SystemAdministration/Server/Oxygen&amp;diff=7959"/>
		<updated>2014-07-21T19:50:41Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: Xlefay moved page SystemAdministration/Server/Oxygen to Oxygen: Moved to SystemAdministration/Server category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Oxygen]]&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=Oxygen&amp;diff=7958</id>
		<title>Oxygen</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=Oxygen&amp;diff=7958"/>
		<updated>2014-07-21T19:50:41Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: Xlefay moved page SystemAdministration/Server/Oxygen to Oxygen: Moved to SystemAdministration/Server category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:SystemAdministration/Servers]]&lt;br /&gt;
= Oxygen =&lt;br /&gt;
&lt;br /&gt;
{{#lst:SystemAdministration/Special:Includes|server_header}}&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
This server is an Ubuntu Linux 14.04 server which functions as an offsite backup server, it is not publicly accessible.&lt;br /&gt;
&lt;br /&gt;
== Services running on this host ==&lt;br /&gt;
&lt;br /&gt;
Any services that is prepended with an exclamation mark is not yet being monitored by our Icinga instance.&lt;br /&gt;
&amp;lt;section begin=services /&amp;gt;&lt;br /&gt;
* ![[SystemAdministration/Server/Oxygen/MySQL|MySQL]]&lt;br /&gt;
* ![[SystemAdministration/Server/Oxygen/Bacula|Bacula]]&lt;br /&gt;
* OpenSSH&lt;br /&gt;
* ntpd&lt;br /&gt;
&amp;lt;section end=services /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please add any services that aren't listed here yet.&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=Oxygen&amp;diff=7957</id>
		<title>Oxygen</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=Oxygen&amp;diff=7957"/>
		<updated>2014-07-21T19:50:32Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:SystemAdministration/Servers]]&lt;br /&gt;
= Oxygen =&lt;br /&gt;
&lt;br /&gt;
{{#lst:SystemAdministration/Special:Includes|server_header}}&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
This server is an Ubuntu Linux 14.04 server which functions as an offsite backup server, it is not publicly accessible.&lt;br /&gt;
&lt;br /&gt;
== Services running on this host ==&lt;br /&gt;
&lt;br /&gt;
Any services that is prepended with an exclamation mark is not yet being monitored by our Icinga instance.&lt;br /&gt;
&amp;lt;section begin=services /&amp;gt;&lt;br /&gt;
* ![[SystemAdministration/Server/Oxygen/MySQL|MySQL]]&lt;br /&gt;
* ![[SystemAdministration/Server/Oxygen/Bacula|Bacula]]&lt;br /&gt;
* OpenSSH&lt;br /&gt;
* ntpd&lt;br /&gt;
&amp;lt;section end=services /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please add any services that aren't listed here yet.&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=Oxygen&amp;diff=7956</id>
		<title>Oxygen</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=Oxygen&amp;diff=7956"/>
		<updated>2014-07-21T19:50:18Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:SystemAdministration/Servers]]&lt;br /&gt;
= Oxygen =&lt;br /&gt;
&lt;br /&gt;
{{#lst:SystemAdministration/Special:Includes|server_header}}&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
This server is an Ubuntu Linux 14.04 server which functions as an offsite backup server, it is not publicly accessible.&lt;br /&gt;
&lt;br /&gt;
== Services running on this host ==&lt;br /&gt;
&lt;br /&gt;
Any services that is prepended with an exclamation mark is not yet being monitored by our Icinga instance.&lt;br /&gt;
&amp;lt;section begin=services /&amp;gt;&lt;br /&gt;
* ![[SystemAdministration/Server/Oxygen/MySQL|MySQL]]&lt;br /&gt;
* ![[SystemAdministration/Server/Oxygen/Bacula|Bacula]]&lt;br /&gt;
* OpenSSH&lt;br /&gt;
* ntpd&lt;br /&gt;
&amp;lt;section end=services /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please add any services that aren't listed here yet.&lt;br /&gt;
&lt;br /&gt;
[[Category:System administration]]&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=SystemAdministration/Server/Hydrogen&amp;diff=7955</id>
		<title>SystemAdministration/Server/Hydrogen</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=SystemAdministration/Server/Hydrogen&amp;diff=7955"/>
		<updated>2014-07-21T19:49:05Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: Xlefay moved page SystemAdministration/Server/Hydrogen to Hydrogen: Moved to SystemAdministration/Server category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Hydrogen]]&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=Hydrogen&amp;diff=7954</id>
		<title>Hydrogen</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=Hydrogen&amp;diff=7954"/>
		<updated>2014-07-21T19:49:05Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: Xlefay moved page SystemAdministration/Server/Hydrogen to Hydrogen: Moved to SystemAdministration/Server category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:SystemAdministration/Servers]]&lt;br /&gt;
= Hydrogen =&lt;br /&gt;
&lt;br /&gt;
{{#lst:SystemAdministration/Special:Includes|server_header}}&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
This server is an Ubuntu Linux 14.04 server which functions as the main frontend server, the webserver can be reached [https://soylentnews.org/ here].&lt;br /&gt;
&lt;br /&gt;
== Services running on this host ==&lt;br /&gt;
&lt;br /&gt;
Any services that is prepended with an exclamation mark is not yet being monitored by our Icinga instance.&lt;br /&gt;
&amp;lt;section begin=services /&amp;gt;&lt;br /&gt;
* !&amp;lt;abbr title=&amp;quot;Slashcode's daemon&amp;quot;&amp;gt;Slashd&amp;lt;/abbr&amp;gt;&lt;br /&gt;
* ![[SystemAdministration/Server/Hydrogen/Varnish|Varnish]]&lt;br /&gt;
* OpenSSH&lt;br /&gt;
* ![[SystemAdministration/Server/Hydrogen/Nginx|Nginx]]&lt;br /&gt;
* ![[SystemAdministration/Server/Hydrogen/Memcache|Memcache]]&lt;br /&gt;
* [[SystemAdministration/Server/Hydrogen/Apache|Apache 1.3/httpd]]&lt;br /&gt;
* [[SystemAdministration/Server/Hydrogen/Postfix|Postfix]]&lt;br /&gt;
* ntpd&lt;br /&gt;
&amp;lt;section end=services /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please add any services that aren't listed here yet.&lt;br /&gt;
&lt;br /&gt;
== Information to be merged: ==&lt;br /&gt;
&lt;br /&gt;
[[Soylent-www|soylent-www]]&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=Hydrogen&amp;diff=7953</id>
		<title>Hydrogen</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=Hydrogen&amp;diff=7953"/>
		<updated>2014-07-21T19:48:55Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:SystemAdministration/Servers]]&lt;br /&gt;
= Hydrogen =&lt;br /&gt;
&lt;br /&gt;
{{#lst:SystemAdministration/Special:Includes|server_header}}&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
This server is an Ubuntu Linux 14.04 server which functions as the main frontend server, the webserver can be reached [https://soylentnews.org/ here].&lt;br /&gt;
&lt;br /&gt;
== Services running on this host ==&lt;br /&gt;
&lt;br /&gt;
Any services that is prepended with an exclamation mark is not yet being monitored by our Icinga instance.&lt;br /&gt;
&amp;lt;section begin=services /&amp;gt;&lt;br /&gt;
* !&amp;lt;abbr title=&amp;quot;Slashcode's daemon&amp;quot;&amp;gt;Slashd&amp;lt;/abbr&amp;gt;&lt;br /&gt;
* ![[SystemAdministration/Server/Hydrogen/Varnish|Varnish]]&lt;br /&gt;
* OpenSSH&lt;br /&gt;
* ![[SystemAdministration/Server/Hydrogen/Nginx|Nginx]]&lt;br /&gt;
* ![[SystemAdministration/Server/Hydrogen/Memcache|Memcache]]&lt;br /&gt;
* [[SystemAdministration/Server/Hydrogen/Apache|Apache 1.3/httpd]]&lt;br /&gt;
* [[SystemAdministration/Server/Hydrogen/Postfix|Postfix]]&lt;br /&gt;
* ntpd&lt;br /&gt;
&amp;lt;section end=services /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please add any services that aren't listed here yet.&lt;br /&gt;
&lt;br /&gt;
== Information to be merged: ==&lt;br /&gt;
&lt;br /&gt;
[[Soylent-www|soylent-www]]&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=SystemAdministration/Server/Boron&amp;diff=7952</id>
		<title>SystemAdministration/Server/Boron</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=SystemAdministration/Server/Boron&amp;diff=7952"/>
		<updated>2014-07-21T19:47:59Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: Xlefay moved page SystemAdministration/Server/Boron to Boron: Moved to SystemAdministration/Server category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Boron]]&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=Boron&amp;diff=7951</id>
		<title>Boron</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=Boron&amp;diff=7951"/>
		<updated>2014-07-21T19:47:59Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: Xlefay moved page SystemAdministration/Server/Boron to Boron: Moved to SystemAdministration/Server category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:SystemAdministration/Servers]]&lt;br /&gt;
= Boron =&lt;br /&gt;
&lt;br /&gt;
{{#lst:SystemAdministration/Special:Includes|server_header}}&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
This server is an Ubuntu Linux 14.04 server which is mainly intended for use by staff.&lt;br /&gt;
&lt;br /&gt;
'''Important:''' This server also acts as an SSH proxy which allows staff members to SSH into other [[SystemAdministration/TheHitchhikersGuideToTheli694-22Domain|li694-22]] nodes if they have the nessecary privileges to do so.&lt;br /&gt;
&lt;br /&gt;
== Services running on this host ==&lt;br /&gt;
&lt;br /&gt;
Any services that is prepended with an exclamation mark is not yet being monitored by our Icinga instance.&lt;br /&gt;
&amp;lt;section begin=services /&amp;gt;&lt;br /&gt;
* [[SystemAdministration/TheHitchhikersGuideToTheli694-22Domain#DNS_Setup|Bind9/named]]&lt;br /&gt;
* OpenSSH&lt;br /&gt;
* [[SystemAdministration/Server/Boron/PostgreSQL|PostgreSQL]]&lt;br /&gt;
* !&amp;lt;abbr title=&amp;quot;Fork of Nagios&amp;quot;&amp;gt;[[SystemAdministration/Monitoring|Icinga]]&amp;lt;/abbr&amp;gt;&lt;br /&gt;
* !&amp;lt;abbr title=&amp;quot;Icinga information to PostgreSQL&amp;quot;&amp;gt;[[SystemAdministration/Monitoring#Ido2db|Ido2db]]&amp;lt;/abbr&amp;gt;&lt;br /&gt;
* [[SystemAdministration/Server/Boron/Postfix|Postfix]]&lt;br /&gt;
* [[SystemAdministration/Server/Boron/Apache|Apache2/httpd]]&lt;br /&gt;
* ntpd&lt;br /&gt;
* !kdc&lt;br /&gt;
&amp;lt;section end=services /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please add any services that aren't listed here yet.&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=Boron&amp;diff=7950</id>
		<title>Boron</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=Boron&amp;diff=7950"/>
		<updated>2014-07-21T19:47:38Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:SystemAdministration/Servers]]&lt;br /&gt;
= Boron =&lt;br /&gt;
&lt;br /&gt;
{{#lst:SystemAdministration/Special:Includes|server_header}}&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
This server is an Ubuntu Linux 14.04 server which is mainly intended for use by staff.&lt;br /&gt;
&lt;br /&gt;
'''Important:''' This server also acts as an SSH proxy which allows staff members to SSH into other [[SystemAdministration/TheHitchhikersGuideToTheli694-22Domain|li694-22]] nodes if they have the nessecary privileges to do so.&lt;br /&gt;
&lt;br /&gt;
== Services running on this host ==&lt;br /&gt;
&lt;br /&gt;
Any services that is prepended with an exclamation mark is not yet being monitored by our Icinga instance.&lt;br /&gt;
&amp;lt;section begin=services /&amp;gt;&lt;br /&gt;
* [[SystemAdministration/TheHitchhikersGuideToTheli694-22Domain#DNS_Setup|Bind9/named]]&lt;br /&gt;
* OpenSSH&lt;br /&gt;
* [[SystemAdministration/Server/Boron/PostgreSQL|PostgreSQL]]&lt;br /&gt;
* !&amp;lt;abbr title=&amp;quot;Fork of Nagios&amp;quot;&amp;gt;[[SystemAdministration/Monitoring|Icinga]]&amp;lt;/abbr&amp;gt;&lt;br /&gt;
* !&amp;lt;abbr title=&amp;quot;Icinga information to PostgreSQL&amp;quot;&amp;gt;[[SystemAdministration/Monitoring#Ido2db|Ido2db]]&amp;lt;/abbr&amp;gt;&lt;br /&gt;
* [[SystemAdministration/Server/Boron/Postfix|Postfix]]&lt;br /&gt;
* [[SystemAdministration/Server/Boron/Apache|Apache2/httpd]]&lt;br /&gt;
* ntpd&lt;br /&gt;
* !kdc&lt;br /&gt;
&amp;lt;section end=services /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please add any services that aren't listed here yet.&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=Category:SystemAdministration/Servers&amp;diff=7949</id>
		<title>Category:SystemAdministration/Servers</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=Category:SystemAdministration/Servers&amp;diff=7949"/>
		<updated>2014-07-21T19:44:30Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: Created page with &amp;quot;This page contains a list with all SoylentNews Servers. You can click on a servers name and you will be presented with a general description of the server and it's services. S...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page contains a list with all SoylentNews Servers. You can click on a servers name and you will be presented with a general description of the server and it's services. Some services have their own individual page, in which their configuration is displayed.&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=SystemAdministration/Server/Helium&amp;diff=7948</id>
		<title>SystemAdministration/Server/Helium</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=SystemAdministration/Server/Helium&amp;diff=7948"/>
		<updated>2014-07-21T19:42:05Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: Xlefay moved page SystemAdministration/Server/Helium to Helium: Moved to SystemAdministration/Server category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Helium]]&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=Helium&amp;diff=7947</id>
		<title>Helium</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=Helium&amp;diff=7947"/>
		<updated>2014-07-21T19:42:05Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: Xlefay moved page SystemAdministration/Server/Helium to Helium: Moved to SystemAdministration/Server category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:SystemAdministration/Servers]]&lt;br /&gt;
= Helium =&lt;br /&gt;
&lt;br /&gt;
{{#lst:SystemAdministration/Special:Includes|server_header}}&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
This server is an Ubuntu Linux 14.04 server which functions as a database server, it is not publicly accessible.&lt;br /&gt;
&lt;br /&gt;
== Services running on this host ==&lt;br /&gt;
&lt;br /&gt;
Any services that is prepended with an exclamation mark is not yet being monitored by our Icinga instance.&lt;br /&gt;
&amp;lt;section begin=services /&amp;gt;&lt;br /&gt;
* !&amp;lt;abbr title=&amp;quot;Slashcode's daemon&amp;quot;&amp;gt;Slashd&amp;lt;/abbr&amp;gt;&lt;br /&gt;
* ![[SystemAdministration/Server/Helium/MySQL|MySQL]]&lt;br /&gt;
* ![[SystemAdministration/Server/Helium/KDC|KDC]]&lt;br /&gt;
* [[SystemAdministration/TheHitchhikersGuideToTheli694-22Domain#DNS_Setup|Bind9/named]]&lt;br /&gt;
* ![[SystemAdministration/Server/Helium/slapd|slapd]]&lt;br /&gt;
* OpenSSH&lt;br /&gt;
* ntpd&lt;br /&gt;
&amp;lt;section end=services /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please add any services that aren't listed here yet.&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=Helium&amp;diff=7946</id>
		<title>Helium</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=Helium&amp;diff=7946"/>
		<updated>2014-07-21T19:41:50Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:SystemAdministration/Servers]]&lt;br /&gt;
= Helium =&lt;br /&gt;
&lt;br /&gt;
{{#lst:SystemAdministration/Special:Includes|server_header}}&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
This server is an Ubuntu Linux 14.04 server which functions as a database server, it is not publicly accessible.&lt;br /&gt;
&lt;br /&gt;
== Services running on this host ==&lt;br /&gt;
&lt;br /&gt;
Any services that is prepended with an exclamation mark is not yet being monitored by our Icinga instance.&lt;br /&gt;
&amp;lt;section begin=services /&amp;gt;&lt;br /&gt;
* !&amp;lt;abbr title=&amp;quot;Slashcode's daemon&amp;quot;&amp;gt;Slashd&amp;lt;/abbr&amp;gt;&lt;br /&gt;
* ![[SystemAdministration/Server/Helium/MySQL|MySQL]]&lt;br /&gt;
* ![[SystemAdministration/Server/Helium/KDC|KDC]]&lt;br /&gt;
* [[SystemAdministration/TheHitchhikersGuideToTheli694-22Domain#DNS_Setup|Bind9/named]]&lt;br /&gt;
* ![[SystemAdministration/Server/Helium/slapd|slapd]]&lt;br /&gt;
* OpenSSH&lt;br /&gt;
* ntpd&lt;br /&gt;
&amp;lt;section end=services /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please add any services that aren't listed here yet.&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=SystemAdministration/Server/Lithium&amp;diff=7945</id>
		<title>SystemAdministration/Server/Lithium</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=SystemAdministration/Server/Lithium&amp;diff=7945"/>
		<updated>2014-07-21T19:41:07Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: Xlefay moved page SystemAdministration/Server/Lithium to Lithium: Moved to SystemAdministration/Server category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Lithium]]&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=Lithium&amp;diff=7944</id>
		<title>Lithium</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=Lithium&amp;diff=7944"/>
		<updated>2014-07-21T19:41:07Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: Xlefay moved page SystemAdministration/Server/Lithium to Lithium: Moved to SystemAdministration/Server category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:SystemAdministration/Servers]]&lt;br /&gt;
= Lithium =&lt;br /&gt;
&lt;br /&gt;
{{#lst:SystemAdministration/Special:Includes|server_header}}&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
This server is an Ubuntu Linux 14.04 server which functions as the development machine. It's webserver is publicly available [http://dev.soylentnews.org/ here].&lt;br /&gt;
&lt;br /&gt;
== Services running on this host ==&lt;br /&gt;
&lt;br /&gt;
Any services that is prepended with an exclamation mark is not yet being monitored by our Icinga instance.&lt;br /&gt;
&amp;lt;section begin=services /&amp;gt;&lt;br /&gt;
* !&amp;lt;abbr title=&amp;quot;Slashcode's daemon&amp;quot;&amp;gt;Slashd&amp;lt;/abbr&amp;gt;&lt;br /&gt;
* ![[SystemAdministration/Server/Lithium/Varnish|Varnish]]&lt;br /&gt;
* OpenSSH&lt;br /&gt;
* ![[SystemAdministration/Server/Lithium/Nginx|Nginx]]&lt;br /&gt;
* ![[SystemAdministration/Server/Lithium/MySQL|MySQL]]&lt;br /&gt;
* ![[SystemAdministration/Server/Lithium/Memcache|Memcache]]&lt;br /&gt;
* [[SystemAdministration/Server/Lithium/Apache|Apache 1.3/httpd]]&lt;br /&gt;
* ntpd&lt;br /&gt;
&amp;lt;section end=services /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please add any services that aren't listed here yet.&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=SystemAdministration/Server/Carbon&amp;diff=7943</id>
		<title>SystemAdministration/Server/Carbon</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=SystemAdministration/Server/Carbon&amp;diff=7943"/>
		<updated>2014-07-21T19:40:36Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: Xlefay moved page SystemAdministration/Server/Carbon to Carbon: Added to category SystemAdministration/Server&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Carbon]]&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=Lithium&amp;diff=7940</id>
		<title>Lithium</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=Lithium&amp;diff=7940"/>
		<updated>2014-07-21T19:39:29Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:SystemAdministration/Servers]]&lt;br /&gt;
= Lithium =&lt;br /&gt;
&lt;br /&gt;
{{#lst:SystemAdministration/Special:Includes|server_header}}&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
This server is an Ubuntu Linux 14.04 server which functions as the development machine. It's webserver is publicly available [http://dev.soylentnews.org/ here].&lt;br /&gt;
&lt;br /&gt;
== Services running on this host ==&lt;br /&gt;
&lt;br /&gt;
Any services that is prepended with an exclamation mark is not yet being monitored by our Icinga instance.&lt;br /&gt;
&amp;lt;section begin=services /&amp;gt;&lt;br /&gt;
* !&amp;lt;abbr title=&amp;quot;Slashcode's daemon&amp;quot;&amp;gt;Slashd&amp;lt;/abbr&amp;gt;&lt;br /&gt;
* ![[SystemAdministration/Server/Lithium/Varnish|Varnish]]&lt;br /&gt;
* OpenSSH&lt;br /&gt;
* ![[SystemAdministration/Server/Lithium/Nginx|Nginx]]&lt;br /&gt;
* ![[SystemAdministration/Server/Lithium/MySQL|MySQL]]&lt;br /&gt;
* ![[SystemAdministration/Server/Lithium/Memcache|Memcache]]&lt;br /&gt;
* [[SystemAdministration/Server/Lithium/Apache|Apache 1.3/httpd]]&lt;br /&gt;
* ntpd&lt;br /&gt;
&amp;lt;section end=services /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please add any services that aren't listed here yet.&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=Lithium&amp;diff=7939</id>
		<title>Lithium</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=Lithium&amp;diff=7939"/>
		<updated>2014-07-21T19:38:50Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:SystemAdministration:Servers]]&lt;br /&gt;
= Lithium =&lt;br /&gt;
&lt;br /&gt;
{{#lst:SystemAdministration/Special:Includes|server_header}}&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
This server is an Ubuntu Linux 14.04 server which functions as the development machine. It's webserver is publicly available [http://dev.soylentnews.org/ here].&lt;br /&gt;
&lt;br /&gt;
== Services running on this host ==&lt;br /&gt;
&lt;br /&gt;
Any services that is prepended with an exclamation mark is not yet being monitored by our Icinga instance.&lt;br /&gt;
&amp;lt;section begin=services /&amp;gt;&lt;br /&gt;
* !&amp;lt;abbr title=&amp;quot;Slashcode's daemon&amp;quot;&amp;gt;Slashd&amp;lt;/abbr&amp;gt;&lt;br /&gt;
* ![[SystemAdministration/Server/Lithium/Varnish|Varnish]]&lt;br /&gt;
* OpenSSH&lt;br /&gt;
* ![[SystemAdministration/Server/Lithium/Nginx|Nginx]]&lt;br /&gt;
* ![[SystemAdministration/Server/Lithium/MySQL|MySQL]]&lt;br /&gt;
* ![[SystemAdministration/Server/Lithium/Memcache|Memcache]]&lt;br /&gt;
* [[SystemAdministration/Server/Lithium/Apache|Apache 1.3/httpd]]&lt;br /&gt;
* ntpd&lt;br /&gt;
&amp;lt;section end=services /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please add any services that aren't listed here yet.&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=Lithium&amp;diff=7938</id>
		<title>Lithium</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=Lithium&amp;diff=7938"/>
		<updated>2014-07-21T19:38:29Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:SystemAdministration/Server]]&lt;br /&gt;
= Lithium =&lt;br /&gt;
&lt;br /&gt;
{{#lst:SystemAdministration/Special:Includes|server_header}}&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
This server is an Ubuntu Linux 14.04 server which functions as the development machine. It's webserver is publicly available [http://dev.soylentnews.org/ here].&lt;br /&gt;
&lt;br /&gt;
== Services running on this host ==&lt;br /&gt;
&lt;br /&gt;
Any services that is prepended with an exclamation mark is not yet being monitored by our Icinga instance.&lt;br /&gt;
&amp;lt;section begin=services /&amp;gt;&lt;br /&gt;
* !&amp;lt;abbr title=&amp;quot;Slashcode's daemon&amp;quot;&amp;gt;Slashd&amp;lt;/abbr&amp;gt;&lt;br /&gt;
* ![[SystemAdministration/Server/Lithium/Varnish|Varnish]]&lt;br /&gt;
* OpenSSH&lt;br /&gt;
* ![[SystemAdministration/Server/Lithium/Nginx|Nginx]]&lt;br /&gt;
* ![[SystemAdministration/Server/Lithium/MySQL|MySQL]]&lt;br /&gt;
* ![[SystemAdministration/Server/Lithium/Memcache|Memcache]]&lt;br /&gt;
* [[SystemAdministration/Server/Lithium/Apache|Apache 1.3/httpd]]&lt;br /&gt;
* ntpd&lt;br /&gt;
&amp;lt;section end=services /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please add any services that aren't listed here yet.&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=Lithium&amp;diff=7937</id>
		<title>Lithium</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=Lithium&amp;diff=7937"/>
		<updated>2014-07-21T19:36:59Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: /* Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Lithium =&lt;br /&gt;
&lt;br /&gt;
{{#lst:SystemAdministration/Special:Includes|server_header}}&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
This server is an Ubuntu Linux 14.04 server which functions as the development machine. It's webserver is publicly available [http://dev.soylentnews.org/ here].&lt;br /&gt;
&lt;br /&gt;
== Services running on this host ==&lt;br /&gt;
&lt;br /&gt;
Any services that is prepended with an exclamation mark is not yet being monitored by our Icinga instance.&lt;br /&gt;
&amp;lt;section begin=services /&amp;gt;&lt;br /&gt;
* !&amp;lt;abbr title=&amp;quot;Slashcode's daemon&amp;quot;&amp;gt;Slashd&amp;lt;/abbr&amp;gt;&lt;br /&gt;
* ![[SystemAdministration/Server/Lithium/Varnish|Varnish]]&lt;br /&gt;
* OpenSSH&lt;br /&gt;
* ![[SystemAdministration/Server/Lithium/Nginx|Nginx]]&lt;br /&gt;
* ![[SystemAdministration/Server/Lithium/MySQL|MySQL]]&lt;br /&gt;
* ![[SystemAdministration/Server/Lithium/Memcache|Memcache]]&lt;br /&gt;
* [[SystemAdministration/Server/Lithium/Apache|Apache 1.3/httpd]]&lt;br /&gt;
* ntpd&lt;br /&gt;
&amp;lt;section end=services /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please add any services that aren't listed here yet.&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=Oxygen&amp;diff=7936</id>
		<title>Oxygen</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=Oxygen&amp;diff=7936"/>
		<updated>2014-07-21T19:36:35Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: /* Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Oxygen =&lt;br /&gt;
&lt;br /&gt;
{{#lst:SystemAdministration/Special:Includes|server_header}}&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
This server is an Ubuntu Linux 14.04 server which functions as an offsite backup server, it is not publicly accessible.&lt;br /&gt;
&lt;br /&gt;
== Services running on this host ==&lt;br /&gt;
&lt;br /&gt;
Any services that is prepended with an exclamation mark is not yet being monitored by our Icinga instance.&lt;br /&gt;
&amp;lt;section begin=services /&amp;gt;&lt;br /&gt;
* ![[SystemAdministration/Server/Oxygen/MySQL|MySQL]]&lt;br /&gt;
* ![[SystemAdministration/Server/Oxygen/Bacula|Bacula]]&lt;br /&gt;
* OpenSSH&lt;br /&gt;
* ntpd&lt;br /&gt;
&amp;lt;section end=services /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please add any services that aren't listed here yet.&lt;br /&gt;
&lt;br /&gt;
[[Category:System administration]]&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=Helium&amp;diff=7935</id>
		<title>Helium</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=Helium&amp;diff=7935"/>
		<updated>2014-07-21T19:36:25Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: /* Description */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Helium =&lt;br /&gt;
&lt;br /&gt;
{{#lst:SystemAdministration/Special:Includes|server_header}}&lt;br /&gt;
== Description ==&lt;br /&gt;
&lt;br /&gt;
This server is an Ubuntu Linux 14.04 server which functions as a database server, it is not publicly accessible.&lt;br /&gt;
&lt;br /&gt;
== Services running on this host ==&lt;br /&gt;
&lt;br /&gt;
Any services that is prepended with an exclamation mark is not yet being monitored by our Icinga instance.&lt;br /&gt;
&amp;lt;section begin=services /&amp;gt;&lt;br /&gt;
* !&amp;lt;abbr title=&amp;quot;Slashcode's daemon&amp;quot;&amp;gt;Slashd&amp;lt;/abbr&amp;gt;&lt;br /&gt;
* ![[SystemAdministration/Server/Helium/MySQL|MySQL]]&lt;br /&gt;
* ![[SystemAdministration/Server/Helium/KDC|KDC]]&lt;br /&gt;
* [[SystemAdministration/TheHitchhikersGuideToTheli694-22Domain#DNS_Setup|Bind9/named]]&lt;br /&gt;
* ![[SystemAdministration/Server/Helium/slapd|slapd]]&lt;br /&gt;
* OpenSSH&lt;br /&gt;
* ntpd&lt;br /&gt;
&amp;lt;section end=services /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please add any services that aren't listed here yet.&lt;br /&gt;
&lt;br /&gt;
[[Category:System administration]]&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=WhosWho&amp;diff=7361</id>
		<title>WhosWho</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=WhosWho&amp;diff=7361"/>
		<updated>2014-04-23T14:08:48Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In the interest of getting questions to the right people on via email or IRC, this is a summary of who is involved in SoylentNews. If you'd like to work with a team directly, try the [[TeamPages]]. Please add yourself here if you are actively working on the project.&lt;br /&gt;
&lt;br /&gt;
==Team Contacts==&lt;br /&gt;
	&lt;br /&gt;
Teams are guided by leaders that may occasionally change. Teams can always be contacted directly at the following addresses:&lt;br /&gt;
&lt;br /&gt;
*dev@SoylentNews.org ([[#Development|Development]])&lt;br /&gt;
*editors@SoylentNews.org ([[#Content|Content]])&lt;br /&gt;
*suggestions@soylentNews.org ([[#Community Support|Community Support]])&lt;br /&gt;
*wiki@SoylentNews.org ([[#Wiki|Wiki]])&lt;br /&gt;
*chat@SoylentNews.org ([[#IRC|IRC]])&lt;br /&gt;
*style@SoylentNews.org ([[#Style|Style/User Experience]])&lt;br /&gt;
*art@SoylentNews.org ([[#Art|Art]])&lt;br /&gt;
&lt;br /&gt;
==The Man Behind The Curtain==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 20%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''nick'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''position'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''timezone'''&lt;br /&gt;
|-&lt;br /&gt;
| NCommander&lt;br /&gt;
| Site-wide responsibility&lt;br /&gt;
| UTC-5*&lt;br /&gt;
Has a sleep disorder, hours are erratic &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Administration==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 20%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''nick'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''position'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''timezone'''&lt;br /&gt;
|-&lt;br /&gt;
| mattie_p&lt;br /&gt;
| General Manager/Head Team Leader/Lead Cat herder&lt;br /&gt;
| UTC-7 (MST)&lt;br /&gt;
|-&lt;br /&gt;
| mrcoolbp&lt;br /&gt;
| [[CommunitySupport]]&lt;br /&gt;
| UTC-4 (EST/EDT)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Development==&lt;br /&gt;
&lt;br /&gt;
{{#lst:Development|whoarewe}}&lt;br /&gt;
&lt;br /&gt;
==Sysops==&lt;br /&gt;
&lt;br /&gt;
{{#lst:SystemAdministration|whoarewe}}&lt;br /&gt;
&lt;br /&gt;
==Style/User Experience==&lt;br /&gt;
&lt;br /&gt;
{{#lst:UserExperience|whoarewe}}&lt;br /&gt;
&lt;br /&gt;
==Content==&lt;br /&gt;
&lt;br /&gt;
{{#lst:Editors|whoarewe}}&lt;br /&gt;
&lt;br /&gt;
==Community Support==&lt;br /&gt;
&lt;br /&gt;
{{#lst:CommunitySupport|whoarewe}}&lt;br /&gt;
&lt;br /&gt;
==Wiki==&lt;br /&gt;
&lt;br /&gt;
{{#lst:Wiki|whoarewe}}&lt;br /&gt;
&lt;br /&gt;
==IRC==&lt;br /&gt;
&lt;br /&gt;
{{#lst:IRC|whoarewe}}&lt;br /&gt;
&lt;br /&gt;
==QA==&lt;br /&gt;
&lt;br /&gt;
{{#lst:QA|whoarewe}}&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=QA&amp;diff=7360</id>
		<title>QA</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=QA&amp;diff=7360"/>
		<updated>2014-04-23T14:08:25Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Who we are==&lt;br /&gt;
&amp;lt;section begin=whoarewe /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|'''[[QA|QA main page]]'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 20%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''nick'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''position'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''timezone'''&lt;br /&gt;
|-&lt;br /&gt;
| [[User:xlefay|xlefay]]&lt;br /&gt;
| Team leader&lt;br /&gt;
| UTC+2 (CEST)&lt;br /&gt;
|-&lt;br /&gt;
| [[User:MrBluze|MrBluze]]&lt;br /&gt;
| Co-lead&lt;br /&gt;
| UTC+10 (AEST)&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Martyb|Martyb]]&lt;br /&gt;
| Member&lt;br /&gt;
| UTC-4 (EST/EDT)&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section end=whoarewe /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Current Projects==&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=QA&amp;diff=7359</id>
		<title>QA</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=QA&amp;diff=7359"/>
		<updated>2014-04-23T14:08:07Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: Created page with &amp;quot; ==Who we are== &amp;lt;section begin=whoarewe /&amp;gt; {| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot; !colspan=&amp;quot;3&amp;quot;|'''IRC Team Main Page''' |- | style=&amp;quot;width: 20%; background-color: #f2f2f2;&amp;quot;|...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
==Who we are==&lt;br /&gt;
&amp;lt;section begin=whoarewe /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|'''[[IRC|IRC Team Main Page]]'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 20%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''nick'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''position'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''timezone'''&lt;br /&gt;
|-&lt;br /&gt;
| [[User:xlefay|xlefay]]&lt;br /&gt;
| Team leader&lt;br /&gt;
| UTC+2 (CEST)&lt;br /&gt;
|-&lt;br /&gt;
| [[User:MrBluze|MrBluze]]&lt;br /&gt;
| Co-lead&lt;br /&gt;
| UTC+10 (AEST)&lt;br /&gt;
|-&lt;br /&gt;
| [[User:Martyb|Martyb]]&lt;br /&gt;
| Member&lt;br /&gt;
| UTC-4 (EST/EDT)&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section end=whoarewe /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Current Projects==&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=CommunitySupport&amp;diff=7347</id>
		<title>CommunitySupport</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=CommunitySupport&amp;diff=7347"/>
		<updated>2014-04-22T15:25:41Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: /* Who we are */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Welcome==&lt;br /&gt;
This site is made possible by (and for) the insightful community of users. There are many ways to participate. Of course, [http://soylentnews.org/submit.pl submitting stories] or commenting on them is the most obvious way to get involved. You can also submit ideas for new projects in [[Suggestions]], or bugs and &amp;quot;feature requests&amp;quot; on the [https://github.com/SoylentNews/slashcode/issues bug tracker on github].&lt;br /&gt;
&lt;br /&gt;
If you'd like to get more closely involved by working with a team, you should contact them directly. Start at the [[WhosWho]] or [[TeamPages|Team Pages]]. For example the [[Development|Development Team]] can always use perl experience, and the [[Editors]] team are looking to expand their time zone coverage. If you have any questions or are not sure where to start you can send an email to '''suggestions@soylentnews.org'''.&lt;br /&gt;
&lt;br /&gt;
==Who we are==&lt;br /&gt;
&amp;lt;section begin=whoarewe /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;100%&amp;quot;&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|'''[[CommunitySupport|Community Support Team Main Page]]'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;width: 20%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''nick'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''position'''&lt;br /&gt;
| style=&amp;quot;width: 40%; background-color: #f2f2f2;&amp;quot;|&lt;br /&gt;
'''timezone'''&lt;br /&gt;
|-&lt;br /&gt;
| mrcoolbp&lt;br /&gt;
| Leader&lt;br /&gt;
| UTC-4 (EST/EDT)&lt;br /&gt;
|-&lt;br /&gt;
| xlefay&lt;br /&gt;
| Member&lt;br /&gt;
| UTC+2 (CEST)&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section end=whoarewe /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Documentation==&lt;br /&gt;
&lt;br /&gt;
This team:&lt;br /&gt;
*Answers support and contact emails&lt;br /&gt;
*Tracks volunteers and staff&lt;br /&gt;
*Collects [[Suggestions]]&lt;br /&gt;
Goals for the future:&lt;br /&gt;
*Utilize community feedback selecting suggestions for implementation&lt;br /&gt;
*Investigate staff and community '''[[CommunicationSystems|Communication Systems]]'''&lt;br /&gt;
&lt;br /&gt;
==Dependencies==&lt;br /&gt;
&lt;br /&gt;
Dependencies for this group include:&lt;br /&gt;
*SN Mailboxes and forwards:&lt;br /&gt;
**admin@SN&lt;br /&gt;
**suggestions@SN&lt;br /&gt;
**social-media@SN&lt;br /&gt;
**mail is hosted on [[Soylent-services|beryllium]]&lt;br /&gt;
*IRC Bot&lt;br /&gt;
**!suggestion (currently de-activated)&lt;br /&gt;
&lt;br /&gt;
==Projects==&lt;br /&gt;
&lt;br /&gt;
*Propose Vote on Staff [[CommunicationSystems|Communication System]]&lt;br /&gt;
*Organize regular staff meetings (bi-weekly?)&lt;br /&gt;
*New (final) Name Vote (mrcoolbp, audioguy, MrBluze)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Migrate mailing list addresses to new @SN.org addresses&lt;br /&gt;
*Develop process for becoming staff (get @SN.org email, get on mailing list, privileges, orientation booklet, etc.)&lt;br /&gt;
*Get email and IRC &amp;quot;!suggestions&amp;quot; piped directly to wiki)&lt;br /&gt;
*Contact CmdrTaco via twitter?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Teams]]&lt;br /&gt;
[[Category:Community support]]&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7270</id>
		<title>SystemAdministration/Icinga</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7270"/>
		<updated>2014-04-13T23:21:21Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: /* Host groups */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Sentinel: Icinga / Server &amp;amp; Services Monitoring ==&lt;br /&gt;
&lt;br /&gt;
=== Important Directories ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Directory !! Description&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/groups || (service definitions for) Host Groups&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/servers || Server Definitions&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/templates || Various templates [http://docs.icinga.org/latest/en/sample-templates.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/contacts || Contact &amp;amp; time period config [http://docs.icinga.org/latest/en/sample-contacts.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/nagios-plugins/config/ || Plugin configs; be sure to checkout 'remote.cfg'&lt;br /&gt;
|-&lt;br /&gt;
| /usr/lib/nagios/plugins/ || Plugins&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Useful links ===&lt;br /&gt;
&lt;br /&gt;
[http://docs.icinga.org/latest/en/ Icinga documentation]&lt;br /&gt;
&amp;lt;section begin=testandreload /&amp;gt;&lt;br /&gt;
=== Testing Icinga's config and reloading: ===&lt;br /&gt;
&lt;br /&gt;
When you've made modifications to Icinga's config (you really should first back up the files you're modifying), you can run:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# /usr/sbin/icinga -v /etc/icinga/icinga.cfg&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
If this command returns &amp;quot;Total Warnings: 0&amp;quot; &amp;amp; &amp;quot;Total Errors: 0&amp;quot; you can then:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# service icinga reload&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;section end=testandreload /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Access ==&lt;br /&gt;
&lt;br /&gt;
Our Icinga installation is named 'Sentinel' which means &amp;quot;a soldier or guard whose job is to stand and keep watch&amp;quot;, you can find [https://sentinel.soylentnews.org/ Sentinel here] and login with your Keberos username and password.&lt;br /&gt;
&lt;br /&gt;
== Kerberized SSH connections ==&lt;br /&gt;
&lt;br /&gt;
We use AutoSSH to allow Icinga to connect to other nodes to execute commands and get services information back. &lt;br /&gt;
&lt;br /&gt;
Internally, we can use Kerberos to jump from one host to another our Icinga installation requires HTTP Kerberos auth (via https) but we've also set up AutoSSH which allows our Icinga instance to connect to other nodes passwordless &amp;amp; ssh key-less to fetch information.&lt;br /&gt;
&lt;br /&gt;
'''more information, show how we've setup the connections, etc'''&lt;br /&gt;
&lt;br /&gt;
== icinga.cfg ==&lt;br /&gt;
&lt;br /&gt;
The file '''/etc/icinga/icinga.cfg''' is heavily commented. I suggest you simply look it over.&lt;br /&gt;
&lt;br /&gt;
== Servers ==&lt;br /&gt;
&lt;br /&gt;
[http://docs.icinga.org/latest/en/objectdefinitions.html#host Icinga's &amp;quot;host&amp;quot; documentation]&lt;br /&gt;
&lt;br /&gt;
=== Adding a server ===&lt;br /&gt;
&lt;br /&gt;
Each server has a file in /etc/icinga/objects/servers/ which looks something like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define host{&lt;br /&gt;
        use                     generic-host            ; Name of host template to use&lt;br /&gt;
        host_name               carbon.li694-22         ; The server hostname (ensure it's in our DNS).&lt;br /&gt;
        alias                   carbon                  ; A shortname&lt;br /&gt;
        address                 carbon.li694-22         ; The server's address.&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Creating a new one (for instance, 'example.li694-22') should be straight forward, you simply copy carbon.li694-22 to example.li64-22:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''cp carbon.cfg example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once that's done, you can either edit the file manually with the editor of your choice or use sed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''sed -i 's/carbon/example/g' example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Modifying a server ===&lt;br /&gt;
&lt;br /&gt;
Simply edit the server object in /etc/icinga/objects/servers/&lt;br /&gt;
&lt;br /&gt;
=== Removing a server ===&lt;br /&gt;
&lt;br /&gt;
If you want to remove a server, remove the config and check '''/etc/icinga/objects/groups/hostgroups_icinga.cfg''' and remove any references to the server.&lt;br /&gt;
{{#lst:SystemAdministration/Icinga|testandreload}}&lt;br /&gt;
&lt;br /&gt;
== Host groups ==&lt;br /&gt;
&lt;br /&gt;
[http://docs.icinga.org/latest/en/objectdefinitions.html#objectdefinitions-hostgroup Icinga's documentation]&lt;br /&gt;
&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
&lt;br /&gt;
In Icinga we can group hosts, for instance &amp;quot;Ubuntu Servers&amp;quot; and &amp;quot;PostgreSQL servers&amp;quot; and so on. All of our servers are members of the 'all' host group, so instead of defining services checks for memory &amp;amp; harddisk usage (to name a few) per server, we simply define that check in the 'all' host group and effectively, all of our servers are now being monitored for memory &amp;amp; harddisk usage (and a lot more, check '''/etc/icinga/objects/groups/all.cfg''').&lt;br /&gt;
&lt;br /&gt;
One server can be a member of many host groups and we've got quite a few. We've got the &amp;quot;ubuntu-servers&amp;quot; group, the &amp;quot;postgresql-servers&amp;quot; group and a few more.&lt;br /&gt;
&lt;br /&gt;
=== Define a hostgroup ===&lt;br /&gt;
&lt;br /&gt;
We define host groups in '''/etc/icinga/objects/groups/hostgroup_icinga.cfg''', these look a lot like (comments in line):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
; Start with the define statement.&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  ubuntu-servers ; Let's give the group a name.&lt;br /&gt;
		alias           Ubuntu Servers ; Let's give it a &amp;quot;more&amp;quot; friendly name.&lt;br /&gt;
		members         boron.li694-22, helium.li694-22, carbon.li694-22, lithium.li694-22, nitrogen.li694-22, oxygen.li694-22, hydrogen.li694-22 ; It's members.&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  postgresql-servers ; Let's give the group a name.&lt;br /&gt;
                alias           PostgreSQL servers ; Let's give it a &amp;quot;more&amp;quot; friendly name.&lt;br /&gt;
                members         carbon.li694-22, boron.li694-22 ; It's members.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As you can no doubt see, the definitions are relatively straight forward. Let's say, we install PostgreSQL on our server by the name of &amp;quot;helium&amp;quot;; then we'd simply add helium.li694-22 as a member of the postgresql-servers group and voila, now helium's PostgreSQL is also monitored. (note: monitoring PostgreSQL in itself involves a few more steps which are omitted to keep the explanation simple).&lt;br /&gt;
&lt;br /&gt;
=== Adding a new host group ===&lt;br /&gt;
&lt;br /&gt;
Adding a new host group is simple, you copy one of the &amp;quot;hostgroup&amp;quot; definitions to the end of '''/etc/icinga/objects/groups/hostgroup_icinga.cfg''' and change the group's name, alias &amp;amp; you define which servers are a member. So let's say, you want to monitor webservers, you would add the following definition (note, we're already monitoring those, it's just an example):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# A list of our web servers&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  http-servers&lt;br /&gt;
                alias           HTTP servers&lt;br /&gt;
                members         hydrogen.li694-22, carbon.li694-22, boron.li694-22, beryllium.li694-22&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, this alone, won't work, currently we've only defined the host group but we haven't defined any services, let's do that in the next chapter.&lt;br /&gt;
&lt;br /&gt;
=== Modifying a host group ===&lt;br /&gt;
&lt;br /&gt;
Simply modify the appropriate definition in '''/etc/icinga/objects/groups/hostgroup_icinga.cfg'''&lt;br /&gt;
&lt;br /&gt;
=== Removing a host group ===&lt;br /&gt;
&lt;br /&gt;
Simply remove the definition from '''/etc/icinga/objects/groups/hostgroup_icinga.cfg'''&lt;br /&gt;
&lt;br /&gt;
== Monitoring Services ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
&lt;br /&gt;
=== Adding a service ===&lt;br /&gt;
&lt;br /&gt;
=== Modifying a service ===&lt;br /&gt;
&lt;br /&gt;
=== Removing a service ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== junk ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As you can see, we give each group a name, an alias (friendly name, mostly) &amp;amp; we define it's members. Pretty straight forward right? Let's move on to the fun part.&lt;br /&gt;
&lt;br /&gt;
Now instead of defining a service per server, we simply define a service per hostgroup, meaning; when we add an Ubuntu server we simply add it to the 'ubuntu-servers' host group and it'll be automatically monitored for updates, and such.&lt;br /&gt;
&lt;br /&gt;
The service definitions for hostgroups are in the same directory, let's take a look at the service definitions for the ubuntu-servers group:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/groups/ $ '''cat ubuntu.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define service{&lt;br /&gt;
	hostgroup_name			ubuntu-servers          ; Host group&lt;br /&gt;
        use                             generic-service         ; Name of service template to use&lt;br /&gt;
        service_description             APT Status              ; Service check name.&lt;br /&gt;
        check_command                   remote_one!check_apt    ; This is the command that's being executed.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Let's say, all Ubuntu servers also run a special daemon (let's called it &amp;quot;speciald&amp;quot; - I haven't got a lot of inspiration right now), we would add the following (make sure the command definition/plugin exists) to 'ubuntu.cfg':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define service{&lt;br /&gt;
	hostgroup_name			ubuntu-servers          ; Host group&lt;br /&gt;
        use                             generic-service         ; Name of service template to use&lt;br /&gt;
        service_description             Speciald Status         ; Service check name.&lt;br /&gt;
        check_command                   remote_one!check_speciald ; This is the command that's being executed.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and reload Icinga (after testing the configuration, first) and now, 'speciald' is being monitored on all Ubuntu servers.&lt;br /&gt;
&lt;br /&gt;
Note, we also have 'all.cfg' which powers the &amp;quot;All Servers Group&amp;quot; - in which, you guessed it, checks for every server are defined, e.g. ssh, disk space, etc.&lt;br /&gt;
{{#lst:SystemAdministration/Icinga|testandreload}}&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7269</id>
		<title>SystemAdministration/Icinga</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7269"/>
		<updated>2014-04-13T23:20:06Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: /* Monitoring Services */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Sentinel: Icinga / Server &amp;amp; Services Monitoring ==&lt;br /&gt;
&lt;br /&gt;
=== Important Directories ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Directory !! Description&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/groups || (service definitions for) Host Groups&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/servers || Server Definitions&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/templates || Various templates [http://docs.icinga.org/latest/en/sample-templates.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/contacts || Contact &amp;amp; time period config [http://docs.icinga.org/latest/en/sample-contacts.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/nagios-plugins/config/ || Plugin configs; be sure to checkout 'remote.cfg'&lt;br /&gt;
|-&lt;br /&gt;
| /usr/lib/nagios/plugins/ || Plugins&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Useful links ===&lt;br /&gt;
&lt;br /&gt;
[http://docs.icinga.org/latest/en/ Icinga documentation]&lt;br /&gt;
&amp;lt;section begin=testandreload /&amp;gt;&lt;br /&gt;
=== Testing Icinga's config and reloading: ===&lt;br /&gt;
&lt;br /&gt;
When you've made modifications to Icinga's config (you really should first back up the files you're modifying), you can run:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# /usr/sbin/icinga -v /etc/icinga/icinga.cfg&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
If this command returns &amp;quot;Total Warnings: 0&amp;quot; &amp;amp; &amp;quot;Total Errors: 0&amp;quot; you can then:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# service icinga reload&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;section end=testandreload /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Access ==&lt;br /&gt;
&lt;br /&gt;
Our Icinga installation is named 'Sentinel' which means &amp;quot;a soldier or guard whose job is to stand and keep watch&amp;quot;, you can find [https://sentinel.soylentnews.org/ Sentinel here] and login with your Keberos username and password.&lt;br /&gt;
&lt;br /&gt;
== Kerberized SSH connections ==&lt;br /&gt;
&lt;br /&gt;
We use AutoSSH to allow Icinga to connect to other nodes to execute commands and get services information back. &lt;br /&gt;
&lt;br /&gt;
Internally, we can use Kerberos to jump from one host to another our Icinga installation requires HTTP Kerberos auth (via https) but we've also set up AutoSSH which allows our Icinga instance to connect to other nodes passwordless &amp;amp; ssh key-less to fetch information.&lt;br /&gt;
&lt;br /&gt;
'''more information, show how we've setup the connections, etc'''&lt;br /&gt;
&lt;br /&gt;
== icinga.cfg ==&lt;br /&gt;
&lt;br /&gt;
The file '''/etc/icinga/icinga.cfg''' is heavily commented. I suggest you simply look it over.&lt;br /&gt;
&lt;br /&gt;
== Servers ==&lt;br /&gt;
&lt;br /&gt;
[http://docs.icinga.org/latest/en/objectdefinitions.html#host Icinga's &amp;quot;host&amp;quot; documentation]&lt;br /&gt;
&lt;br /&gt;
=== Adding a server ===&lt;br /&gt;
&lt;br /&gt;
Each server has a file in /etc/icinga/objects/servers/ which looks something like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define host{&lt;br /&gt;
        use                     generic-host            ; Name of host template to use&lt;br /&gt;
        host_name               carbon.li694-22         ; The server hostname (ensure it's in our DNS).&lt;br /&gt;
        alias                   carbon                  ; A shortname&lt;br /&gt;
        address                 carbon.li694-22         ; The server's address.&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Creating a new one (for instance, 'example.li694-22') should be straight forward, you simply copy carbon.li694-22 to example.li64-22:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''cp carbon.cfg example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once that's done, you can either edit the file manually with the editor of your choice or use sed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''sed -i 's/carbon/example/g' example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Modifying a server ===&lt;br /&gt;
&lt;br /&gt;
Simply edit the server object in /etc/icinga/objects/servers/&lt;br /&gt;
&lt;br /&gt;
=== Removing a server ===&lt;br /&gt;
&lt;br /&gt;
If you want to remove a server, remove the config and check '''/etc/icinga/objects/groups/hostgroups_icinga.cfg''' and remove any references to the server.&lt;br /&gt;
{{#lst:SystemAdministration/Icinga|testandreload}}&lt;br /&gt;
&lt;br /&gt;
== Host groups ==&lt;br /&gt;
&lt;br /&gt;
[http://docs.icinga.org/latest/en/objectdefinitions.html#objectdefinitions-hostgroup Icinga's documentation]&lt;br /&gt;
&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
&lt;br /&gt;
In Icinga we can group hosts, for instance &amp;quot;Ubuntu Servers&amp;quot; and &amp;quot;PostgreSQL servers&amp;quot; and so on. All of our servers are members of the 'all' host group, so instead of defining services checks for memory &amp;amp; harddisk usage (to name a few) per server, we simply define that check in the 'all' host group and effectively, all of our servers are now being monitored for memory &amp;amp; harddisk usage (and a lot more, check '''/etc/icinga/objects/groups/all.cfg''').&lt;br /&gt;
&lt;br /&gt;
One server can be a member of many host groups and we've got quite a few. We've got the &amp;quot;ubuntu-servers&amp;quot; group, the &amp;quot;postgresql-servers&amp;quot; group and a few more.&lt;br /&gt;
&lt;br /&gt;
=== Define a hostgroup ===&lt;br /&gt;
&lt;br /&gt;
We define host groups in '''/etc/icinga/objects/groups/hostgroup_icinga.cfg''', these look a lot like (comments in line):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
; Start with the define statement.&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  ubuntu-servers ; Let's give the group a name.&lt;br /&gt;
		alias           Ubuntu Servers ; Let's give it a &amp;quot;more&amp;quot; friendly name.&lt;br /&gt;
		members         boron.li694-22, helium.li694-22, carbon.li694-22, lithium.li694-22, nitrogen.li694-22, oxygen.li694-22, hydrogen.li694-22 ; It's members.&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  postgresql-servers ; Let's give the group a name.&lt;br /&gt;
                alias           PostgreSQL servers ; Let's give it a &amp;quot;more&amp;quot; friendly name.&lt;br /&gt;
                members         carbon.li694-22, boron.li694-22 ; It's members.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As you can no doubt see, the definitions are relatively straight forward. Let's say, we install PostgreSQL on our server by the name of &amp;quot;helium&amp;quot;; then we'd simply add helium.li694-22 as a member of the postgresql-servers group and voila, now helium's PostgreSQL is also monitored. (note: monitoring PostgreSQL in itself involves a few more steps which are omitted to keep the explanation simple).&lt;br /&gt;
&lt;br /&gt;
=== Removing a host group ===&lt;br /&gt;
&lt;br /&gt;
Simply remove the definition from '''/etc/icinga/objects/groups/hostgroup_icinga.cfg'''&lt;br /&gt;
&lt;br /&gt;
=== Adding a new host group ===&lt;br /&gt;
&lt;br /&gt;
Adding a new host group is simple, you copy one of the &amp;quot;hostgroup&amp;quot; definitions to the end of '''/etc/icinga/objects/groups/hostgroup_icinga.cfg''' and change the group's name, alias &amp;amp; you define which servers are a member. So let's say, you want to monitor webservers, you would add the following definition (note, we're already monitoring those, it's just an example):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# A list of our web servers&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  http-servers&lt;br /&gt;
                alias           HTTP servers&lt;br /&gt;
                members         hydrogen.li694-22, carbon.li694-22, boron.li694-22, beryllium.li694-22&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, this alone, won't work, currently we've only defined the host group but we haven't defined any services, let's do that in the next chapter.&lt;br /&gt;
&lt;br /&gt;
== Monitoring Services ==&lt;br /&gt;
&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
&lt;br /&gt;
=== Adding a service ===&lt;br /&gt;
&lt;br /&gt;
=== Modifying a service ===&lt;br /&gt;
&lt;br /&gt;
=== Removing a service ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== junk ===&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As you can see, we give each group a name, an alias (friendly name, mostly) &amp;amp; we define it's members. Pretty straight forward right? Let's move on to the fun part.&lt;br /&gt;
&lt;br /&gt;
Now instead of defining a service per server, we simply define a service per hostgroup, meaning; when we add an Ubuntu server we simply add it to the 'ubuntu-servers' host group and it'll be automatically monitored for updates, and such.&lt;br /&gt;
&lt;br /&gt;
The service definitions for hostgroups are in the same directory, let's take a look at the service definitions for the ubuntu-servers group:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/groups/ $ '''cat ubuntu.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define service{&lt;br /&gt;
	hostgroup_name			ubuntu-servers          ; Host group&lt;br /&gt;
        use                             generic-service         ; Name of service template to use&lt;br /&gt;
        service_description             APT Status              ; Service check name.&lt;br /&gt;
        check_command                   remote_one!check_apt    ; This is the command that's being executed.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Let's say, all Ubuntu servers also run a special daemon (let's called it &amp;quot;speciald&amp;quot; - I haven't got a lot of inspiration right now), we would add the following (make sure the command definition/plugin exists) to 'ubuntu.cfg':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define service{&lt;br /&gt;
	hostgroup_name			ubuntu-servers          ; Host group&lt;br /&gt;
        use                             generic-service         ; Name of service template to use&lt;br /&gt;
        service_description             Speciald Status         ; Service check name.&lt;br /&gt;
        check_command                   remote_one!check_speciald ; This is the command that's being executed.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and reload Icinga (after testing the configuration, first) and now, 'speciald' is being monitored on all Ubuntu servers.&lt;br /&gt;
&lt;br /&gt;
Note, we also have 'all.cfg' which powers the &amp;quot;All Servers Group&amp;quot; - in which, you guessed it, checks for every server are defined, e.g. ssh, disk space, etc.&lt;br /&gt;
{{#lst:SystemAdministration/Icinga|testandreload}}&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7268</id>
		<title>SystemAdministration/Icinga</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7268"/>
		<updated>2014-04-13T23:19:26Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Sentinel: Icinga / Server &amp;amp; Services Monitoring ==&lt;br /&gt;
&lt;br /&gt;
=== Important Directories ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Directory !! Description&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/groups || (service definitions for) Host Groups&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/servers || Server Definitions&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/templates || Various templates [http://docs.icinga.org/latest/en/sample-templates.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/contacts || Contact &amp;amp; time period config [http://docs.icinga.org/latest/en/sample-contacts.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/nagios-plugins/config/ || Plugin configs; be sure to checkout 'remote.cfg'&lt;br /&gt;
|-&lt;br /&gt;
| /usr/lib/nagios/plugins/ || Plugins&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Useful links ===&lt;br /&gt;
&lt;br /&gt;
[http://docs.icinga.org/latest/en/ Icinga documentation]&lt;br /&gt;
&amp;lt;section begin=testandreload /&amp;gt;&lt;br /&gt;
=== Testing Icinga's config and reloading: ===&lt;br /&gt;
&lt;br /&gt;
When you've made modifications to Icinga's config (you really should first back up the files you're modifying), you can run:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# /usr/sbin/icinga -v /etc/icinga/icinga.cfg&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
If this command returns &amp;quot;Total Warnings: 0&amp;quot; &amp;amp; &amp;quot;Total Errors: 0&amp;quot; you can then:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# service icinga reload&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;section end=testandreload /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Access ==&lt;br /&gt;
&lt;br /&gt;
Our Icinga installation is named 'Sentinel' which means &amp;quot;a soldier or guard whose job is to stand and keep watch&amp;quot;, you can find [https://sentinel.soylentnews.org/ Sentinel here] and login with your Keberos username and password.&lt;br /&gt;
&lt;br /&gt;
== Kerberized SSH connections ==&lt;br /&gt;
&lt;br /&gt;
We use AutoSSH to allow Icinga to connect to other nodes to execute commands and get services information back. &lt;br /&gt;
&lt;br /&gt;
Internally, we can use Kerberos to jump from one host to another our Icinga installation requires HTTP Kerberos auth (via https) but we've also set up AutoSSH which allows our Icinga instance to connect to other nodes passwordless &amp;amp; ssh key-less to fetch information.&lt;br /&gt;
&lt;br /&gt;
'''more information, show how we've setup the connections, etc'''&lt;br /&gt;
&lt;br /&gt;
== icinga.cfg ==&lt;br /&gt;
&lt;br /&gt;
The file '''/etc/icinga/icinga.cfg''' is heavily commented. I suggest you simply look it over.&lt;br /&gt;
&lt;br /&gt;
== Servers ==&lt;br /&gt;
&lt;br /&gt;
[http://docs.icinga.org/latest/en/objectdefinitions.html#host Icinga's &amp;quot;host&amp;quot; documentation]&lt;br /&gt;
&lt;br /&gt;
=== Adding a server ===&lt;br /&gt;
&lt;br /&gt;
Each server has a file in /etc/icinga/objects/servers/ which looks something like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define host{&lt;br /&gt;
        use                     generic-host            ; Name of host template to use&lt;br /&gt;
        host_name               carbon.li694-22         ; The server hostname (ensure it's in our DNS).&lt;br /&gt;
        alias                   carbon                  ; A shortname&lt;br /&gt;
        address                 carbon.li694-22         ; The server's address.&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Creating a new one (for instance, 'example.li694-22') should be straight forward, you simply copy carbon.li694-22 to example.li64-22:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''cp carbon.cfg example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once that's done, you can either edit the file manually with the editor of your choice or use sed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''sed -i 's/carbon/example/g' example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Modifying a server ===&lt;br /&gt;
&lt;br /&gt;
Simply edit the server object in /etc/icinga/objects/servers/&lt;br /&gt;
&lt;br /&gt;
=== Removing a server ===&lt;br /&gt;
&lt;br /&gt;
If you want to remove a server, remove the config and check '''/etc/icinga/objects/groups/hostgroups_icinga.cfg''' and remove any references to the server.&lt;br /&gt;
{{#lst:SystemAdministration/Icinga|testandreload}}&lt;br /&gt;
&lt;br /&gt;
== Host groups ==&lt;br /&gt;
&lt;br /&gt;
[http://docs.icinga.org/latest/en/objectdefinitions.html#objectdefinitions-hostgroup Icinga's documentation]&lt;br /&gt;
&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
&lt;br /&gt;
In Icinga we can group hosts, for instance &amp;quot;Ubuntu Servers&amp;quot; and &amp;quot;PostgreSQL servers&amp;quot; and so on. All of our servers are members of the 'all' host group, so instead of defining services checks for memory &amp;amp; harddisk usage (to name a few) per server, we simply define that check in the 'all' host group and effectively, all of our servers are now being monitored for memory &amp;amp; harddisk usage (and a lot more, check '''/etc/icinga/objects/groups/all.cfg''').&lt;br /&gt;
&lt;br /&gt;
One server can be a member of many host groups and we've got quite a few. We've got the &amp;quot;ubuntu-servers&amp;quot; group, the &amp;quot;postgresql-servers&amp;quot; group and a few more.&lt;br /&gt;
&lt;br /&gt;
=== Define a hostgroup ===&lt;br /&gt;
&lt;br /&gt;
We define host groups in '''/etc/icinga/objects/groups/hostgroup_icinga.cfg''', these look a lot like (comments in line):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
; Start with the define statement.&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  ubuntu-servers ; Let's give the group a name.&lt;br /&gt;
		alias           Ubuntu Servers ; Let's give it a &amp;quot;more&amp;quot; friendly name.&lt;br /&gt;
		members         boron.li694-22, helium.li694-22, carbon.li694-22, lithium.li694-22, nitrogen.li694-22, oxygen.li694-22, hydrogen.li694-22 ; It's members.&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  postgresql-servers ; Let's give the group a name.&lt;br /&gt;
                alias           PostgreSQL servers ; Let's give it a &amp;quot;more&amp;quot; friendly name.&lt;br /&gt;
                members         carbon.li694-22, boron.li694-22 ; It's members.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As you can no doubt see, the definitions are relatively straight forward. Let's say, we install PostgreSQL on our server by the name of &amp;quot;helium&amp;quot;; then we'd simply add helium.li694-22 as a member of the postgresql-servers group and voila, now helium's PostgreSQL is also monitored. (note: monitoring PostgreSQL in itself involves a few more steps which are omitted to keep the explanation simple).&lt;br /&gt;
&lt;br /&gt;
=== Removing a host group ===&lt;br /&gt;
&lt;br /&gt;
Simply remove the definition from '''/etc/icinga/objects/groups/hostgroup_icinga.cfg'''&lt;br /&gt;
&lt;br /&gt;
=== Adding a new host group ===&lt;br /&gt;
&lt;br /&gt;
Adding a new host group is simple, you copy one of the &amp;quot;hostgroup&amp;quot; definitions to the end of '''/etc/icinga/objects/groups/hostgroup_icinga.cfg''' and change the group's name, alias &amp;amp; you define which servers are a member. So let's say, you want to monitor webservers, you would add the following definition (note, we're already monitoring those, it's just an example):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# A list of our web servers&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  http-servers&lt;br /&gt;
                alias           HTTP servers&lt;br /&gt;
                members         hydrogen.li694-22, carbon.li694-22, boron.li694-22, beryllium.li694-22&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, this alone, won't work, currently we've only defined the host group but we haven't defined any services, let's do that in the next chapter.&lt;br /&gt;
&lt;br /&gt;
== Monitoring Services ==&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7267</id>
		<title>SystemAdministration/Icinga</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7267"/>
		<updated>2014-04-13T23:18:47Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: /* objects/groups */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Sentinel: Icinga / Server &amp;amp; Services Monitoring ==&lt;br /&gt;
&lt;br /&gt;
=== Important Directories ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Directory !! Description&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/groups || (service definitions for) Host Groups&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/servers || Server Definitions&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/templates || Various templates [http://docs.icinga.org/latest/en/sample-templates.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/contacts || Contact &amp;amp; time period config [http://docs.icinga.org/latest/en/sample-contacts.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/nagios-plugins/config/ || Plugin configs; be sure to checkout 'remote.cfg'&lt;br /&gt;
|-&lt;br /&gt;
| /usr/lib/nagios/plugins/ || Plugins&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Useful links ===&lt;br /&gt;
&lt;br /&gt;
[http://docs.icinga.org/latest/en/ Icinga documentation]&lt;br /&gt;
&amp;lt;section begin=testandreload /&amp;gt;&lt;br /&gt;
=== Testing Icinga's config and reloading: ===&lt;br /&gt;
&lt;br /&gt;
When you've made modifications to Icinga's config (you really should first back up the files you're modifying), you can run:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# /usr/sbin/icinga -v /etc/icinga/icinga.cfg&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
If this command returns &amp;quot;Total Warnings: 0&amp;quot; &amp;amp; &amp;quot;Total Errors: 0&amp;quot; you can then:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# service icinga reload&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;section end=testandreload /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Access ==&lt;br /&gt;
&lt;br /&gt;
Our Icinga installation is named 'Sentinel' which means &amp;quot;a soldier or guard whose job is to stand and keep watch&amp;quot;, you can find [https://sentinel.soylentnews.org/ Sentinel here] and login with your Keberos username and password.&lt;br /&gt;
&lt;br /&gt;
== Kerberized SSH connections ==&lt;br /&gt;
&lt;br /&gt;
We use AutoSSH to allow Icinga to connect to other nodes to execute commands and get services information back. &lt;br /&gt;
&lt;br /&gt;
Internally, we can use Kerberos to jump from one host to another our Icinga installation requires HTTP Kerberos auth (via https) but we've also set up AutoSSH which allows our Icinga instance to connect to other nodes passwordless &amp;amp; ssh key-less to fetch information.&lt;br /&gt;
&lt;br /&gt;
'''more information, show how we've setup the connections, etc'''&lt;br /&gt;
&lt;br /&gt;
== icinga.cfg ==&lt;br /&gt;
&lt;br /&gt;
The file '''/etc/icinga/icinga.cfg''' is heavily commented. I suggest you simply look it over.&lt;br /&gt;
&lt;br /&gt;
== Servers ==&lt;br /&gt;
&lt;br /&gt;
[http://docs.icinga.org/latest/en/objectdefinitions.html#host Icinga's &amp;quot;host&amp;quot; documentation]&lt;br /&gt;
&lt;br /&gt;
=== Adding a server ===&lt;br /&gt;
&lt;br /&gt;
Each server has a file in /etc/icinga/objects/servers/ which looks something like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define host{&lt;br /&gt;
        use                     generic-host            ; Name of host template to use&lt;br /&gt;
        host_name               carbon.li694-22         ; The server hostname (ensure it's in our DNS).&lt;br /&gt;
        alias                   carbon                  ; A shortname&lt;br /&gt;
        address                 carbon.li694-22         ; The server's address.&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Creating a new one (for instance, 'example.li694-22') should be straight forward, you simply copy carbon.li694-22 to example.li64-22:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''cp carbon.cfg example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once that's done, you can either edit the file manually with the editor of your choice or use sed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''sed -i 's/carbon/example/g' example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Modifying a server ===&lt;br /&gt;
&lt;br /&gt;
Simply edit the server object in /etc/icinga/objects/servers/&lt;br /&gt;
&lt;br /&gt;
=== Removing a server ===&lt;br /&gt;
&lt;br /&gt;
If you want to remove a server, remove the config and check '''/etc/icinga/objects/groups/hostgroups_icinga.cfg''' and remove any references to the server.&lt;br /&gt;
{{#lst:SystemAdministration/Icinga|testandreload}}&lt;br /&gt;
&lt;br /&gt;
== Host groups ==&lt;br /&gt;
&lt;br /&gt;
[http://docs.icinga.org/latest/en/objectdefinitions.html#objectdefinitions-hostgroup Icinga's documentation]&lt;br /&gt;
&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
&lt;br /&gt;
In Icinga we can group hosts, for instance &amp;quot;Ubuntu Servers&amp;quot; and &amp;quot;PostgreSQL servers&amp;quot; and so on. All of our servers are members of the 'all' host group, so instead of defining services checks for memory &amp;amp; harddisk usage (to name a few) per server, we simply define that check in the 'all' host group and effectively, all of our servers are now being monitored for memory &amp;amp; harddisk usage (and a lot more, check '''/etc/icinga/objects/groups/all.cfg''').&lt;br /&gt;
&lt;br /&gt;
One server can be a member of many host groups and we've got quite a few. We've got the &amp;quot;ubuntu-servers&amp;quot; group, the &amp;quot;postgresql-servers&amp;quot; group and a few more.&lt;br /&gt;
&lt;br /&gt;
=== Define a hostgroup ===&lt;br /&gt;
&lt;br /&gt;
We define host groups in '''/etc/icinga/objects/groups/hostgroup_icinga.cfg''', these look a lot like (comments in line):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
; Start with the define statement.&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  ubuntu-servers ; Let's give the group a name.&lt;br /&gt;
		alias           Ubuntu Servers ; Let's give it a &amp;quot;more&amp;quot; friendly name.&lt;br /&gt;
		members         boron.li694-22, helium.li694-22, carbon.li694-22, lithium.li694-22, nitrogen.li694-22, oxygen.li694-22, hydrogen.li694-22 ; It's members.&lt;br /&gt;
        }&lt;br /&gt;
&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  postgresql-servers ; Let's give the group a name.&lt;br /&gt;
                alias           PostgreSQL servers ; Let's give it a &amp;quot;more&amp;quot; friendly name.&lt;br /&gt;
                members         carbon.li694-22, boron.li694-22 ; It's members.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As you can no doubt see, the definitions are relatively straight forward. Let's say, we install PostgreSQL on our server by the name of &amp;quot;helium&amp;quot;; then we'd simply add helium.li694-22 as a member of the postgresql-servers group and voila, now helium's PostgreSQL is also monitored. (note: monitoring PostgreSQL in itself involves a few more steps which are omitted to keep the explanation simple).&lt;br /&gt;
&lt;br /&gt;
=== Removing a host group ===&lt;br /&gt;
&lt;br /&gt;
Simply remove the definition from '''/etc/icinga/objects/groups/hostgroup_icinga.cfg'''&lt;br /&gt;
&lt;br /&gt;
=== Adding a new host group ===&lt;br /&gt;
&lt;br /&gt;
Adding a new host group is simple, you copy one of the &amp;quot;hostgroup&amp;quot; definitions to the end of '''/etc/icinga/objects/groups/hostgroup_icinga.cfg''' and change the group's name, alias &amp;amp; you define which servers are a member. So let's say, you want to monitor webservers, you would add the following definition (note, we're already monitoring those, it's just an example):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# A list of our web servers&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  http-servers&lt;br /&gt;
                alias           HTTP servers&lt;br /&gt;
                members         hydrogen.li694-22, carbon.li694-22, boron.li694-22, beryllium.li694-22&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now, this alone, won't work, currently we've only defined the host group but we haven't defined any services, let's do that in the next chapter.&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7266</id>
		<title>SystemAdministration/Icinga</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7266"/>
		<updated>2014-04-13T23:04:01Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: /* Adding a server */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Sentinel: Icinga / Server &amp;amp; Services Monitoring ==&lt;br /&gt;
&lt;br /&gt;
=== Important Directories ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Directory !! Description&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/groups || (service definitions for) Host Groups&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/servers || Server Definitions&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/templates || Various templates [http://docs.icinga.org/latest/en/sample-templates.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/contacts || Contact &amp;amp; time period config [http://docs.icinga.org/latest/en/sample-contacts.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/nagios-plugins/config/ || Plugin configs; be sure to checkout 'remote.cfg'&lt;br /&gt;
|-&lt;br /&gt;
| /usr/lib/nagios/plugins/ || Plugins&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Useful links ===&lt;br /&gt;
&lt;br /&gt;
[http://docs.icinga.org/latest/en/ Icinga documentation]&lt;br /&gt;
&amp;lt;section begin=testandreload /&amp;gt;&lt;br /&gt;
=== Testing Icinga's config and reloading: ===&lt;br /&gt;
&lt;br /&gt;
When you've made modifications to Icinga's config (you really should first back up the files you're modifying), you can run:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# /usr/sbin/icinga -v /etc/icinga/icinga.cfg&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
If this command returns &amp;quot;Total Warnings: 0&amp;quot; &amp;amp; &amp;quot;Total Errors: 0&amp;quot; you can then:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# service icinga reload&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;section end=testandreload /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Access ==&lt;br /&gt;
&lt;br /&gt;
Our Icinga installation is named 'Sentinel' which means &amp;quot;a soldier or guard whose job is to stand and keep watch&amp;quot;, you can find [https://sentinel.soylentnews.org/ Sentinel here] and login with your Keberos username and password.&lt;br /&gt;
&lt;br /&gt;
== Kerberized SSH connections ==&lt;br /&gt;
&lt;br /&gt;
We use AutoSSH to allow Icinga to connect to other nodes to execute commands and get services information back. &lt;br /&gt;
&lt;br /&gt;
Internally, we can use Kerberos to jump from one host to another our Icinga installation requires HTTP Kerberos auth (via https) but we've also set up AutoSSH which allows our Icinga instance to connect to other nodes passwordless &amp;amp; ssh key-less to fetch information.&lt;br /&gt;
&lt;br /&gt;
'''more information, show how we've setup the connections, etc'''&lt;br /&gt;
&lt;br /&gt;
== icinga.cfg ==&lt;br /&gt;
&lt;br /&gt;
The file '''/etc/icinga/icinga.cfg''' is heavily commented. I suggest you simply look it over.&lt;br /&gt;
&lt;br /&gt;
== Servers ==&lt;br /&gt;
&lt;br /&gt;
[http://docs.icinga.org/latest/en/objectdefinitions.html#host Icinga's &amp;quot;host&amp;quot; documentation]&lt;br /&gt;
&lt;br /&gt;
=== Adding a server ===&lt;br /&gt;
&lt;br /&gt;
Each server has a file in /etc/icinga/objects/servers/ which looks something like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define host{&lt;br /&gt;
        use                     generic-host            ; Name of host template to use&lt;br /&gt;
        host_name               carbon.li694-22         ; The server hostname (ensure it's in our DNS).&lt;br /&gt;
        alias                   carbon                  ; A shortname&lt;br /&gt;
        address                 carbon.li694-22         ; The server's address.&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Creating a new one (for instance, 'example.li694-22') should be straight forward, you simply copy carbon.li694-22 to example.li64-22:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''cp carbon.cfg example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once that's done, you can either edit the file manually with the editor of your choice or use sed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''sed -i 's/carbon/example/g' example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Modifying a server ===&lt;br /&gt;
&lt;br /&gt;
Simply edit the server object in /etc/icinga/objects/servers/&lt;br /&gt;
&lt;br /&gt;
=== Removing a server ===&lt;br /&gt;
&lt;br /&gt;
If you want to remove a server, remove the config and check '''/etc/icinga/objects/groups/hostgroups_icinga.cfg''' and remove any references to the server.&lt;br /&gt;
{{#lst:SystemAdministration/Icinga|testandreload}}&lt;br /&gt;
&lt;br /&gt;
== objects/groups ==&lt;br /&gt;
&lt;br /&gt;
Firstly, we've got objects named &amp;quot;host groups&amp;quot; which are simple groups with several servers, for instance all Ubuntu servers belong to the 'ubuntu-servers' group and all servers which have a PostgreSQL service running belong to the 'postgresql-servers' group. One host/server can belong to many groups. All these groups are defined in '''/etc/icinga/objects/groups/hostgroups_icinga.cfg''' the members of these groups are also defined here.&lt;br /&gt;
&lt;br /&gt;
Let's take the ubuntu-servers &amp;amp; postgresql-servers (respectively) as examples:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/groups/ $ '''cat hostgroups_icinga.cfg'''&amp;lt;/code&amp;gt; [note: only copying 'ubuntu-servers' and 'postgresql-servers' definitions out of file]&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''ubuntu-servers'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  ubuntu-servers&lt;br /&gt;
		alias           Ubuntu Servers&lt;br /&gt;
		members         boron.li694-22, helium.li694-22, carbon.li694-22, lithium.li694-22, nitrogen.li694-22, oxygen.li694-22, hydrogen.li694-22&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''postgresql-servers'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  postgresql-servers&lt;br /&gt;
                alias           PostgreSQL servers&lt;br /&gt;
                members         carbon.li694-22, boron.li694-22&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As you can see, we give each group a name, an alias (friendly name, mostly) &amp;amp; we define it's members. Pretty straight forward right? Let's move on to the fun part.&lt;br /&gt;
&lt;br /&gt;
Now instead of defining a service per server, we simply define a service per hostgroup, meaning; when we add an Ubuntu server we simply add it to the 'ubuntu-servers' host group and it'll be automatically monitored for updates, and such.&lt;br /&gt;
&lt;br /&gt;
The service definitions for hostgroups are in the same directory, let's take a look at the service definitions for the ubuntu-servers group:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/groups/ $ '''cat ubuntu.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define service{&lt;br /&gt;
	hostgroup_name			ubuntu-servers          ; Host group&lt;br /&gt;
        use                             generic-service         ; Name of service template to use&lt;br /&gt;
        service_description             APT Status              ; Service check name.&lt;br /&gt;
        check_command                   remote_one!check_apt    ; This is the command that's being executed.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Let's say, all Ubuntu servers also run a special daemon (let's called it &amp;quot;speciald&amp;quot; - I haven't got a lot of inspiration right now), we would add the following (make sure the command definition/plugin exists) to 'ubuntu.cfg':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define service{&lt;br /&gt;
	hostgroup_name			ubuntu-servers          ; Host group&lt;br /&gt;
        use                             generic-service         ; Name of service template to use&lt;br /&gt;
        service_description             Speciald Status         ; Service check name.&lt;br /&gt;
        check_command                   remote_one!check_speciald ; This is the command that's being executed.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and reload Icinga (after testing the configuration, first) and now, 'speciald' is being monitored on all Ubuntu servers.&lt;br /&gt;
&lt;br /&gt;
Note, we also have 'all.cfg' which powers the &amp;quot;All Servers Group&amp;quot; - in which, you guessed it, checks for every server are defined, e.g. ssh, disk space, etc.&lt;br /&gt;
{{#lst:SystemAdministration/Icinga|testandreload}}&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7265</id>
		<title>SystemAdministration/Icinga</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7265"/>
		<updated>2014-04-13T23:03:09Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: /* Sentinel: Icinga / Server &amp;amp; Services Monitoring */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Sentinel: Icinga / Server &amp;amp; Services Monitoring ==&lt;br /&gt;
&lt;br /&gt;
=== Important Directories ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Directory !! Description&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/groups || (service definitions for) Host Groups&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/servers || Server Definitions&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/templates || Various templates [http://docs.icinga.org/latest/en/sample-templates.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/contacts || Contact &amp;amp; time period config [http://docs.icinga.org/latest/en/sample-contacts.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/nagios-plugins/config/ || Plugin configs; be sure to checkout 'remote.cfg'&lt;br /&gt;
|-&lt;br /&gt;
| /usr/lib/nagios/plugins/ || Plugins&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Useful links ===&lt;br /&gt;
&lt;br /&gt;
[http://docs.icinga.org/latest/en/ Icinga documentation]&lt;br /&gt;
&amp;lt;section begin=testandreload /&amp;gt;&lt;br /&gt;
=== Testing Icinga's config and reloading: ===&lt;br /&gt;
&lt;br /&gt;
When you've made modifications to Icinga's config (you really should first back up the files you're modifying), you can run:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# /usr/sbin/icinga -v /etc/icinga/icinga.cfg&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
If this command returns &amp;quot;Total Warnings: 0&amp;quot; &amp;amp; &amp;quot;Total Errors: 0&amp;quot; you can then:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# service icinga reload&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;section end=testandreload /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Access ==&lt;br /&gt;
&lt;br /&gt;
Our Icinga installation is named 'Sentinel' which means &amp;quot;a soldier or guard whose job is to stand and keep watch&amp;quot;, you can find [https://sentinel.soylentnews.org/ Sentinel here] and login with your Keberos username and password.&lt;br /&gt;
&lt;br /&gt;
== Kerberized SSH connections ==&lt;br /&gt;
&lt;br /&gt;
We use AutoSSH to allow Icinga to connect to other nodes to execute commands and get services information back. &lt;br /&gt;
&lt;br /&gt;
Internally, we can use Kerberos to jump from one host to another our Icinga installation requires HTTP Kerberos auth (via https) but we've also set up AutoSSH which allows our Icinga instance to connect to other nodes passwordless &amp;amp; ssh key-less to fetch information.&lt;br /&gt;
&lt;br /&gt;
'''more information, show how we've setup the connections, etc'''&lt;br /&gt;
&lt;br /&gt;
== icinga.cfg ==&lt;br /&gt;
&lt;br /&gt;
The file '''/etc/icinga/icinga.cfg''' is heavily commented. I suggest you simply look it over.&lt;br /&gt;
&lt;br /&gt;
== Servers ==&lt;br /&gt;
&lt;br /&gt;
=== Adding a server ===&lt;br /&gt;
&lt;br /&gt;
Each server has a file in /etc/icinga/objects/servers/ which looks something like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define host{&lt;br /&gt;
        use                     generic-host            ; Name of host template to use&lt;br /&gt;
        host_name               carbon.li694-22         ; The server hostname (ensure it's in our DNS).&lt;br /&gt;
        alias                   carbon                  ; A shortname&lt;br /&gt;
        address                 carbon.li694-22         ; The server's address.&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Creating a new one (for instance, 'example.li694-22') should be straight forward, you simply copy carbon.li694-22 to example.li64-22:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''cp carbon.cfg example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once that's done, you can either edit the file manually with the editor of your choice or use sed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''sed -i 's/carbon/example/g' example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Modifying a server ===&lt;br /&gt;
&lt;br /&gt;
Simply edit the server object in /etc/icinga/objects/servers/&lt;br /&gt;
&lt;br /&gt;
=== Removing a server ===&lt;br /&gt;
&lt;br /&gt;
If you want to remove a server, remove the config and check '''/etc/icinga/objects/groups/hostgroups_icinga.cfg''' and remove any references to the server.&lt;br /&gt;
{{#lst:SystemAdministration/Icinga|testandreload}}&lt;br /&gt;
&lt;br /&gt;
== objects/groups ==&lt;br /&gt;
&lt;br /&gt;
Firstly, we've got objects named &amp;quot;host groups&amp;quot; which are simple groups with several servers, for instance all Ubuntu servers belong to the 'ubuntu-servers' group and all servers which have a PostgreSQL service running belong to the 'postgresql-servers' group. One host/server can belong to many groups. All these groups are defined in '''/etc/icinga/objects/groups/hostgroups_icinga.cfg''' the members of these groups are also defined here.&lt;br /&gt;
&lt;br /&gt;
Let's take the ubuntu-servers &amp;amp; postgresql-servers (respectively) as examples:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/groups/ $ '''cat hostgroups_icinga.cfg'''&amp;lt;/code&amp;gt; [note: only copying 'ubuntu-servers' and 'postgresql-servers' definitions out of file]&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''ubuntu-servers'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  ubuntu-servers&lt;br /&gt;
		alias           Ubuntu Servers&lt;br /&gt;
		members         boron.li694-22, helium.li694-22, carbon.li694-22, lithium.li694-22, nitrogen.li694-22, oxygen.li694-22, hydrogen.li694-22&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''postgresql-servers'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  postgresql-servers&lt;br /&gt;
                alias           PostgreSQL servers&lt;br /&gt;
                members         carbon.li694-22, boron.li694-22&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As you can see, we give each group a name, an alias (friendly name, mostly) &amp;amp; we define it's members. Pretty straight forward right? Let's move on to the fun part.&lt;br /&gt;
&lt;br /&gt;
Now instead of defining a service per server, we simply define a service per hostgroup, meaning; when we add an Ubuntu server we simply add it to the 'ubuntu-servers' host group and it'll be automatically monitored for updates, and such.&lt;br /&gt;
&lt;br /&gt;
The service definitions for hostgroups are in the same directory, let's take a look at the service definitions for the ubuntu-servers group:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/groups/ $ '''cat ubuntu.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define service{&lt;br /&gt;
	hostgroup_name			ubuntu-servers          ; Host group&lt;br /&gt;
        use                             generic-service         ; Name of service template to use&lt;br /&gt;
        service_description             APT Status              ; Service check name.&lt;br /&gt;
        check_command                   remote_one!check_apt    ; This is the command that's being executed.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Let's say, all Ubuntu servers also run a special daemon (let's called it &amp;quot;speciald&amp;quot; - I haven't got a lot of inspiration right now), we would add the following (make sure the command definition/plugin exists) to 'ubuntu.cfg':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define service{&lt;br /&gt;
	hostgroup_name			ubuntu-servers          ; Host group&lt;br /&gt;
        use                             generic-service         ; Name of service template to use&lt;br /&gt;
        service_description             Speciald Status         ; Service check name.&lt;br /&gt;
        check_command                   remote_one!check_speciald ; This is the command that's being executed.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and reload Icinga (after testing the configuration, first) and now, 'speciald' is being monitored on all Ubuntu servers.&lt;br /&gt;
&lt;br /&gt;
Note, we also have 'all.cfg' which powers the &amp;quot;All Servers Group&amp;quot; - in which, you guessed it, checks for every server are defined, e.g. ssh, disk space, etc.&lt;br /&gt;
{{#lst:SystemAdministration/Icinga|testandreload}}&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7264</id>
		<title>SystemAdministration/Icinga</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7264"/>
		<updated>2014-04-13T23:01:37Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: /* objects/groups */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Sentinel: Icinga / Server &amp;amp; Services Monitoring ==&lt;br /&gt;
&lt;br /&gt;
=== Important Directories ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Directory !! Description&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/groups || (service definitions for) Host Groups&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/servers || Server Definitions&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/templates || Various templates [http://docs.icinga.org/latest/en/sample-templates.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/contacts || Contact &amp;amp; time period config [http://docs.icinga.org/latest/en/sample-contacts.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/nagios-plugins/config/ || Plugin configs; be sure to checkout 'remote.cfg'&lt;br /&gt;
|-&lt;br /&gt;
| /usr/lib/nagios/plugins/ || Plugins&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section begin=testandreload /&amp;gt;&lt;br /&gt;
=== Testing Icinga's config and reloading: ===&lt;br /&gt;
&lt;br /&gt;
When you've made modifications to Icinga's config (you really should first back up the files you're modifying), you can run:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# /usr/sbin/icinga -v /etc/icinga/icinga.cfg&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
If this command returns &amp;quot;Total Warnings: 0&amp;quot; &amp;amp; &amp;quot;Total Errors: 0&amp;quot; you can then:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# service icinga reload&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;section end=testandreload /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Access ==&lt;br /&gt;
&lt;br /&gt;
Our Icinga installation is named 'Sentinel' which means &amp;quot;a soldier or guard whose job is to stand and keep watch&amp;quot;, you can find [https://sentinel.soylentnews.org/ Sentinel here] and login with your Keberos username and password.&lt;br /&gt;
&lt;br /&gt;
== Kerberized SSH connections ==&lt;br /&gt;
&lt;br /&gt;
We use AutoSSH to allow Icinga to connect to other nodes to execute commands and get services information back. &lt;br /&gt;
&lt;br /&gt;
Internally, we can use Kerberos to jump from one host to another our Icinga installation requires HTTP Kerberos auth (via https) but we've also set up AutoSSH which allows our Icinga instance to connect to other nodes passwordless &amp;amp; ssh key-less to fetch information.&lt;br /&gt;
&lt;br /&gt;
'''more information, show how we've setup the connections, etc'''&lt;br /&gt;
&lt;br /&gt;
== icinga.cfg ==&lt;br /&gt;
&lt;br /&gt;
The file '''/etc/icinga/icinga.cfg''' is heavily commented. I suggest you simply look it over.&lt;br /&gt;
&lt;br /&gt;
== Servers ==&lt;br /&gt;
&lt;br /&gt;
=== Adding a server ===&lt;br /&gt;
&lt;br /&gt;
Each server has a file in /etc/icinga/objects/servers/ which looks something like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define host{&lt;br /&gt;
        use                     generic-host            ; Name of host template to use&lt;br /&gt;
        host_name               carbon.li694-22         ; The server hostname (ensure it's in our DNS).&lt;br /&gt;
        alias                   carbon                  ; A shortname&lt;br /&gt;
        address                 carbon.li694-22         ; The server's address.&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Creating a new one (for instance, 'example.li694-22') should be straight forward, you simply copy carbon.li694-22 to example.li64-22:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''cp carbon.cfg example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once that's done, you can either edit the file manually with the editor of your choice or use sed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''sed -i 's/carbon/example/g' example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Modifying a server ===&lt;br /&gt;
&lt;br /&gt;
Simply edit the server object in /etc/icinga/objects/servers/&lt;br /&gt;
&lt;br /&gt;
=== Removing a server ===&lt;br /&gt;
&lt;br /&gt;
If you want to remove a server, remove the config and check '''/etc/icinga/objects/groups/hostgroups_icinga.cfg''' and remove any references to the server.&lt;br /&gt;
{{#lst:SystemAdministration/Icinga|testandreload}}&lt;br /&gt;
&lt;br /&gt;
== objects/groups ==&lt;br /&gt;
&lt;br /&gt;
Firstly, we've got objects named &amp;quot;host groups&amp;quot; which are simple groups with several servers, for instance all Ubuntu servers belong to the 'ubuntu-servers' group and all servers which have a PostgreSQL service running belong to the 'postgresql-servers' group. One host/server can belong to many groups. All these groups are defined in '''/etc/icinga/objects/groups/hostgroups_icinga.cfg''' the members of these groups are also defined here.&lt;br /&gt;
&lt;br /&gt;
Let's take the ubuntu-servers &amp;amp; postgresql-servers (respectively) as examples:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/groups/ $ '''cat hostgroups_icinga.cfg'''&amp;lt;/code&amp;gt; [note: only copying 'ubuntu-servers' and 'postgresql-servers' definitions out of file]&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''ubuntu-servers'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  ubuntu-servers&lt;br /&gt;
		alias           Ubuntu Servers&lt;br /&gt;
		members         boron.li694-22, helium.li694-22, carbon.li694-22, lithium.li694-22, nitrogen.li694-22, oxygen.li694-22, hydrogen.li694-22&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''postgresql-servers'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  postgresql-servers&lt;br /&gt;
                alias           PostgreSQL servers&lt;br /&gt;
                members         carbon.li694-22, boron.li694-22&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As you can see, we give each group a name, an alias (friendly name, mostly) &amp;amp; we define it's members. Pretty straight forward right? Let's move on to the fun part.&lt;br /&gt;
&lt;br /&gt;
Now instead of defining a service per server, we simply define a service per hostgroup, meaning; when we add an Ubuntu server we simply add it to the 'ubuntu-servers' host group and it'll be automatically monitored for updates, and such.&lt;br /&gt;
&lt;br /&gt;
The service definitions for hostgroups are in the same directory, let's take a look at the service definitions for the ubuntu-servers group:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/groups/ $ '''cat ubuntu.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define service{&lt;br /&gt;
	hostgroup_name			ubuntu-servers          ; Host group&lt;br /&gt;
        use                             generic-service         ; Name of service template to use&lt;br /&gt;
        service_description             APT Status              ; Service check name.&lt;br /&gt;
        check_command                   remote_one!check_apt    ; This is the command that's being executed.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Let's say, all Ubuntu servers also run a special daemon (let's called it &amp;quot;speciald&amp;quot; - I haven't got a lot of inspiration right now), we would add the following (make sure the command definition/plugin exists) to 'ubuntu.cfg':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define service{&lt;br /&gt;
	hostgroup_name			ubuntu-servers          ; Host group&lt;br /&gt;
        use                             generic-service         ; Name of service template to use&lt;br /&gt;
        service_description             Speciald Status         ; Service check name.&lt;br /&gt;
        check_command                   remote_one!check_speciald ; This is the command that's being executed.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and reload Icinga (after testing the configuration, first) and now, 'speciald' is being monitored on all Ubuntu servers.&lt;br /&gt;
&lt;br /&gt;
Note, we also have 'all.cfg' which powers the &amp;quot;All Servers Group&amp;quot; - in which, you guessed it, checks for every server are defined, e.g. ssh, disk space, etc.&lt;br /&gt;
{{#lst:SystemAdministration/Icinga|testandreload}}&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7263</id>
		<title>SystemAdministration/Icinga</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7263"/>
		<updated>2014-04-13T23:01:17Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: /* Servers */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Sentinel: Icinga / Server &amp;amp; Services Monitoring ==&lt;br /&gt;
&lt;br /&gt;
=== Important Directories ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Directory !! Description&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/groups || (service definitions for) Host Groups&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/servers || Server Definitions&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/templates || Various templates [http://docs.icinga.org/latest/en/sample-templates.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/contacts || Contact &amp;amp; time period config [http://docs.icinga.org/latest/en/sample-contacts.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/nagios-plugins/config/ || Plugin configs; be sure to checkout 'remote.cfg'&lt;br /&gt;
|-&lt;br /&gt;
| /usr/lib/nagios/plugins/ || Plugins&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section begin=testandreload /&amp;gt;&lt;br /&gt;
=== Testing Icinga's config and reloading: ===&lt;br /&gt;
&lt;br /&gt;
When you've made modifications to Icinga's config (you really should first back up the files you're modifying), you can run:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# /usr/sbin/icinga -v /etc/icinga/icinga.cfg&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
If this command returns &amp;quot;Total Warnings: 0&amp;quot; &amp;amp; &amp;quot;Total Errors: 0&amp;quot; you can then:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# service icinga reload&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;section end=testandreload /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Access ==&lt;br /&gt;
&lt;br /&gt;
Our Icinga installation is named 'Sentinel' which means &amp;quot;a soldier or guard whose job is to stand and keep watch&amp;quot;, you can find [https://sentinel.soylentnews.org/ Sentinel here] and login with your Keberos username and password.&lt;br /&gt;
&lt;br /&gt;
== Kerberized SSH connections ==&lt;br /&gt;
&lt;br /&gt;
We use AutoSSH to allow Icinga to connect to other nodes to execute commands and get services information back. &lt;br /&gt;
&lt;br /&gt;
Internally, we can use Kerberos to jump from one host to another our Icinga installation requires HTTP Kerberos auth (via https) but we've also set up AutoSSH which allows our Icinga instance to connect to other nodes passwordless &amp;amp; ssh key-less to fetch information.&lt;br /&gt;
&lt;br /&gt;
'''more information, show how we've setup the connections, etc'''&lt;br /&gt;
&lt;br /&gt;
== icinga.cfg ==&lt;br /&gt;
&lt;br /&gt;
The file '''/etc/icinga/icinga.cfg''' is heavily commented. I suggest you simply look it over.&lt;br /&gt;
&lt;br /&gt;
== Servers ==&lt;br /&gt;
&lt;br /&gt;
=== Adding a server ===&lt;br /&gt;
&lt;br /&gt;
Each server has a file in /etc/icinga/objects/servers/ which looks something like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define host{&lt;br /&gt;
        use                     generic-host            ; Name of host template to use&lt;br /&gt;
        host_name               carbon.li694-22         ; The server hostname (ensure it's in our DNS).&lt;br /&gt;
        alias                   carbon                  ; A shortname&lt;br /&gt;
        address                 carbon.li694-22         ; The server's address.&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Creating a new one (for instance, 'example.li694-22') should be straight forward, you simply copy carbon.li694-22 to example.li64-22:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''cp carbon.cfg example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once that's done, you can either edit the file manually with the editor of your choice or use sed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''sed -i 's/carbon/example/g' example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Modifying a server ===&lt;br /&gt;
&lt;br /&gt;
Simply edit the server object in /etc/icinga/objects/servers/&lt;br /&gt;
&lt;br /&gt;
=== Removing a server ===&lt;br /&gt;
&lt;br /&gt;
If you want to remove a server, remove the config and check '''/etc/icinga/objects/groups/hostgroups_icinga.cfg''' and remove any references to the server.&lt;br /&gt;
{{#lst:SystemAdministration/Icinga|testandreload}}&lt;br /&gt;
&lt;br /&gt;
== objects/groups ==&lt;br /&gt;
&lt;br /&gt;
Firstly, we've got objects named &amp;quot;host groups&amp;quot; which are simple groups with several servers, for instance all Ubuntu servers belong to the 'ubuntu-servers' group and all servers which have a PostgreSQL service running belong to the 'postgresql-servers' group. One host/server can belong to many groups. All these groups are defined in '''/etc/icinga/objects/groups/hostgroups_icinga.cfg''' the members of these groups are also defined here.&lt;br /&gt;
&lt;br /&gt;
Let's take the ubuntu-servers &amp;amp; postgresql-servers (respectively) as examples:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/groups/ $ '''cat hostgroups_icinga.cfg'''&amp;lt;/code&amp;gt; [note: only copying 'ubuntu-servers' and 'postgresql-servers' definitions out of file]&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''ubuntu-servers'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  ubuntu-servers&lt;br /&gt;
		alias           Ubuntu Servers&lt;br /&gt;
		members         boron.li694-22, helium.li694-22, carbon.li694-22, lithium.li694-22, nitrogen.li694-22, oxygen.li694-22, hydrogen.li694-22&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''postgresql-servers'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  postgresql-servers&lt;br /&gt;
                alias           PostgreSQL servers&lt;br /&gt;
                members         carbon.li694-22, boron.li694-22&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As you can see, we give each group a name, an alias (friendly name, mostly) &amp;amp; we define it's members. Pretty straight forward right? Let's move on to the fun part.&lt;br /&gt;
&lt;br /&gt;
Now instead of defining a service per server, we simply define a service per hostgroup, meaning; when we add an Ubuntu server we simply add it to the 'ubuntu-servers' host group and it'll be automatically monitored for updates, and such.&lt;br /&gt;
&lt;br /&gt;
The service definitions for hostgroups are in the same directory, let's take a look at the service definitions for the ubuntu-servers group:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/groups/ $ '''cat ubuntu.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define service{&lt;br /&gt;
	hostgroup_name			ubuntu-servers          ; Host group&lt;br /&gt;
        use                             generic-service         ; Name of service template to use&lt;br /&gt;
        service_description             APT Status              ; Service check name.&lt;br /&gt;
        check_command                   remote_one!check_apt    ; This is the command that's being executed.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Let's say, all Ubuntu servers also run a special daemon (let's called it &amp;quot;speciald&amp;quot; - I haven't got a lot of inspiration right now), we would add the following (make sure the command definition/plugin exists) to 'ubuntu.cfg':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define service{&lt;br /&gt;
	hostgroup_name			ubuntu-servers          ; Host group&lt;br /&gt;
        use                             generic-service         ; Name of service template to use&lt;br /&gt;
        service_description             Speciald Status         ; Service check name.&lt;br /&gt;
        check_command                   remote_one!check_speciald ; This is the command that's being executed.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and reload Icinga (after testing the configuration, first) and now, 'speciald' is being monitored on all Ubuntu servers.&lt;br /&gt;
&lt;br /&gt;
Note, we also have 'all.cfg' which powers the &amp;quot;All Servers Group&amp;quot; - in which, you guessed it, checks for every server are defined, e.g. ssh, disk space, etc.&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7262</id>
		<title>SystemAdministration/Icinga</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7262"/>
		<updated>2014-04-13T23:00:21Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: /* Sentinel: Icinga / Server &amp;amp; Services Monitoring */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Sentinel: Icinga / Server &amp;amp; Services Monitoring ==&lt;br /&gt;
&lt;br /&gt;
=== Important Directories ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Directory !! Description&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/groups || (service definitions for) Host Groups&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/servers || Server Definitions&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/templates || Various templates [http://docs.icinga.org/latest/en/sample-templates.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/contacts || Contact &amp;amp; time period config [http://docs.icinga.org/latest/en/sample-contacts.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/nagios-plugins/config/ || Plugin configs; be sure to checkout 'remote.cfg'&lt;br /&gt;
|-&lt;br /&gt;
| /usr/lib/nagios/plugins/ || Plugins&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;section begin=testandreload /&amp;gt;&lt;br /&gt;
=== Testing Icinga's config and reloading: ===&lt;br /&gt;
&lt;br /&gt;
When you've made modifications to Icinga's config (you really should first back up the files you're modifying), you can run:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# /usr/sbin/icinga -v /etc/icinga/icinga.cfg&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
If this command returns &amp;quot;Total Warnings: 0&amp;quot; &amp;amp; &amp;quot;Total Errors: 0&amp;quot; you can then:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# service icinga reload&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;section end=testandreload /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Access ==&lt;br /&gt;
&lt;br /&gt;
Our Icinga installation is named 'Sentinel' which means &amp;quot;a soldier or guard whose job is to stand and keep watch&amp;quot;, you can find [https://sentinel.soylentnews.org/ Sentinel here] and login with your Keberos username and password.&lt;br /&gt;
&lt;br /&gt;
== Kerberized SSH connections ==&lt;br /&gt;
&lt;br /&gt;
We use AutoSSH to allow Icinga to connect to other nodes to execute commands and get services information back. &lt;br /&gt;
&lt;br /&gt;
Internally, we can use Kerberos to jump from one host to another our Icinga installation requires HTTP Kerberos auth (via https) but we've also set up AutoSSH which allows our Icinga instance to connect to other nodes passwordless &amp;amp; ssh key-less to fetch information.&lt;br /&gt;
&lt;br /&gt;
'''more information, show how we've setup the connections, etc'''&lt;br /&gt;
&lt;br /&gt;
== icinga.cfg ==&lt;br /&gt;
&lt;br /&gt;
The file '''/etc/icinga/icinga.cfg''' is heavily commented. I suggest you simply look it over.&lt;br /&gt;
&lt;br /&gt;
== Servers ==&lt;br /&gt;
&lt;br /&gt;
=== Adding a server ===&lt;br /&gt;
&lt;br /&gt;
Each server has a file in /etc/icinga/objects/servers/ which looks something like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define host{&lt;br /&gt;
        use                     generic-host            ; Name of host template to use&lt;br /&gt;
        host_name               carbon.li694-22         ; The server hostname (ensure it's in our DNS).&lt;br /&gt;
        alias                   carbon                  ; A shortname&lt;br /&gt;
        address                 carbon.li694-22         ; The server's address.&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Creating a new one (for instance, 'example.li694-22') should be straight forward, you simply copy carbon.li694-22 to example.li64-22:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''cp carbon.cfg example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once that's done, you can either edit the file manually with the editor of your choice or use sed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''sed -i 's/carbon/example/g' example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Modifying a server ===&lt;br /&gt;
&lt;br /&gt;
Simply edit the server object in /etc/icinga/objects/servers/&lt;br /&gt;
&lt;br /&gt;
=== Removing a server ===&lt;br /&gt;
&lt;br /&gt;
If you want to remove a server, remove the config and check '''/etc/icinga/objects/groups/hostgroups_icinga.cfg''' and remove any references to the server.&lt;br /&gt;
&lt;br /&gt;
=== Conclusion ===&lt;br /&gt;
&lt;br /&gt;
Don't forget to check Icinga's config and reload (see the note at the top)&lt;br /&gt;
&lt;br /&gt;
== objects/groups ==&lt;br /&gt;
&lt;br /&gt;
Firstly, we've got objects named &amp;quot;host groups&amp;quot; which are simple groups with several servers, for instance all Ubuntu servers belong to the 'ubuntu-servers' group and all servers which have a PostgreSQL service running belong to the 'postgresql-servers' group. One host/server can belong to many groups. All these groups are defined in '''/etc/icinga/objects/groups/hostgroups_icinga.cfg''' the members of these groups are also defined here.&lt;br /&gt;
&lt;br /&gt;
Let's take the ubuntu-servers &amp;amp; postgresql-servers (respectively) as examples:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/groups/ $ '''cat hostgroups_icinga.cfg'''&amp;lt;/code&amp;gt; [note: only copying 'ubuntu-servers' and 'postgresql-servers' definitions out of file]&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''ubuntu-servers'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  ubuntu-servers&lt;br /&gt;
		alias           Ubuntu Servers&lt;br /&gt;
		members         boron.li694-22, helium.li694-22, carbon.li694-22, lithium.li694-22, nitrogen.li694-22, oxygen.li694-22, hydrogen.li694-22&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''postgresql-servers'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  postgresql-servers&lt;br /&gt;
                alias           PostgreSQL servers&lt;br /&gt;
                members         carbon.li694-22, boron.li694-22&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As you can see, we give each group a name, an alias (friendly name, mostly) &amp;amp; we define it's members. Pretty straight forward right? Let's move on to the fun part.&lt;br /&gt;
&lt;br /&gt;
Now instead of defining a service per server, we simply define a service per hostgroup, meaning; when we add an Ubuntu server we simply add it to the 'ubuntu-servers' host group and it'll be automatically monitored for updates, and such.&lt;br /&gt;
&lt;br /&gt;
The service definitions for hostgroups are in the same directory, let's take a look at the service definitions for the ubuntu-servers group:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/groups/ $ '''cat ubuntu.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define service{&lt;br /&gt;
	hostgroup_name			ubuntu-servers          ; Host group&lt;br /&gt;
        use                             generic-service         ; Name of service template to use&lt;br /&gt;
        service_description             APT Status              ; Service check name.&lt;br /&gt;
        check_command                   remote_one!check_apt    ; This is the command that's being executed.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Let's say, all Ubuntu servers also run a special daemon (let's called it &amp;quot;speciald&amp;quot; - I haven't got a lot of inspiration right now), we would add the following (make sure the command definition/plugin exists) to 'ubuntu.cfg':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define service{&lt;br /&gt;
	hostgroup_name			ubuntu-servers          ; Host group&lt;br /&gt;
        use                             generic-service         ; Name of service template to use&lt;br /&gt;
        service_description             Speciald Status         ; Service check name.&lt;br /&gt;
        check_command                   remote_one!check_speciald ; This is the command that's being executed.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and reload Icinga (after testing the configuration, first) and now, 'speciald' is being monitored on all Ubuntu servers.&lt;br /&gt;
&lt;br /&gt;
Note, we also have 'all.cfg' which powers the &amp;quot;All Servers Group&amp;quot; - in which, you guessed it, checks for every server are defined, e.g. ssh, disk space, etc.&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7261</id>
		<title>SystemAdministration/Icinga</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7261"/>
		<updated>2014-04-13T23:00:05Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: /* Sentinel: Icinga / Server &amp;amp; Services Monitoring */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Sentinel: Icinga / Server &amp;amp; Services Monitoring ==&lt;br /&gt;
&lt;br /&gt;
=== Important Directories ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Directory !! Description&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/groups || (service definitions for) Host Groups&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/servers || Server Definitions&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/templates || Various templates [http://docs.icinga.org/latest/en/sample-templates.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/contacts || Contact &amp;amp; time period config [http://docs.icinga.org/latest/en/sample-contacts.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/nagios-plugins/config/ || Plugin configs; be sure to checkout 'remote.cfg'&lt;br /&gt;
|-&lt;br /&gt;
| /usr/lib/nagios/plugins/ || Plugins&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;section begin=testandreload /&amp;gt;&lt;br /&gt;
=== Testing Icinga's config and reloading: ===&lt;br /&gt;
&lt;br /&gt;
When you've made modifications to Icinga's config (you really should first back up the files you're modifying), you can run:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# /usr/sbin/icinga -v /etc/icinga/icinga.cfg&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
If this command returns &amp;quot;Total Warnings: 0&amp;quot; &amp;amp; &amp;quot;Total Errors: 0&amp;quot; you can then:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# service icinga reload&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;section end=testandreload /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Access ==&lt;br /&gt;
&lt;br /&gt;
Our Icinga installation is named 'Sentinel' which means &amp;quot;a soldier or guard whose job is to stand and keep watch&amp;quot;, you can find [https://sentinel.soylentnews.org/ Sentinel here] and login with your Keberos username and password.&lt;br /&gt;
&lt;br /&gt;
== Kerberized SSH connections ==&lt;br /&gt;
&lt;br /&gt;
We use AutoSSH to allow Icinga to connect to other nodes to execute commands and get services information back. &lt;br /&gt;
&lt;br /&gt;
Internally, we can use Kerberos to jump from one host to another our Icinga installation requires HTTP Kerberos auth (via https) but we've also set up AutoSSH which allows our Icinga instance to connect to other nodes passwordless &amp;amp; ssh key-less to fetch information.&lt;br /&gt;
&lt;br /&gt;
'''more information, show how we've setup the connections, etc'''&lt;br /&gt;
&lt;br /&gt;
== icinga.cfg ==&lt;br /&gt;
&lt;br /&gt;
The file '''/etc/icinga/icinga.cfg''' is heavily commented. I suggest you simply look it over.&lt;br /&gt;
&lt;br /&gt;
== Servers ==&lt;br /&gt;
&lt;br /&gt;
=== Adding a server ===&lt;br /&gt;
&lt;br /&gt;
Each server has a file in /etc/icinga/objects/servers/ which looks something like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define host{&lt;br /&gt;
        use                     generic-host            ; Name of host template to use&lt;br /&gt;
        host_name               carbon.li694-22         ; The server hostname (ensure it's in our DNS).&lt;br /&gt;
        alias                   carbon                  ; A shortname&lt;br /&gt;
        address                 carbon.li694-22         ; The server's address.&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Creating a new one (for instance, 'example.li694-22') should be straight forward, you simply copy carbon.li694-22 to example.li64-22:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''cp carbon.cfg example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once that's done, you can either edit the file manually with the editor of your choice or use sed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''sed -i 's/carbon/example/g' example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Modifying a server ===&lt;br /&gt;
&lt;br /&gt;
Simply edit the server object in /etc/icinga/objects/servers/&lt;br /&gt;
&lt;br /&gt;
=== Removing a server ===&lt;br /&gt;
&lt;br /&gt;
If you want to remove a server, remove the config and check '''/etc/icinga/objects/groups/hostgroups_icinga.cfg''' and remove any references to the server.&lt;br /&gt;
&lt;br /&gt;
=== Conclusion ===&lt;br /&gt;
&lt;br /&gt;
Don't forget to check Icinga's config and reload (see the note at the top)&lt;br /&gt;
&lt;br /&gt;
== objects/groups ==&lt;br /&gt;
&lt;br /&gt;
Firstly, we've got objects named &amp;quot;host groups&amp;quot; which are simple groups with several servers, for instance all Ubuntu servers belong to the 'ubuntu-servers' group and all servers which have a PostgreSQL service running belong to the 'postgresql-servers' group. One host/server can belong to many groups. All these groups are defined in '''/etc/icinga/objects/groups/hostgroups_icinga.cfg''' the members of these groups are also defined here.&lt;br /&gt;
&lt;br /&gt;
Let's take the ubuntu-servers &amp;amp; postgresql-servers (respectively) as examples:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/groups/ $ '''cat hostgroups_icinga.cfg'''&amp;lt;/code&amp;gt; [note: only copying 'ubuntu-servers' and 'postgresql-servers' definitions out of file]&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''ubuntu-servers'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  ubuntu-servers&lt;br /&gt;
		alias           Ubuntu Servers&lt;br /&gt;
		members         boron.li694-22, helium.li694-22, carbon.li694-22, lithium.li694-22, nitrogen.li694-22, oxygen.li694-22, hydrogen.li694-22&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''postgresql-servers'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  postgresql-servers&lt;br /&gt;
                alias           PostgreSQL servers&lt;br /&gt;
                members         carbon.li694-22, boron.li694-22&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As you can see, we give each group a name, an alias (friendly name, mostly) &amp;amp; we define it's members. Pretty straight forward right? Let's move on to the fun part.&lt;br /&gt;
&lt;br /&gt;
Now instead of defining a service per server, we simply define a service per hostgroup, meaning; when we add an Ubuntu server we simply add it to the 'ubuntu-servers' host group and it'll be automatically monitored for updates, and such.&lt;br /&gt;
&lt;br /&gt;
The service definitions for hostgroups are in the same directory, let's take a look at the service definitions for the ubuntu-servers group:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/groups/ $ '''cat ubuntu.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define service{&lt;br /&gt;
	hostgroup_name			ubuntu-servers          ; Host group&lt;br /&gt;
        use                             generic-service         ; Name of service template to use&lt;br /&gt;
        service_description             APT Status              ; Service check name.&lt;br /&gt;
        check_command                   remote_one!check_apt    ; This is the command that's being executed.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Let's say, all Ubuntu servers also run a special daemon (let's called it &amp;quot;speciald&amp;quot; - I haven't got a lot of inspiration right now), we would add the following (make sure the command definition/plugin exists) to 'ubuntu.cfg':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define service{&lt;br /&gt;
	hostgroup_name			ubuntu-servers          ; Host group&lt;br /&gt;
        use                             generic-service         ; Name of service template to use&lt;br /&gt;
        service_description             Speciald Status         ; Service check name.&lt;br /&gt;
        check_command                   remote_one!check_speciald ; This is the command that's being executed.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and reload Icinga (after testing the configuration, first) and now, 'speciald' is being monitored on all Ubuntu servers.&lt;br /&gt;
&lt;br /&gt;
Note, we also have 'all.cfg' which powers the &amp;quot;All Servers Group&amp;quot; - in which, you guessed it, checks for every server are defined, e.g. ssh, disk space, etc.&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
	<entry>
		<id>https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7260</id>
		<title>SystemAdministration/Icinga</title>
		<link rel="alternate" type="text/html" href="https://wiki.soylentnews.org/index.php?title=SystemAdministration/Icinga&amp;diff=7260"/>
		<updated>2014-04-13T22:58:12Z</updated>

		<summary type="html">&lt;p&gt;Xlefay: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Sentinel: Icinga / Server &amp;amp; Services Monitoring ==&lt;br /&gt;
&lt;br /&gt;
'''Important directories:'''&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Directory !! Description&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/groups || (service definitions for) Host Groups&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/servers || Server Definitions&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/templates || Various templates [http://docs.icinga.org/latest/en/sample-templates.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/icinga/objects/contacts || Contact &amp;amp; time period config [http://docs.icinga.org/latest/en/sample-contacts.html docs here]&lt;br /&gt;
|-&lt;br /&gt;
| /etc/nagios-plugins/config/ || Plugin configs; be sure to checkout 'remote.cfg'&lt;br /&gt;
|-&lt;br /&gt;
| /usr/lib/nagios/plugins/ || Plugins&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''Testing Icinga's config and reloading:'''&lt;br /&gt;
&lt;br /&gt;
When you've made modifications to Icinga's config (you really should first back up the files you're modifying), you can run:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# /usr/sbin/icinga -v /etc/icinga/icinga.cfg&amp;lt;/code&amp;gt; &lt;br /&gt;
&lt;br /&gt;
If this command returns &amp;quot;Total Warnings: 0&amp;quot; &amp;amp; &amp;quot;Total Errors: 0&amp;quot; you can then:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;# service icinga reload&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Access ==&lt;br /&gt;
&lt;br /&gt;
Our Icinga installation is named 'Sentinel' which means &amp;quot;a soldier or guard whose job is to stand and keep watch&amp;quot;, you can find [https://sentinel.soylentnews.org/ Sentinel here] and login with your Keberos username and password.&lt;br /&gt;
&lt;br /&gt;
== Kerberized SSH connections ==&lt;br /&gt;
&lt;br /&gt;
We use AutoSSH to allow Icinga to connect to other nodes to execute commands and get services information back. &lt;br /&gt;
&lt;br /&gt;
Internally, we can use Kerberos to jump from one host to another our Icinga installation requires HTTP Kerberos auth (via https) but we've also set up AutoSSH which allows our Icinga instance to connect to other nodes passwordless &amp;amp; ssh key-less to fetch information.&lt;br /&gt;
&lt;br /&gt;
'''more information, show how we've setup the connections, etc'''&lt;br /&gt;
&lt;br /&gt;
== icinga.cfg ==&lt;br /&gt;
&lt;br /&gt;
The file '''/etc/icinga/icinga.cfg''' is heavily commented. I suggest you simply look it over.&lt;br /&gt;
&lt;br /&gt;
== Servers ==&lt;br /&gt;
&lt;br /&gt;
=== Adding a server ===&lt;br /&gt;
&lt;br /&gt;
Each server has a file in /etc/icinga/objects/servers/ which looks something like:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define host{&lt;br /&gt;
        use                     generic-host            ; Name of host template to use&lt;br /&gt;
        host_name               carbon.li694-22         ; The server hostname (ensure it's in our DNS).&lt;br /&gt;
        alias                   carbon                  ; A shortname&lt;br /&gt;
        address                 carbon.li694-22         ; The server's address.&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Creating a new one (for instance, 'example.li694-22') should be straight forward, you simply copy carbon.li694-22 to example.li64-22:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''cp carbon.cfg example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once that's done, you can either edit the file manually with the editor of your choice or use sed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/servers/ $ '''sed -i 's/carbon/example/g' example.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Modifying a server ===&lt;br /&gt;
&lt;br /&gt;
Simply edit the server object in /etc/icinga/objects/servers/&lt;br /&gt;
&lt;br /&gt;
=== Removing a server ===&lt;br /&gt;
&lt;br /&gt;
If you want to remove a server, remove the config and check '''/etc/icinga/objects/groups/hostgroups_icinga.cfg''' and remove any references to the server.&lt;br /&gt;
&lt;br /&gt;
=== Conclusion ===&lt;br /&gt;
&lt;br /&gt;
Don't forget to check Icinga's config and reload (see the note at the top)&lt;br /&gt;
&lt;br /&gt;
== objects/groups ==&lt;br /&gt;
&lt;br /&gt;
Firstly, we've got objects named &amp;quot;host groups&amp;quot; which are simple groups with several servers, for instance all Ubuntu servers belong to the 'ubuntu-servers' group and all servers which have a PostgreSQL service running belong to the 'postgresql-servers' group. One host/server can belong to many groups. All these groups are defined in '''/etc/icinga/objects/groups/hostgroups_icinga.cfg''' the members of these groups are also defined here.&lt;br /&gt;
&lt;br /&gt;
Let's take the ubuntu-servers &amp;amp; postgresql-servers (respectively) as examples:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/groups/ $ '''cat hostgroups_icinga.cfg'''&amp;lt;/code&amp;gt; [note: only copying 'ubuntu-servers' and 'postgresql-servers' definitions out of file]&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''ubuntu-servers'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  ubuntu-servers&lt;br /&gt;
		alias           Ubuntu Servers&lt;br /&gt;
		members         boron.li694-22, helium.li694-22, carbon.li694-22, lithium.li694-22, nitrogen.li694-22, oxygen.li694-22, hydrogen.li694-22&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''postgresql-servers'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define hostgroup {&lt;br /&gt;
        hostgroup_name  postgresql-servers&lt;br /&gt;
                alias           PostgreSQL servers&lt;br /&gt;
                members         carbon.li694-22, boron.li694-22&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As you can see, we give each group a name, an alias (friendly name, mostly) &amp;amp; we define it's members. Pretty straight forward right? Let's move on to the fun part.&lt;br /&gt;
&lt;br /&gt;
Now instead of defining a service per server, we simply define a service per hostgroup, meaning; when we add an Ubuntu server we simply add it to the 'ubuntu-servers' host group and it'll be automatically monitored for updates, and such.&lt;br /&gt;
&lt;br /&gt;
The service definitions for hostgroups are in the same directory, let's take a look at the service definitions for the ubuntu-servers group:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/icinga/objects/groups/ $ '''cat ubuntu.cfg'''&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define service{&lt;br /&gt;
	hostgroup_name			ubuntu-servers          ; Host group&lt;br /&gt;
        use                             generic-service         ; Name of service template to use&lt;br /&gt;
        service_description             APT Status              ; Service check name.&lt;br /&gt;
        check_command                   remote_one!check_apt    ; This is the command that's being executed.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Let's say, all Ubuntu servers also run a special daemon (let's called it &amp;quot;speciald&amp;quot; - I haven't got a lot of inspiration right now), we would add the following (make sure the command definition/plugin exists) to 'ubuntu.cfg':&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define service{&lt;br /&gt;
	hostgroup_name			ubuntu-servers          ; Host group&lt;br /&gt;
        use                             generic-service         ; Name of service template to use&lt;br /&gt;
        service_description             Speciald Status         ; Service check name.&lt;br /&gt;
        check_command                   remote_one!check_speciald ; This is the command that's being executed.&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and reload Icinga (after testing the configuration, first) and now, 'speciald' is being monitored on all Ubuntu servers.&lt;br /&gt;
&lt;br /&gt;
Note, we also have 'all.cfg' which powers the &amp;quot;All Servers Group&amp;quot; - in which, you guessed it, checks for every server are defined, e.g. ssh, disk space, etc.&lt;/div&gt;</summary>
		<author><name>Xlefay</name></author>
	</entry>
</feed>