Merge pull request #5604 from Icinga/feature/remove-deprecated-classicui-pkg

Remove the icinga2-classicui-package and update documentation
This commit is contained in:
Michael Friedrich 2017-09-22 12:35:09 +02:00 committed by GitHub
commit 5ad1919b75
12 changed files with 28 additions and 315 deletions

View File

@ -1478,7 +1478,7 @@ Configuration Attributes:
## StatusDataWriter <a id="objecttype-statusdatawriter"></a>
Periodically writes status data files which are used by the Classic UI and other third-party tools.
Periodically writes status and configuration data files which are used by third-party tools.
Example:
@ -1494,8 +1494,8 @@ Configuration Attributes:
Name |Description
----------------|----------------
status\_path |**Optional.** Path to the status.dat file. Defaults to LocalStateDir + "/cache/icinga2/status.dat".
objects\_path |**Optional.** Path to the objects.cache file. Defaults to LocalStateDir + "/cache/icinga2/objects.cache".
status\_path |**Optional.** Path to the `status.dat` file. Defaults to LocalStateDir + "/cache/icinga2/status.dat".
objects\_path |**Optional.** Path to the `objects.cache` file. Defaults to LocalStateDir + "/cache/icinga2/objects.cache".
update\_interval|**Optional.** The interval in which the status files are updated. Defaults to 15 seconds.

View File

@ -2644,7 +2644,7 @@ interfacetable_noifloadgradient | **Optional.** Disable color gradient from
interfacetable_nohuman | **Optional.** Do not translate bandwidth usage in human readable format. Defaults to false.
interfacetable_snapshot | **Optional.** Force the plugin to run like if it was the first launch. Defaults to false.
interfacetable_timeout | **Optional.** Define the global timeout limit of the plugin in seconds. Defaults to "15s".
interfacetable_css | **Optional.** Define the css stylesheet used by the generated html files. Possible values are "classic", "icinga", "icinga-alternate1" or "nagiosxi".
interfacetable_css | **Optional.** Define the css stylesheet used by the generated html files. Possible values are "classic", "icinga" or "icinga-alternate1".
interfacetable_config | **Optional.** Specify a config file to load.
interfacetable_noconfigtable | **Optional.** Disable configuration table on the generated HTML page. Defaults to false.
interfacetable_notips | **Optional.** Disable the tips in the generated html tables. Defaults to false.

View File

