Feature #2559

upgrade guide for 1.7

Added by dnsmichi almost 2 years ago. Updated almost 2 years ago.

Status:ResolvedStart date:04/26/2012
Priority:HighDue date:
Assignee:Wolfgang% Done:

100%

Category:-
Target version:Icinga 1.x - 1.7

Description

1.7 will be a changing release, therefore i will put some notes together, which should be put into the upgrade docs. especially people should read the Changelog - add a tip for that pls.

as we now have feature freeze, all expected changes should have been done (hopefully). i'll tell web devs to update the issue here as well then.

CHANGES

  • you can now use new configure flags
    • --with-temp-file=<filepath>
    • --with-plugin-dir=<path>
    • --with-eventhandler-dir=<path>
    • --enable-cgi-log
    • --with-http-auth-file
  • --enable-libtap is now deprecated
  • you can now use new make targets
    • make install-eventhandlers
  • put your own configs into etc/conf.d

IDOUtils Special

  • change default target location of idomod.so from $bindir to $libdir
  • change idomod extension from .o to .so, make .so the default extension for modules
    • make sure to UPDATE the location in your CONFIG !!!
  • limit long_output and perfdata database storage in mysql to 32k
  • enlarge field "FAILURE_PREDICTION_OPTIONS" in table hosts from 64 to 128 Bytes
  • Oracle only->change method retrieving lastid, introduce individual sequence caching sizes
  • pgsql unix_timestamp cannot handle timstamp with timezone
  • change varchar(255) to TEXT in mysql

Core Special

  • add trigger_time to downtimes (see backends)

Classic UI Special

  • statuswml.cgi and statuswrl.cgi are DEPRECATED
  • add javascript to refresh page/pause easier #2119
    • DO A FULL PAGE RELOAD AFTER UPGRADING
    • no reload necessary to pause refresh
    • selecting item in status.cgi/extinfo.cgi resets' refresh counter
    • added cgi config option "refresh_type" to choose between http header refresh and javascript refresh
  • fixed Commit commands with more then 500 multiple pairs of hosts and services
    • now it's possible to submit ~990 commands at the same time
  • new cgi.cfg options
    • default_num_displayed_log_entries
    • display_status_totals
    • refresh_type
  • statusmap resizing with exclude/include button
  • changed all forms to POST request
  • readonly cgi.cfg view into the config section
  • cmd.cgi now accepts change commands with attr command
    • but ONLY 0 = reset, other values will trigger an error

CGI JSON Special

  • fixed json output for comments and downtimes in extinfo.cgi sometimes invalid
    • changes array names in json output of extinfo.cgi
    • comments -> host_comments / service_comments
    • downtimes -> host_downtimes / service_downtimes
  • add is_in_effect and trigger_time to downtime output
  • add modified_attributes to extinfo.cgi

Related issues

Related to Docs - Feature #2349: change default target location of idomod.o from $bindir t... Resolved 02/23/2012

History

#1 Updated by Tommi almost 2 years ago

i missed the nagiosenv configure option
  • install: add --enable-nagiosenv to configure to expose custom variables with prefix NAGIOS_ instead of ICINGA_ for easier reuse of plugins #2083

In README.RHEL.idoutils (and within the docs) there are only recommandations for pgsql and mysql. But in general i think we can point to the ready-to-use create_xyzdb.sh scripts in idoutils/db/scripts as blueprint for the required steps and to the wiki for details

#2 Updated by dnsmichi almost 2 years ago

the spec file builds libdbi only, and therefore can't be targetted against oracle. furthermore, building with oracle will require ocilib headers installed which will require oracle sdk installed. which is not available freely, so such a spec file can be shared in contrib/ - if i ever get time to rework the internal stuff. but right on, oracle does not work with the binaries you'll get out of rpmbuild.

#3 Updated by Tommi almost 2 years ago

regarding oracle:
i think its word to offer such configured oracle package because its linked against ocilib, not the oracle client itself. In this case its up to the user to have ocilib in its system.
We can additional offer a package for ocilib which is compiled by us with the Oracle Instantclient because ocilib is free. Also precompiled ocilib headers can be distributed for free. Than the end user only needs this oracle client we used to compile.
Oracle Instant client can be downloaded for free (incl. SDK) from Oracle Technet http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html, only a free registration is required
This "Instant Client" is bound to the term Oracle provided here : http://www.oracle.com/technetwork/licenses/instant-client-lic-152016.html, which looks really fair. We can point to the download page but if i read this (I am not a licence expert) i would say its also free to distribute in binary form. Maybe some advanced person in this terms can check it
a small excerpt:

License. 
We grant you a non-exclusive right and license to use the Programs solely for your business purposes and development and testing purposes, subject to the terms of this Agreement. You may allow third parties to use the Programs, subject to the terms of this Agreement, provided such third party use is for your business operations only.

Distribution License 
We grant you a non-exclusive right and license to distribute the Programs, provided that you do not charge your end users for use of the Programs. Your distribution of such Programs shall at a minimum include the following terms in an executed license agreement between you and the end user that: ...

#4 Updated by dnsmichi almost 2 years ago

i don't see an extra value in adding an oracle ocilib spec file to upstream right now. see my remarks on the oracle issues and the less people actually providing feedback. i would not like to see package rebuilds needed for testing then. and of course, some parts of my work need to be asked permission for to be shared.

#5 Updated by Tommi almost 2 years ago

with oracle package i ment primary an icinga package or extra ido2db package linked with ocilib.

Your last sentence i dont got. For my understanding if there is a need to ask for permissions it affects in the first step the sources, which are up to now shared to public in general, but we are talking about the binary distribution as rpm build on top of the already shared sources.
More than this: If there is someones code part we use ungranted, in doubt, permissions not asked yet etc., it should be removed from public sources immediately for not harming anybodys rights. in this area is less more

#6 Updated by dnsmichi almost 2 years ago

sure, i do get what you mean. but there are parts of my work on icinga, i do for work internally and that might need a question asking to share such. same goes for our plugins.

#7 Updated by dnsmichi almost 2 years ago

  • Status changed from New to Assigned
  • Assignee set to Wolfgang

back to topic - @Wolfgang please add the most important values from the initial post, or copy paste it. thx.

#8 Updated by Wolfgang almost 2 years ago

  • % Done changed from 0 to 30

Changed the text of "whatsnew" in r1.7

#9 Updated by dnsmichi almost 2 years ago

ok. on the "upgrade (to) icinga" page, please remark the change of "bindir/idomod.o" to "libdir/idomod.so" and outline that this requires a config change - either in icinga.cfg:broker_module OR modules/idoutils.cfg:module definition.

the old idomod.o will be removed if detected.

plus, make install-idoutils will warn about the change as well. pinpoint to read Changelog -> CHANGES for users.

#10 Updated by Wolfgang almost 2 years ago

  • % Done changed from 30 to 40

changed in r1.7

#11 Updated by dnsmichi almost 2 years ago

  • Status changed from Assigned to Resolved
  • % Done changed from 40 to 100

thx.

Also available in: Atom PDF