Hi All,

I've create a branch from 1.12 called upgrade-tools-1.12. It contains the 
current working version with Ron's ideas.

The test implementation is related with the JMX fixes (but still requires some 
work).

This version of the code can check if OpenNMS is actually running or not.

About the ideas for the MAC Address and SNMP Interfaces:

1) We can use something similar to opennms-tools/opennms-rrd-converter in order 
to do a "live upgrade", I mean, with OpenNMS running (which I believe it is the 
easiest case, but requires OpenNMS 1.12 is running for some time to be sure 
that the interface directories were created properly).
2) We can retrieve the MAC information from the ifTable for each node that 
supports SNMP, update the DB, and then upgrade the directories with OpenNMS 
stopped.

The second option makes sense because there is no way to upgrade OpenNMS 
without stopping it ;)

But, there are situations on which upgrading OpenNMS could be a problem because 
it may require a maintenance window or something like that. In those cases a 
solution that doesn't require a restart and perform a "live upgrade" will be 
prefered. Of course, that is only possible if RRDtool is not used (i.e. this 
only works on JRobin based installations). With RRDtool it is required a 
different solution with OpenNMS stopped.

Thoughts ?

Alejandro.

On Oct 8, 2013, at 4:54 PM, Alejandro Galue <aga...@opennms.org> wrote:

> Ron,
> 
> On Oct 8, 2013, at 4:48 PM, "Roskens, Ronald" 
> <ronald.rosk...@biworldwide.com> wrote:
> 
>> When you look at OS packages, they have can run things at a pre and post 
>> stages, and maybe a rollback procedure. So maybe there should be a 
>> preExecute() method that would run some checks to ensure that what it would 
>> execute() would work?
>>  
>> if I was going to migrate from JRobin v1 to RR4J v2 formatted RRDs, I’d want 
>> to know that I had enough disk space around before doing a conversion. Then, 
>> as an option a postExecute() could remove all the JRobin v1 files. (Imagine 
>> if RRD data moved into Cassandra or some other backend…)
>>  
>> Or another case might be having the a step do a database backup for us 
>> before running the installer for database components. We’d want to have 
>> enough space around for the database backup before doing the upgrade.
>>  
>> So then upgrade would run all the preExecutes(), and if they all succeeded, 
>> run all the executes(), and if they all succeeded, run all the 
>> postExecutes(). If any of the executes() failed, attempt to rollback 
>> executing a rollback() method?
> 
> I like the ideas, I'm going to upgrade my proof of concept with them.

Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail

------------------------------------------------------------------------------
October Webinars: Code for Performance
Free Intel webinars can help you accelerate application performance.
Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from 
the latest Intel processors and coprocessors. See abstracts and register >
http://pubads.g.doubleclick.net/gampad/clk?id=60134071&iu=/4140/ostg.clktrk
_______________________________________________
Please read the OpenNMS Mailing List FAQ:
http://www.opennms.org/index.php/Mailing_List_FAQ

opennms-devel mailing list

To *unsubscribe* or change your subscription options, see the bottom of this 
page:
https://lists.sourceforge.net/lists/listinfo/opennms-devel

Reply via email to