Unimus 2.3.3 & Unimus Core 2.3.3 release

Official news and announcements
Post Reply
User avatar
Tomas
Posts: 1206
Joined: Sat Jun 25, 2016 12:33 pm

Tue Apr 18, 2023 5:48 pm

Unimus & Core version 2.3.3 are being released today! This is a bugfix release, and the last release in the 2.3 code-branch. We are seeing very good feedback on stability with 2.3 and all customers are recommended to update to 2.3.3.

If you missed the Release Overview for 2.3, please head to our blog for an overview of what is new in this release branch. The dev team is now working on 2.4 - see the Roadmap for what's to come.

Links at https://unimus.net/download have been updated with the newest version.

Full Changelog:
= Version 2.3.3 =
Features:
Added support for Zabbix 6.4 in "NMS Sync" (older versions of Zabbix are still supported)
Added primary keys to all tables in all DBs (this prevented deploy on some cloud DB engines)
Added device descriptions to exported HTML and .yaml files from "Config Search > Export / Send"
"Config Search > Export / Send" have been optimized to use less memory
"Backups > Send" and "Config Search > Send" will now retry sending results if email sending fails
Improved error handling for "Backups > Send" and "Config Search > Send" - if sending fails, proper error is now reported in UI
Improved built-in backup filters for newer versions of Cisco Nexus
Improved built-in backup filters for newer versions of Exablaze Fusion
Added fallback to using "enter" as the pagination key if "space" doesn't work
Added support for devices which ask "Press Y or Enter to continue" during login
Added an option to disable SSH client sending a "none" auth request to detect available auth methods (some devices don't support this)
Added security rules and security addresses as part of Palo Alto PanOS backups
Improved handling of CLI mode switching on Checkpoint devices
Improved connection handling with RSA SSH keys
Added additional debug logging in the Core module

Added support for log messages displayed after a prompt when a user logs in
- many devices can print a log message into the terminal after a user logs in
- this caused Unimus not to recognize the device prompt and fail to detect a successful login
- added support for multiple log message formats (Cisco IOS, Cisco SMB, IBM, Lenovo)

Added support for:
- ADVA OptiDriver Network Manager
- Dell SmartFabric
- Cisco FirePOWER for KVM / Azure / GCP
- Cisco Nexus FMB
- Cisco SD-WAN vEdge
- Cisco SD-WAN vSmart
- Exablaze FMB
- MRV OptiDriver Network Manager
- RAD Carrier Ethernet Switches
- Viptela vEdge
- Viptela vSmart

Fixes:
Fixed some devices could be omitted from backup during a scheduled backup run
Fixed unable to enable disabled connectors (both default and per-tag) on HSQL (file-based) database
Fixed invalid data in the config file (unimus.properties) would be duplicated on startup, resulting in large file growth
Fixed unable to remove a CLI Mode Change Password in "Credentials" if it was bound to a device
Fixed search in "Dashboard > Device job history" not working
Fixed Network Scan reverse DNS resolving not working on Windows
Fixed unable to deploy Unimus on some cloud-hosted databases due to missing primary keys
Fixed Connector update triggering discovery on devices which were not affected by the Connector change
Fixed errors on "Credentials > CLI Passwords > Show usage" when using the HSQL (file-based) database
Fixed errors on "Schedules > Show Scheduled Tasks" when using the HSQL (file-based) database
Fixed sorting in "Backups > Configuration > Filters" and "Devices > Info > Backup Filters" was not working
Fixed UI errors when changing the screen while Config Search export was running
Fixed multiple issues with table search on MSSQL
Fixed multiple minor UI / UX issues
Fixed incorrect config change notifications for date / time changes on Cisco Nexus
Fixed jobs failing on many device types due to post-login log messages
Fixed device connection failing when using RSA SSH keys in specific cases
Fixed backup failing on Checkpoint devices in specific cases
Fixed discovery failing on HP(E) Comware devices with specific login configurations
Fixed discovery failing on newer firmware versions of Dell OS10
Fixed discovery failing on Cisco FirePOWER in specific cases
Fixed discovery failing on specific Moxa switches

Security fixes:
Fixed Network Scan could fall back to resolving IP addresses using 8.8.8.8 in specific cases
Finally, there are a couple of minor known issues to be aware of:
Known issues:
ISSUE: "Re-discover affected devices when Ports or Connectors change" Advanced Settings option does not work
WORKAROUND: none
STATUS: issue scheduled for fixing

ISSUE: Some screens in Unimus show time in server's time zone, others in client's (browser's) time zone
WORKAROUND: none, issue only relevant if client has different time zone than server
STATUS: we are debating on how to fix this - will likely create a setting to select which TZ should be used
Let us know if you have any feedback / questions on this release, or if you run into any issues!
ryan.bohn
Posts: 3
Joined: Wed Apr 19, 2023 9:11 pm

Wed Apr 19, 2023 9:16 pm

Hi there,

Upgraded our unimus to 2.3.3 today, and now it won't start. Perhaps I've found a bug?

Code: Select all

2023-04-19 14:14:07.256  WARN 9184 --- [main] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'NMSImplAutoConfiguration' defined in URL [jar:file:/opt/unimus/Unimus.jar!/BOOT-INF/lib/unimus-nms-impl-3.10.1-STAGE.jar!/software/netcore/unimus/nms/impl/NMSImplAutoConfiguration.class]: Invocation of init method failed; nested exception is org.modelmapper.ConfigurationException: ModelMapper configuration errors:

1) Failed to instantiate proxied instance of software.netcore.unimus.nms.spi.domain.SyncPresetModel. Ensure that software.netcore.unimus.nms.spi.domain.SyncPresetModel has a non-private constructor.

1 error
2023-04-19 14:14:07.347 ERROR 9184 --- [main] o.s.boot.SpringApplication               : Application run failed

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'NMSImplAutoConfiguration' defined in URL [jar:file:/opt/unimus/Unimus.jar!/BOOT-INF/lib/unimus-nms-impl-3.10.1-STAGE.jar!/software/netcore/unimus/nms/impl/NMSImplAutoConfiguration.class]: Invocation of init method failed; nested exception is org.modelmapper.ConfigurationException: ModelMapper configuration errors:

1) Failed to instantiate proxied instance of software.netcore.unimus.nms.spi.domain.SyncPresetModel. Ensure that software.netcore.unimus.nms.spi.domain.SyncPresetModel has a non-private constructor.

