This discussion has been locked. The information referenced herein may be inaccurate due to age, software updates, or external references.
You can no longer post new replies to this discussion. If you have a similar question you can start a new discussion in this forum.

Best Practices: Transfer NPM to New Web Server

I am in the process of upgrading our NPM installation (NPM 10.3.1, APM 4.2, SEUM 1.5.0, NTA 3.7) to a new web server. The database and database server will remain the same. While I understand the general steps to complete this, I'm looking for advice form folks who have actually done this kind of upgrade before on best practices and things to avoid. I am discovering that it is probably best to only transfer web servers running the same component versions and do component upgrades as a separate step.My plan is to install all the components on the new web server, create a test database using a backup of the production database and point the new server at it. Once I've verified that everything is working the way I want, I'll schedule an outage, shutdown the old server, change the dns alias and ip address of the new server to match the old one, and point the production database at the new server. I assume that as long as my component versions are the same I can do it this way rather than have a longer outage where I stop the old server, move the database to the new server, and install and point the applications at the database one by one. Thoughts/Advice?

Matthew

  • I want to clarify which servers you are using before forging ahead:

    The database (ie MS-SQL schema, tables, etc run on the database server

    The polling engine performs the requests for data from the nodes

    the web server displays the SolarWinds portal

    All 3 can be running on the same machine, or you can actually separate all 3 functions (a separate db server, a separate polling engine, and a separate web server)

    It sounds like you are separating two of the 3 - you have one server for MS-SQL, and another server that is the polling engine and the web server. Is that correct? I'm going to offer a few thoughts under the presumption that I'm on the right track.

    You are right that your new servers should have the same versions as the old ones. It's just nice to use like-for-like.

    IF you didn't customize your SolarWinds website in any way (messing with the CSS files, the ASP files, etc) then you don't really have to "migrate" anything. The Solarwinds installation on the new server (polling engine and web server) will take care of all of it for you. Just run the install and you'll have a web instance running on port 80 (or whatever you choose) and it will show your solarwinds screens. Custom views, etc will all carry over.

    What you WILL need to migrate are any custom reports you created. Those are text files located in (using the default installation location) C:\program files(x86)\solarwinds\orion\reports. You only have to migrate your custom reports, not the standard ones.

    Let me know where (or if) I've gotten anything wrong with my assumptions about your situation.

  • when you migrate server, if you change IPs, make sure you update all your access-lists and your SNMP agents to allow the new IP

    if you change the hostname (or IP), make sure you update the engines table " Update Engines Set ServerName = '<NewServerName>', IP = '<NEW_IP>' where ServerName = '<OLD_Server_Name>' " before you connect the new server.

  • ***DOH Beat to the punch by 3 minutes***

    I know that that this doesn't apply to your particular scenario, but it might be food for thought for anyone who isn't responsible for their security devices.  We recently migrated our server to new hardware and also migrated to a new IP address.  One thing that I failed to calculate in this process was the neccessity to touch all of our firewalls to modify NAT statements and ACLs allowing the polling server access to the monitored network resources.

    This caused our upgrade to be longer than anticipated, but no real problems.

  • Yes, Adatole, you are correct. We have a separate database server but the polling engine and web server are on the same server.

    I'm running into a lot of problems at least with the testing phase of this project. I'm using a clone of the production database on the new server for testing purposes and had no trouble installing NPM and APM. However, when I try to install SEUM, something in the installation is triggering corruption in the test database. After SEUM 1.5 is installed, Orion web console no longer recognizes the trial licenses of NPM and APM. SEUM itself doesn't even show up in the license summary and when I click on the Transactions tab I get an error "SEUM License Verification Failed". Orion also gives me a tab for Netflow even though it isn't installed and also doesn’t show up in the license summary. Additionally, I get rendering errors on each node page for components such as Applications and Top XX Components by Statistic Data which didn't show up before. Basically something in the SEUM 1.5 installation is making the test database revert back to matching what is in production, at least in terms of components installed, licenses and versions.


    After that happened I uninstalled SEUM and everything was back the way it should be - the web console shows trials for NPM and APM and nothing else. I then tried to install NTM 3.7 and that install broke my web server, I get this error:


    Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.

       Compiler Error Message: CS0234: The type or namespace name 'Reporting' does not exist in the namespace 'SolarWinds.Netflow.Web' (are you missing an assembly reference?)


    I tried restarting all services and uninstalling/reinstalling without success.

  • I migrated my custom reports. Does this automatically migrate the report scheduler information? If not, how can the report scheduler entries be migrated to a new server?

  • No it doesn't (migrate the schedules). The report scheduler is actually a (fairly klunky) interface to Windows scheduler. So unless you know a way to export/import windows scheduler jobs there isn't a migration path.

    I'm not saying there's NOT a Windows scheduler export/import option. I just haven't ever looked for it.

  • I manually recreated our scheduled reports. I can view the reports just fine by clicking on the URL in the report scheduler screen, and according to the Windows Task Manager the reports are running successfully; however, no one is receiving the e-mails the reports are supposed to be generating.  The e-mail server settings are correct and in fact are the exact same settings that we are using to send our alerts which are working just fine. Do you know what could cause just the report scheduler e-mails not to work or how I could troubleshoot this?

  • The next test I would make is to re-create a job through the actual report scheduler and see if it works. if it does, then something is missing in your manual recreation. If it doesn't work, then something is broken overall.

  • I would suggest try to install Wireshark or any other packet sniffer and try to catch communication between computer where run Orion (Report Scheduler) and your SMTP server. In report scheduler try to execute job manually (right mouse button and from popup menu select Run Selected Job Now). And consequently try to examine if you will see some communication between your computer and SMTP email server.