@ -435,16 +435,17 @@ The [MK Livestatus](https://mathias-kettner.de/checkmk_livestatus.html) project
implements a query protocol that lets users query their Icinga instance for
status information. It can also be used to send commands.
> **Tip**
>
> Only install the Livestatus feature if your web interface or addon requires
> you to do so (for example, [Icinga Web 2](02-getting-started.md#setting-up-icingaweb2)).
> Icinga Classic UI 1.x and Icinga Web 1.x do not use Livestatus as backend.
The Livestatus component that is distributed as part of Icinga 2 is a
re-implementation of the Livestatus protocol which is compatible with MK
Livestatus.
> **Tip**
>
> Only install the Livestatus feature if your web interface or addon requires
> you to do so.
> [Icinga Web 2](02-getting-started.md#setting-up-icingaweb2) does not need
> Livestatus.
Details on the available tables and attributes with Icinga 2 can be found
in the [Livestatus Schema](24-appendix.md#schema-livestatus) section.
@ -454,14 +455,8 @@ You can enable Livestatus using icinga2 feature enable:
After that you will have to restart Icinga 2:
RHEL/CentOS 7/Fedora, SLES 12, Debian Jessie/Stretch, Ubuntu Xenial:
# systemctl restart icinga2
Debian/Ubuntu, RHEL/CentOS 6 and SUSE:
# service icinga2 restart
By default the Livestatus socket is available in `/var/run/icinga2/cmd/livestatus`.
In order for queries and commands to work you will need to add your query user
@ -635,12 +630,8 @@ status updates in a regular interval.
# icinga2 feature enable statusdata
Icinga 1.x Classic UI requires this data set as part of its backend.
> **Note**
>
> If you are not using any web interface or addon which uses these files,
> you can safely disable this feature.
If you are not using any web interface or addon which uses these files,
you can safely disable this feature.
## Compat Log Files <a id="compat-logging"></a>
@ -648,11 +639,11 @@ Icinga 1.x Classic UI requires this data set as part of its backend.
The Icinga 1.x log format is considered being the `Compat Log`
in Icinga 2 provided with the `CompatLogger` object.
These logs are not only used for informational representation in
These logs are used for informational representation in
external web interfaces parsing the logs, but also to generate
SLA reports and trends in Icinga 1.x Classic UI. Furthermore the
[Livestatus](14-features.md#setting-up-livestatus) feature uses these logs for answering queries to
historical tables.
SLA reports and trends.
The [Livestatus](14-features.md#setting-up-livestatus) feature uses these logs
for answering queries to historical tables.
The `CompatLogger` object can be enabled with
@ -662,34 +653,6 @@ By default, the Icinga 1.x log file called `icinga.log` is located
in `/var/log/icinga2/compat`. Rotated log files are moved into
`var/log/icinga2/compat/archives`.
The format cannot be changed without breaking compatibility to
existing log parsers.
# tail -f /var/log/icinga2/compat/icinga.log
[1382115688] LOG ROTATION: HOURLY
[1382115688] LOG VERSION: 2.0
[1382115688] HOST STATE: CURRENT;localhost;UP;HARD;1;
[1382115688] SERVICE STATE: CURRENT;localhost;disk;WARNING;HARD;1;
[1382115688] SERVICE STATE: CURRENT;localhost;http;OK;HARD;1;
[1382115688] SERVICE STATE: CURRENT;localhost;load;OK;HARD;1;
[1382115688] SERVICE STATE: CURRENT;localhost;ping4;OK;HARD;1;
[1382115688] SERVICE STATE: CURRENT;localhost;ping6;OK;HARD;1;
[1382115688] SERVICE STATE: CURRENT;localhost;processes;WARNING;HARD;1;
[1382115688] SERVICE STATE: CURRENT;localhost;ssh;OK;HARD;1;
[1382115688] SERVICE STATE: CURRENT;localhost;users;OK;HARD;1;
[1382115706] EXTERNAL COMMAND: SCHEDULE_FORCED_SVC_CHECK;localhost;disk;1382115705
[1382115706] EXTERNAL COMMAND: SCHEDULE_FORCED_SVC_CHECK;localhost;http;1382115705
[1382115706] EXTERNAL COMMAND: SCHEDULE_FORCED_SVC_CHECK;localhost;load;1382115705
[1382115706] EXTERNAL COMMAND: SCHEDULE_FORCED_SVC_CHECK;localhost;ping4;1382115705
[1382115706] EXTERNAL COMMAND: SCHEDULE_FORCED_SVC_CHECK;localhost;ping6;1382115705
[1382115706] EXTERNAL COMMAND: SCHEDULE_FORCED_SVC_CHECK;localhost;processes;1382115705
[1382115706] EXTERNAL COMMAND: SCHEDULE_FORCED_SVC_CHECK;localhost;ssh;1382115705
[1382115706] EXTERNAL COMMAND: SCHEDULE_FORCED_SVC_CHECK;localhost;users;1382115705
[1382115731] EXTERNAL COMMAND: PROCESS_SERVICE_CHECK_RESULT;localhost;ping6;2;critical test|
[1382115731] SERVICE ALERT: localhost;ping6;CRITICAL;SOFT;2;critical test
## Check Result Files <a id="check-result-files"></a>
Icinga 1.x writes its check result files to a temporary spool directory

View File

@ -15,6 +15,10 @@ The [setup CLI commands](06-distributed-monitoring.md#distributed-monitoring-set
default [ApiListener configuration](06-distributed-monitoring.md#distributed-monitoring-apilistener)
have been adjusted to these paths too.
The config meta package `classicui-config` and the configuration files
have been removed. You can keep old packages or manually configure
this legacy interface.
## Upgrading to v2.7 <a id="upgrading-to-2-7"></a>
v2.7.0 provided new notification scripts and commands. Please ensure to

View File

@ -959,7 +959,7 @@ Please check the migration hints for a detailed
> **Note**
>
> The Classic UI feature named `Command Expander` does not work with Icinga 2.
> The Icinga 1.x feature named `Command Expander` does not work with Icinga 2.
#### Environment Macros <a id="differences-1x-2-environment-macros"></a>
@ -1252,7 +1252,7 @@ notification configuration problem in Icinga 1.x:
* Service A should notify contact X via SMS
* Service B should notify contact X via Mail
* Service C should notify contact Y via Mail and SMS
* Contact X and Y should also be used for authorization (e.g. in Classic UI)
* Contact X and Y should also be used for authorization
The only way achieving a semi-clean solution is to
@ -1421,11 +1421,11 @@ The format is **not** compatible with Icinga 1.x.
### Logging <a id="differences-1x-2-logging"></a>
Icinga 1.x supports syslog facilities and writes its own `icinga.log` log file
and archives. These logs are used in Icinga 1.x Classic UI to generate
and archives. These logs are used in Icinga 1.x to generate
historical reports.
Icinga 2 compat library provides the CompatLogger object which writes the icinga.log and archive
in Icinga 1.x format in order to stay compatible with Classic UI and other addons.
in Icinga 1.x format in order to stay compatible with addons.
The native Icinga 2 logging facilities are split into three configuration objects: SyslogLogger,
FileLogger, StreamLogger. Each of them has their own severity and target configuration.

View File

@ -133,21 +133,9 @@ command tables.
Object | Prefix
------------------------|------------------------
CheckCommand | check_
EventCommand | event_
NotificationCommand | notification_
### Status Files <a id="schema-status-files"></a>
Status files used by Icinga 1.x Classic UI: `status.dat`, `objects.cache`.
Icinga 2 specific extensions:
* host and service objects support 'check_source' (added in Classic UI 1.10.0)
* command objects support custom variables (added in Classic UI 1.11.2)
* host and service objects support 'is_reachable' (added in Classic UI 1.11.3)
* 2.2 adds custom attributes with arrays and dictionaries. They are dumped as JSON encoded string and `_is_json`
is set as additional custom variable in `objects.cache`.
CheckCommand | check\_
EventCommand | event\_
NotificationCommand | notification\_
### DB IDO Schema <a id="schema-db-ido"></a>

View File

@ -15,7 +15,6 @@
# along with this program; if not, write to the Free Software Foundation
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
configure_file(icinga/icinga-classic-apache.conf.cmake ${CMAKE_CURRENT_BINARY_DIR}/icinga/icinga-classic-apache.conf @ONLY)
configure_file(icinga2/init.conf.cmake ${CMAKE_CURRENT_BINARY_DIR}/icinga2/init.conf @ONLY)
if(NOT WIN32)

View File

@ -1,5 +0,0 @@
# This has been DEPRECATED and will be removed in future releases.
# You can manually configure the Classic UI by keeping a backup of this file.
This directory contains Icinga 1.x Classic UI configuration
used by packages.

View File

@ -1,77 +0,0 @@
# Icinga 2 Classic UI configuration
#
# requires icinga-gui package
# check http://docs.icinga.com for option details
#
# This has been DEPRECATED and will be removed in future releases.
# You can manually configure the Classic UI by keeping a backup of this file.
standalone_installation=1
physical_html_path=/usr/share/icinga
url_html_path=/icinga
url_stylesheets_path=/icinga/stylesheets
http_charset=utf-8
refresh_rate=30
refresh_type=1
escape_html_tags=1
result_limit=50
show_tac_header=1
use_pending_states=1
first_day_of_week=0
suppress_maintenance_downtime=0
action_url_target=main
notes_url_target=main
use_authentication=1
use_ssl_authentication=0
lowercase_user_name=0
authorized_for_system_information=icingaadmin
authorized_for_configuration_information=icingaadmin
authorized_for_full_command_resolution=icingaadmin
authorized_for_system_commands=icingaadmin
authorized_for_all_services=icingaadmin
authorized_for_all_hosts=icingaadmin
authorized_for_all_service_commands=icingaadmin
authorized_for_all_host_commands=icingaadmin
show_all_services_host_is_authorized_for=1
show_partial_hostgroups=0
show_partial_servicegroups=0
default_statusmap_layout=5
status_show_long_plugin_output=0
display_status_totals=0
highlight_table_rows=1
add_notif_num_hard=28
add_notif_num_soft=0
use_logging=0
cgi_log_file=/var/log/icinga/gui/icinga-cgi.log
cgi_log_rotation_method=d
cgi_log_archive_path=/var/log/icinga/gui
enforce_comments_on_actions=0
send_ack_notifications=1
persistent_ack_comments=0
lock_author_names=1
default_downtime_duration=7200
set_expire_ack_by_default=0
default_expiring_acknowledgement_duration=86400
default_expiring_disabled_notifications_duration=86400
tac_show_only_hard_state=0
show_tac_header_pending=1
exclude_customvar_name=PASSWORD,COMMUNITY
exclude_customvar_value=secret
extinfo_show_child_hosts=0
tab_friendly_titles=1
######################################
# STANDALONE (ICINGA 2) OPTIONS
# requires standalone_installation=1
######################################
object_cache_file=/var/cache/icinga2/objects.cache
status_file=/var/cache/icinga2/status.dat
resource_file=/etc/icinga/resource.cfg
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
# EOF

View File

@ -1,70 +0,0 @@
# SAMPLE CONFIG SNIPPETS FOR APACHE WEB SERVER
#
# This file contains examples of entries that need
# to be incorporated into your Apache web server
# configuration file. Customize the paths, etc. as
# needed to fit your system.
#
# This has been DEPRECATED and will be removed in future releases.
# You can manually configure the Classic UI by keeping a backup of this file.
ScriptAlias /icinga/cgi-bin "@CMAKE_INSTALL_FULL_LIBDIR@/icinga/cgi"
<Directory "@CMAKE_INSTALL_FULL_LIBDIR@/icinga/cgi">
# SSLRequireSSL
Options ExecCGI
AllowOverride None
AuthName "Icinga Access"
AuthType Basic
AuthUserFile @CMAKE_INSTALL_FULL_SYSCONFDIR@/icinga/passwd
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAll>
Require all granted
# Require local
Require valid-user
</RequireAll>
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order allow,deny
Allow from all
# Order deny,allow
# Deny from all
# Allow from 127.0.0.1
Require valid-user
</IfModule>
</Directory>
Alias /icinga "@CMAKE_INSTALL_FULL_DATADIR@/icinga/"
<Directory "@CMAKE_INSTALL_FULL_DATADIR@/icinga/">
# SSLRequireSSL
Options None
AllowOverride All
AuthName "Icinga Access"
AuthType Basic
AuthUserFile @CMAKE_INSTALL_FULL_SYSCONFDIR@/icinga/passwd
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAll>
Require all granted
# Require local
Require valid-user
</RequireAll>
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order allow,deny
Allow from all
# Order deny,allow
# Deny from all
# Allow from 127.0.0.1
Require valid-user
</IfModule>
</Directory>

View File

@ -1,3 +0,0 @@
# This has been DEPRECATED and will be removed in future releases.
# You can manually configure the Classic UI by keeping a backup of this file.
icingaadmin:bRH4xwLfPkKeE

View File

@ -62,9 +62,6 @@
%define icingaweb2name icingaweb2
%define icingaweb2version 2.0.0
# DEPRECATED
%define icingaclassicconfdir %{_sysconfdir}/icinga
%define logmsg logger -t %{name}/rpm
Summary: Network monitoring application
@ -227,35 +224,6 @@ Requires: %{name} = %{version}-%{release}
Icinga 2 IDO PostgreSQL database backend. Compatible with Icinga 1.x
IDOUtils schema >= 1.12
# DEPRECATED, disable builds on Amazon
%if !(0%{?amzn})
# DEPRECATED
%package classicui-config
Summary: Icinga 2 Classic UI Standalone configuration
Group: Applications/System
BuildRequires: %{apachename}
Requires: %{apachename}
Requires: %{name} = %{version}-%{release}
%if "%{_vendor}" == "suse"
Recommends: icinga-www
# for running logger to log the deprecated warning
%if 0%{?use_systemd}
BuildRequires:util-linux-systemd
Requires: util-linux-systemd
%endif
%endif
Provides: icinga-classicui-config
Conflicts: icinga-gui-config
# DEPRECATED
%description classicui-config
Icinga 1.x Classic UI Standalone configuration with locations
for Icinga 2.
# DEPRECATED, disable builds on Amazon
%endif
%if "%{_vendor}" == "redhat" && !(0%{?el5} || 0%{?rhel} == 5 || "%{?dist}" == ".el5" || 0%{?el6} || 0%{?rhel} == 6 || "%{?dist}" == ".el6")
%global selinux_variants mls targeted
%{!?_selinux_policy_version: %global _selinux_policy_version %(sed -e 's,.*selinux-policy-\\([^/]*\\)/.*,\\1,' /usr/share/selinux/devel/policyhelp 2>/dev/null)}
@ -388,17 +356,6 @@ cd -
make install \
DESTDIR="%{buildroot}"
# DEPRECATED, disable builds on Amazon
%if !(0%{?amzn})
# install classicui config
install -D -m 0644 etc/icinga/icinga-classic.htpasswd %{buildroot}%{icingaclassicconfdir}/passwd
install -D -m 0644 etc/icinga/cgi.cfg %{buildroot}%{icingaclassicconfdir}/cgi.cfg
install -D -m 0644 etc/icinga/icinga-classic-apache.conf %{buildroot}%{apacheconfdir}/icinga.conf
# DEPRECATED, disable builds on Amazon
%endif
# remove features-enabled symlinks
rm -f %{buildroot}/%{_sysconfdir}/%{name}/features-enabled/*.conf
@ -621,36 +578,6 @@ fi
exit 0
# DEPRECATED, disable builds on Amazon
%if !(0%{?amzn})
%post classicui-config
if [ ${1:-0} -eq 1 ]
then
# initial installation, enable features
for feature in statusdata compatlog command; do
ln -sf ../features-available/${feature}.conf %{_sysconfdir}/%{name}/features-enabled/${feature}.conf
done
fi
%logmsg "The icinga2-classicui-config package has been deprecated and will be removed in future releases."
exit 0
# DEPRECATED
%postun classicui-config
if [ "$1" = "0" ]; then
# deinstallation of the package - remove feature
for feature in statusdata compatlog command; do
rm -f %{_sysconfdir}/%{name}/features-enabled/${feature}.conf
done
fi
exit 0
# DEPRECATED, disable builds on Amazon
%endif
%if "%{_vendor}" == "redhat" && !(0%{?el5} || 0%{?rhel} == 5 || "%{?dist}" == ".el5" || 0%{?el6} || 0%{?rhel} == 6 || "%{?dist}" == ".el6")
%post selinux
for selinuxvariant in %{selinux_variants}
@ -771,19 +698,6 @@ fi
%{_libdir}/%{name}/libdb_ido_pgsql*
%{_datadir}/icinga2-ido-pgsql
# DEPRECATED, disable builds on Amazon
%if !(0%{?amzn})
%files classicui-config
%defattr(-,root,root,-)
%attr(0751,%{icinga_user},%{icinga_group}) %dir %{icingaclassicconfdir}
%config(noreplace) %{icingaclassicconfdir}/cgi.cfg
%config(noreplace) %{apacheconfdir}/icinga.conf
%config(noreplace) %attr(0640,root,%{apachegroup}) %{icingaclassicconfdir}/passwd
# DEPRECATED, disable builds on Amazon
%endif
%if "%{_vendor}" == "redhat" && !(0%{?el5} || 0%{?rhel} == 5 || "%{?dist}" == ".el5" || 0%{?el6} || 0%{?rhel} == 6 || "%{?dist}" == ".el6")
%files selinux
%defattr(-,root,root,0755)