1 error
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1804)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:620)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
        at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:944)
        at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
        at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145)
        at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:754)
        at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:434)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:338)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1343)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1332)
        at software.netcore.bootstrap.UnimusServer.main(UnimusServer.java:21)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:568)
        at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:49)
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:108)
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:58)
        at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:88)
Caused by: org.modelmapper.ConfigurationException: ModelMapper configuration errors:

1) Failed to instantiate proxied instance of software.netcore.unimus.nms.spi.domain.SyncPresetModel. Ensure that software.netcore.unimus.nms.spi.domain.SyncPresetModel has a non-private constructor.

1 error
        at org.modelmapper.internal.Errors.toConfigurationException(Errors.java:250)
        at org.modelmapper.internal.ReferenceMapExpressionImpl.<init>(ReferenceMapExpressionImpl.java:57)
        at org.modelmapper.internal.ConfigurableConditionExpressionImpl.<init>(ConfigurableConditionExpressionImpl.java:40)
        at org.modelmapper.internal.TypeMapImpl.addMappings(TypeMapImpl.java:266)
        at software.netcore.unimus.nms.impl.adapter.persistence.impl.mapping.SyncEntityMappingConfigurer.configureModelToEntityMapping(SyncEntityMappingConfigurer.java:71)
        at software.netcore.unimus.nms.impl.adapter.persistence.impl.mapping.SyncEntityMappingConfigurer.configure(SyncEntityMappingConfigurer.java:61)
        at software.netcore.unimus.nms.impl.NMSImplAutoConfiguration.afterPropertiesSet(NMSImplAutoConfiguration.java:25)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1863)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1800)
        ... 24 common frames omitted
