--- /dev/null
+### Configuring IDO
+
+The IDO (Icinga Data Output) modules for Icinga 2 takes care of exporting all
+configuration and status information into a database.
+
+There is a separate module for each database backend. At present only support
+for MySQL is implemented.
+
+#### Setting up the database
+
+ # mysql -u root -p
+
+ mysql> CREATE DATABASE icinga;
+ Query OK, 1 row affected (0.01 sec)
+
+ mysql> GRANT USAGE ON icinga.* TO 'icinga'@'localhost'
+ IDENTIFIED BY 'icinga'
+ WITH MAX_QUERIES_PER_HOUR 0
+ MAX_CONNECTIONS_PER_HOUR 0
+ MAX_UPDATES_PER_HOUR 0;
+
+ mysql> GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE
+ ON icinga.* TO 'icinga'@'localhost';
+
+ mysql> FLUSH PRIVILEGES;
+
+ mysql> quit
+
+ # cd /path/to/icinga-src/module/idoutils/db/mysql
+ # mysql -u root -p icinga < mysql.sql
+
+#### Installing the IDO module
+
+Once you've set up your database you will need to install the *icinga2-ido-mysql*
+package using your distribution's package manager.
+
+The package provides a new configuration file that is installed in
+*/etc/icinga2/features-available/ido-mysql.conf*. You will need to update the
+database credentials in this file.
+
+You can enable the ido-mysql feature configuration file using *i2enfeature*:
+
+ # i2enfeature ido-mysql
+ Module 'ido-mysql' was enabled.
+ Make sure to restart Icinga 2 for these changes to take effect.
+
+After enabling the ido-mysql feature you will need to restart Icinga 2:
+
+ # /etc/init.d/icinga2 restart
\ No newline at end of file
## Running Icinga
-TODO
+### Init Script
-### <a id="features"></a> Enabling/Disabling Features
\ No newline at end of file
+Icinga 2's init script is installed in */etc/init.d/icinga2* by default:
+
+ # /etc/init.d/icinga2
+ Usage: /etc/init.d/icinga2 {start|stop|restart|reload|checkconfig|status}
+
+#### start
+
+The *start* action starts the Icinga 2 daemon.
+
+#### stop
+
+The *stop* action stops the Icinga 2 daemon.
+
+#### restart
+
+The *restart* action is a shortcut for running the *stop* action followed by
+*start*.
+
+#### reload
+
+The *reload* action sends the HUP signal to Icinga 2 which causes it to restart.
+Unlike the *restart* action *reload* does not wait until Icinga 2 has restarted.
+
+#### checkconfig
+
+The *checkconfig* action checks if the */etc/icinga2/icinga2.conf* configuration
+file contains any errors.
+
+#### status
+
+The *status* action checks if Icinga 2 is running:
+
+ $ /etc/init.d/icinga2 status
+ Icinga 2 status: Running
+
+### <a id="cmdline"></a> Command-line Options
+
+ $ icinga2 --help
+ icinga2 - The Icinga 2 network monitoring daemon.
+
+ Supported options:
+ --help show this help message
+ -V [ --version ] show version information
+ -l [ --library ] arg load a library
+ -I [ --include ] arg add include search directory
+ -c [ --config ] arg parse a configuration file
+ -C [ --validate ] exit after validating the configuration
+ -x [ --debug ] enable debugging
+ -d [ --daemonize ] detach from the controlling terminal
+ -e [ --errorlog ] arg log fatal errors to the specified log file (only works
+ in combination with --daemonize)
+ -u [ --user ] arg user to run Icinga as
+ -g [ --group ] arg group to run Icinga as
+
+ Report bugs at <https://dev.icinga.org/>
+ Icinga home page: <http://www.icinga.org/>
+
+#### Libraries
+
+Instead of loading libraries using the [*library* config directive](#library)
+you can also use the *--library* command-line option.
+
+#### Config Include Path
+
+When including files you can specify that the include search path should be
+checked. You can do this by putting your config file name in angle brackets
+like this:
+
+ include <test.conf>
+
+This would cause Icinga 2 to search its include path for the configuration file
+*test.conf*. By default the installation path for the Icinga Template Library
+is the only search directory.
+
+Using the *--include* command-line option additional search directories can be
+added.
+
+#### Config Files
+
+Using the *--config* option you can specify one or more config files. Config
+files are processed in the order they're specified on the command-line.
+
+#### Config Validation
+
+The *--validate* option can be used to check if your configuration files
+contain errors. If any errors are found the exit status is 1, otherwise 0
+is returned.
+
+### <a id="features"></a> Enabling/Disabling Features
+
+Icinga 2 provides configuration files for some commonly used features. These
+are installed in the */etc/icinga2/features-available* directory and can be
+enabled and disabled using the *i2enfeature* and *i2disfeature* tools,
+respectively.
+
+The *i2enfeature* tool creates symlinks in the */etc/icinga2/features-enabled*
+directory which is included by default in the example configuration file.
+
+You can view a list of available feature configuration files:
+
+ # i2enfeature
+ Syntax: i2enfeature <feature>
+ Enables the specified feature.
+
+ Available features: compat
+
+Using the *i2enfeature* command you can enable features:
+
+ # i2enfeature compat
+ Module 'compat' was enabled.
+ Make sure to restart Icinga 2 for these changes to take effect.
+
+You can disable features using the *i2disfeature* command:
+
+ # i2disfeature compat
+ Module 'compat' was disabled.
+ Make sure to restart Icinga 2 for these changes to take effect.
+
+> **Note**
+>
+> The *i2enfeature* and *i2disfeature* commands do not restart Icinga 2.
\ No newline at end of file