mirror of https://github.com/Icinga/icinga2.git
parent
9bf5ad2a2b
commit
077ac31045
|
@ -7,79 +7,24 @@ log files which are required for the reporting functionality in the Classic UI.
|
||||||
|
|
||||||
### Installing Icinga Classic UI
|
### Installing Icinga Classic UI
|
||||||
|
|
||||||
You can download and build Icinga 1.x Classic UI in standalone mode using the
|
The Icinga package repository has both Debian and RPM packages. You can install
|
||||||
following commands:
|
the Classic UI using the following packages:
|
||||||
|
|
||||||
$ wget http://downloads.sourceforge.net/project/icinga/icinga/1.10.0/icinga-1.10.0.tar.gz
|
Distribution | Packages
|
||||||
$ tar xzf icinga-1.10.0.tar.gz ; cd icinga-1.10.0
|
--------------|---------------------
|
||||||
$ ./configure --enable-classicui-standalone --prefix=/usr/local/icinga2-classicui
|
Debian | icinga2-classicui
|
||||||
$ make classicui-standalone
|
all others | icinga2-classicui-config icinga-gui
|
||||||
|
|
||||||
Once you've built Classic UI you can install it:
|
|
||||||
|
|
||||||
# make install-classicui-standalone install-classicui-standalone-conf install-webconf-auth
|
|
||||||
# service apache2 restart
|
|
||||||
|
|
||||||
> **Note**
|
> **Note**
|
||||||
>
|
>
|
||||||
> A detailed guide on installing Icinga 1.x Classic UI Standalone can be
|
> On all distributions other than Debian you may have to restart both your web
|
||||||
> found on the Icinga Wiki here:
|
> server as well as Icinga 2 after installing the Classic UI package.
|
||||||
> [https://wiki.icinga.org/display/howtos/Setting+up+Icinga+Classic+UI+Standalone](https://wiki.icinga.org/display/howtos/Setting+up+Icinga+Classic+UI+Standalone)
|
|
||||||
|
|
||||||
### Configuring Icinga 2
|
|
||||||
|
|
||||||
By default Icinga 2 does not write `status.dat` and `objects.cache` files which are used
|
|
||||||
by the Classic UI. The command pipe is also not enabled by default.
|
|
||||||
|
|
||||||
You can use icinga2-enable-feature to enable these features:
|
|
||||||
|
|
||||||
# icinga2-enable-feature statusdata
|
|
||||||
# icinga2-enable-feature compatlog
|
|
||||||
# icinga2-enable-feature command
|
|
||||||
|
|
||||||
After enabling these features you will need to restart Icinga 2:
|
|
||||||
|
|
||||||
# /etc/init.d/icinga2 restart
|
|
||||||
|
|
||||||
You should be able to find the `status.dat` and `objects.cache` files in
|
|
||||||
`/var/cache/icinga2`. The log files can be found in `/var/log/icinga2/compat`.
|
|
||||||
The command pipe can be found in `/var/run/icinga2/cmd/icinga2.cmd`.
|
|
||||||
|
|
||||||
### Configuring the Classic UI
|
|
||||||
|
|
||||||
After installing the Classic UI you will need to update the following
|
|
||||||
settings in your `cgi.cfg` configuration file in the `STANDALONE (ICINGA 2)
|
|
||||||
OPTIONS` section:
|
|
||||||
|
|
||||||
Configuration Setting |Value
|
|
||||||
------------------------------------|------------------------------------
|
|
||||||
object\_cache\_file |/var/cache/icinga2/objects.cache
|
|
||||||
status\_file |/var/cache/icinga2/status.dat
|
|
||||||
resource\_file |-
|
|
||||||
command\_file |/var/run/icinga2/cmd/icinga2.cmd
|
|
||||||
check\_external\_commands |1
|
|
||||||
interval\_length |60
|
|
||||||
status\_update\_interval |10
|
|
||||||
log\_file |/var/log/icinga2/compat/icinga.log
|
|
||||||
log\_rotation\_method |h
|
|
||||||
log\_archive\_path |/var/log/icinga2/compat/archives
|
|
||||||
date\_format |us
|
|
||||||
------------------------------------ ------------------------------------
|
|
||||||
|
|
||||||
> **Note**
|
|
||||||
>
|
|
||||||
> Depending on how you installed Icinga 2 some of those paths and options
|
|
||||||
> might be different.
|
|
||||||
|
|
||||||
In order for commands to work you will need to add your web server user to
|
|
||||||
the `icingacmd` group:
|
|
||||||
|
|
||||||
# usermod -a -G icingacmd www-data
|
|
||||||
|
|
||||||
> **Note**
|
|
||||||
>
|
|
||||||
> Change `www-data` to the user name your web server is running as.
|
|
||||||
|
|
||||||
Verify that your Icinga 1.x Classic UI works by browsing to your Classic
|
Verify that your Icinga 1.x Classic UI works by browsing to your Classic
|
||||||
UI installation URL, e.g.
|
UI installation URL:
|
||||||
[http://localhost/icinga](http://localhost/icinga)
|
|
||||||
|
Distribution | URL
|
||||||
|
---------------------------------------
|
||||||
|
Debian | [http://localhost/icinga](http://localhost/icinga2-classicui)
|
||||||
|
all others | [http://localhost/icinga](http://localhost/icinga)
|
||||||
|
|
||||||
|
|
|
@ -4,17 +4,26 @@ The IDO (Icinga Data Output) modules for Icinga 2 takes care of exporting all
|
||||||
configuration and status information into a database. The IDO database is used
|
configuration and status information into a database. The IDO database is used
|
||||||
by a number of projects including Icinga Web.
|
by a number of projects including Icinga Web.
|
||||||
|
|
||||||
There is a separate module for each database back-end. At present only support
|
There is a separate module for each database back-end. At present support for
|
||||||
for MySQL is implemented.
|
both MySQL and PostgreSQL is implemented. This installation guide assumed that
|
||||||
|
you are using MySQL.
|
||||||
|
|
||||||
> **Note**
|
> **Note**
|
||||||
>
|
>
|
||||||
> Icinga 2 uses the Icinga 1.x IDOUtils database schema starting with version
|
> Icinga 2 uses the Icinga 1.x IDOUtils database schema starting with version
|
||||||
> `1.10.0`.
|
> `1.11.0`.
|
||||||
|
|
||||||
### Setting up the database
|
### Setting up the database
|
||||||
|
|
||||||
First of all you have to create a database for Icinga 2:
|
First of all you have to install the `icinga2-ido-mysql` package using your
|
||||||
|
distribution's package manager. Once you have done that you can proceed with
|
||||||
|
setting up a MySQL database for Icinga 2:
|
||||||
|
|
||||||
|
> **Note**
|
||||||
|
>
|
||||||
|
> The Debian packages can optionally create and maintain the database for you
|
||||||
|
> using Debian's `dbconfig` framework. This is the recommended way of setting up
|
||||||
|
> the database.
|
||||||
|
|
||||||
# mysql -u root -p
|
# mysql -u root -p
|
||||||
|
|
||||||
|
@ -44,6 +53,9 @@ following command:
|
||||||
> The Icinga 2 RPM packages install the schema files into
|
> The Icinga 2 RPM packages install the schema files into
|
||||||
> `/usr/share/doc/icinga2-ido-mysql-*/schema` (`*` means package version).
|
> `/usr/share/doc/icinga2-ido-mysql-*/schema` (`*` means package version).
|
||||||
> The Icinga 2 dist tarball ships the schema files in `components/db_ido_mysql/schema/`.
|
> The Icinga 2 dist tarball ships the schema files in `components/db_ido_mysql/schema/`.
|
||||||
|
>
|
||||||
|
> On SuSE-based distributions the schema files are installed in
|
||||||
|
> `/usr/share/doc/packages/icinga2-ido-mysql/schema`.
|
||||||
|
|
||||||
### Upgrading the database
|
### Upgrading the database
|
||||||
|
|
||||||
|
@ -71,9 +83,6 @@ Apply all database schema upgrade files incrementially.
|
||||||
|
|
||||||
### Installing the IDO module
|
### Installing the IDO module
|
||||||
|
|
||||||
Once you've set up your database you have to install the `icinga2-ido-mysql`
|
|
||||||
package using your distribution's package manager.
|
|
||||||
|
|
||||||
The package provides a new configuration file that is installed in
|
The package provides a new configuration file that is installed in
|
||||||
`/etc/icinga2/features-available/ido-mysql.conf`. You will need to update the
|
`/etc/icinga2/features-available/ido-mysql.conf`. You will need to update the
|
||||||
database credentials in this file.
|
database credentials in this file.
|
||||||
|
|
|
@ -147,7 +147,8 @@ enable the required libraries in the icinga2.conf configuration file:
|
||||||
|
|
||||||
### Configure the ClusterListener Object
|
### Configure the ClusterListener Object
|
||||||
|
|
||||||
The ClusterListener needs to be configured on every node in the cluster with the following settings:
|
The ClusterListener needs to be configured on every node in the cluster with the
|
||||||
|
following settings:
|
||||||
|
|
||||||
Configuration Setting |Value
|
Configuration Setting |Value
|
||||||
-------------------------|------------------------------------
|
-------------------------|------------------------------------
|
||||||
|
@ -175,24 +176,28 @@ A sample config part can look like this:
|
||||||
peers = [ "icinga-node-2" ]
|
peers = [ "icinga-node-2" ]
|
||||||
}
|
}
|
||||||
|
|
||||||
Peers configures the direction used to connect multiple nodes together. If have a three node cluster consisting of
|
Peers configures the direction used to connect multiple nodes together. If have
|
||||||
|
a three node cluster consisting of
|
||||||
|
|
||||||
* node-1
|
* node-1
|
||||||
* node-2
|
* node-2
|
||||||
* node-3
|
* node-3
|
||||||
|
|
||||||
and `node-3` is only reachable from `node-2`, you have to consider this in your peer configuration
|
and `node-3` is only reachable from `node-2`, you have to consider this in your
|
||||||
|
peer configuration
|
||||||
|
|
||||||
### Configure Cluster Endpoints
|
### Configure Cluster Endpoints
|
||||||
|
|
||||||
In addition to the configured port and hostname every endpoint can have specific abilities to send configfiles to other nodes and limit the hosts allowed to send config-files.
|
In addition to the configured port and hostname every endpoint can have specific
|
||||||
|
abilities to send configuration files to other nodes and limit the hosts allowed
|
||||||
|
to send configuration files.
|
||||||
|
|
||||||
Configuration Setting |Value
|
Configuration Setting |Value
|
||||||
-------------------------|------------------------------------
|
-------------------------|------------------------------------
|
||||||
host | hostname
|
host | hostname
|
||||||
port | port
|
port | port
|
||||||
accept_config | defines all nodes allowed to send configs
|
accept_config | defines all nodes allowed to send configs
|
||||||
config_files | defines all files to be send to that node - MUST BE ABSOLUTE PATH
|
config_files | defines all files to be send to that node - MUST BE AN ABSOLUTE PATH
|
||||||
------------------------- ------------------------------------
|
------------------------- ------------------------------------
|
||||||
|
|
||||||
A sample config part can look like this:
|
A sample config part can look like this:
|
||||||
|
@ -210,6 +215,13 @@ A sample config part can look like this:
|
||||||
If you update the configuration files on the configured file sender, it will
|
If you update the configuration files on the configured file sender, it will
|
||||||
force a restart on all receiving nodes after validating the new config.
|
force a restart on all receiving nodes after validating the new config.
|
||||||
|
|
||||||
|
By default these configuration files are saved in /var/lib/icinga2/cluster/config.
|
||||||
|
In order to load configuration files which were received from a remote Icinga 2
|
||||||
|
instance you will have to add the following include directive to your
|
||||||
|
`icinga2.conf` configuration file:
|
||||||
|
|
||||||
|
include (IcingaLocalStateDir + "/lib/icinga2/cluster/config/*/*")
|
||||||
|
|
||||||
## Dependencies
|
## Dependencies
|
||||||
|
|
||||||
Icinga 2 uses host and service dependencies as attribute directly on the host or
|
Icinga 2 uses host and service dependencies as attribute directly on the host or
|
||||||
|
|
Loading…
Reference in New Issue