Caused by: java.lang.IllegalStateException: size = 2
        at org.modelmapper.internal.bytebuddy.matcher.FilterableList$AbstractBase.getOnly(FilterableList.java:139)
        at org.modelmapper.internal.bytebuddy.implementation.InvocationHandlerAdapter.apply(InvocationHandlerAdapter.java:235)
        at org.modelmapper.internal.bytebuddy.implementation.InvocationHandlerAdapter$ForInstance$Appender.apply(InvocationHandlerAdapter.java:362)
        at org.modelmapper.internal.bytebuddy.dynamic.scaffold.TypeWriter$MethodPool$Record$ForDefinedMethod$WithBody.applyCode(TypeWriter.java:713)
        at org.modelmapper.internal.bytebuddy.dynamic.scaffold.TypeWriter$MethodPool$Record$ForDefinedMethod$WithBody.applyBody(TypeWriter.java:698)
        at org.modelmapper.internal.bytebuddy.dynamic.scaffold.TypeWriter$MethodPool$Record$ForDefinedMethod.apply(TypeWriter.java:605)
        at org.modelmapper.internal.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForCreation.create(TypeWriter.java:5129)
        at org.modelmapper.internal.bytebuddy.dynamic.scaffold.TypeWriter$Default.make(TypeWriter.java:1930)
        at org.modelmapper.internal.bytebuddy.dynamic.scaffold.subclass.SubclassDynamicTypeBuilder.make(SubclassDynamicTypeBuilder.java:212)
        at org.modelmapper.internal.bytebuddy.dynamic.scaffold.subclass.SubclassDynamicTypeBuilder.make(SubclassDynamicTypeBuilder.java:189)
        at org.modelmapper.internal.bytebuddy.dynamic.DynamicType$Builder$AbstractBase.make(DynamicType.java:3394)
        at org.modelmapper.internal.bytebuddy.dynamic.DynamicType$Builder$AbstractBase$Delegator.make(DynamicType.java:3583)
        at org.modelmapper.internal.ProxyFactory.proxyFor(ProxyFactory.java:97)
        at org.modelmapper.internal.ProxyFactory.proxyFor(ProxyFactory.java:77)
        at org.modelmapper.internal.ReferenceMapExpressionImpl.<init>(ReferenceMapExpressionImpl.java:51)
        ... 31 common frames omitted
User avatar
Tomas
Posts: 1206
Joined: Sat Jun 25, 2016 12:33 pm

Wed Apr 19, 2023 9:22 pm

ryan.bohn wrote:
Wed Apr 19, 2023 9:16 pm
Hi there,

Upgraded our unimus to 2.3.3 today, and now it won't start. Perhaps I've found a bug?
Hi there. Could you please create a Support Ticket in our Portal, and attach information about your deploy:
- server OS (Windows, Linux, etc.)
- deploy type (Portable, Installer, Tomcat)
- Java version (output of "java -version")
ryan.bohn
Posts: 3
Joined: Wed Apr 19, 2023 9:11 pm

Wed Apr 19, 2023 10:22 pm

Thanks, but I fixed it. It seems the latest update replaced the systemd service file, and changed the path I had to jre11 back to default which was jre17. It would be great to have a way to specify the java path that was persistent.
Last edited by ryan.bohn on Wed Apr 19, 2023 10:44 pm, edited 2 times in total.
User avatar
Tomas
Posts: 1206
Joined: Sat Jun 25, 2016 12:33 pm

Wed Apr 19, 2023 10:40 pm

ryan.bohn wrote:
Wed Apr 19, 2023 10:22 pm
This, but I fixed it. It seems the latest update replaced the systemd service file, and changed the path I had to jre11 back to default which was jre17. It would be great to have a way to specific the java path that was persistent.
You can run the install script with the "-m" parameter, which stands for "minimal install". Using this, the installer will only update the application binary, and not touch any of the support files (like the unit file).

"-u" ("unattended install") for a non-interactive mode is also supported :)
ryan.bohn
Posts: 3
Joined: Wed Apr 19, 2023 9:11 pm

Wed Apr 19, 2023 10:45 pm

Perfect.
rustyjarz
Posts: 17
Joined: Mon Aug 03, 2020 7:04 am

Tue Jun 13, 2023 10:48 pm

Hi

Is there an upgrade path? We're on v2.2.4 and the latest is v2.3.3, so can we jump direct or there's an upgrade path?

Thanks.
User avatar
Tomas
Posts: 1206
Joined: Sat Jun 25, 2016 12:33 pm

Tue Jun 13, 2023 11:00 pm

rustyjarz wrote:
Tue Jun 13, 2023 10:48 pm
We're on v2.2.4 and the latest is v2.3.3, so can we jump direct or there's an upgrade path?
Hi, you can upgrade directly to the latest version, the installer will take case of all the updates.
mtghr
Posts: 3
Joined: Fri Jan 21, 2022 7:48 pm

Mon Nov 06, 2023 3:59 pm

Hi

is there any documentation on the upgrade process

I want to upgrade from Version : 2.2.4 to the latest version
User avatar
Tomas
Posts: 1206
Joined: Sat Jun 25, 2016 12:33 pm

Mon Nov 06, 2023 6:48 pm

mtghr wrote:
Mon Nov 06, 2023 3:59 pm
Hi

is there any documentation on the upgrade process

I want to upgrade from Version : 2.2.4 to the latest version
You can just re-run the installer, it will take care of updating everything :)
More info also here: https://wiki.unimus.net/pages/viewpage. ... d=36110338
Post Reply