NCM 7.0, 7.1, and 7.2 Architecture and Deployment
This blog is a sequel of the previous Orion Architecture blog and focuses on the NCM 7.x architecture and deployment.
NCM 7.x architecture is different from the previous versions, mostly because it leverages several components from Orion Core (see Orion Architecture blog) and integrates more tightly with Core-based products such as NPM.
NCM 7.1 brought these additional changes:
- Support for additional polling engines
- Fresh installation does not allow for installing NCM integrated with Orion (e.g. NPM) on a separate platform. However, customers running NCM 7.0 integrated with NPM on a separate server, can upgrade to 7.1 and remain in this deployment type (integrated - separate server). As described in NCM 7.1 release notes, section "NCM 7.1 deployment types", the integrated-on-same-server deployment will be the only option in a future release.
The recently released NCM 7.3 instroduces these changes:
- NCM and Core/NPM databases have been merged.
- Deployment scenario where NCM is integrated with NPM but installed on a separate server is no longer supported.
- Please see NCM 7.3 Architecture and Deployment for details.
Standalone deployment
Choose this deployment if you only have SolarWinds NCM or if you want it completely non-integrated to any other Orion-based product.
Other SolarWinds products can be installed and integrated to a standalone NCM at a later time.
Node, User Account and Syslog &Trap Management rely on Core components. NCM 7 also benefits from Network Atlas.
NCM 7.0 always relies on 2 databases
- The “Core database” contains essentially the information related to Node and User Account. The “NCM database” contains all information related to device configurations
- They can be hosted on the same or separate database servers. Here are a few diagrams showing NCM standalone with several possible database deployment options:
- Watch a video of a Standalone NCM 7.0 deployment here
Integrated Single Server deployment
- Choose this deployment to optimize your hardware footprint for NPM and NCM
- NCM 7.x always relies on 2 databases, see the Standalone deployment type for more information.
- NCM 7.x can be co-hosted with NPM 10.x
- In the future, this will be the only mode supporting NPM integration.
In this deployment, both share the same Core.
In this case, the Web UI is always integrated, i.e. Home/Network and Configs tabs appear side by side in the WEB interface. Note that it is possible to configure NPM users to have no visibility of the NCM tab and resources, with NCM 7.0.1, by using the NCM User Account setting NCM Role=None. See NCM admin guide section “Setting User Account Access”.
In an upgrade scenario (E.g. NCM 6 to NCM 7 and NPM 10.1 to NPM 10.2), the nodes previously in NCM 6.x will be synchronized with the Core database and appear in NPM. If some of these nodes are to be NCM-only nodes, you can hide them from NPM users, by using account limitations. Orion Core will also poll them for status (up/down).
In this deployment, the database location options are similar to the Standalone deployment, described above.
- Watch a video of a Integrated Single Server deployment here
Integrated Separate Server deployment
- Choose this deployment to optimize the scalability of your deployment
- NCM 7.0 can be hosted on a separate server from NPM 10.2, and be integrated.
- NCM 7.1 can be hosted on a separate server from NPM 10.3, and be integrated, but only in an upgrade scenario. A fresh installation of NCM 7.1 does not allow for this deployment mode. This deployment will be entirely desupported in a future version of NCM (i.e. upgrade won't be possible either). We recommend moving away from this config by moving your NCM on the same platform as NPM, if you want to keep them integrated.
- NCM 7.3 no longer supports this deployment setup.
In this case, the Web UI is always integrated, i.e. Home/Network and Configs tabs appear side by side in the WEB interface. Note that it is possible to configure NPM users to have no visibility of the NCM tab and resources, with NCM 7.0.1, by using the NCM User Account setting NCM Role=None. See NCM admin guide section “Setting User Account Access”.
In this deployment, both share the same Core (Core-1 on diagram)
The Core installed with NCM Server (Core-2 on diagram) is required for integration but won’t perform any polling activity. It can be used to receive Syslogs and Traps, for Real-Time Change Detection. Note that the Core-1 Syslogs and Traps (shared with NPM in this example), can also be used for NCM’s Real-Time Change Detection.
In an upgrade scenario (E.g. NCM 6 to NCM 7.x and NPM 10.1 to NPM 10.3), and whatever your deployment type, the rules used for Real-Time Change Detection, must be reconfigured using the Core-based Syslogs and Traps server. See NCM admin guide section “Configuring Realtime Configuration Change Detection”.
In an upgrade scenario (E.g. NCM 6 to NCM 7.x and NPM 10.1 to NPM 10.3), the nodes previously in NCM 6.x will be synchronized with the Core database and appear in NPM. If some of these nodes are to be NCM-only nodes, you can hide them from NPM users, by using account limitations. Orion Core will poll them for status (up/down).
In this deployment, the database location options are similar to the Standalone deployment, described above
- Watch a video of an NCM 7.0 Integrated Separate Server deployment here
Integrated Separate Server deployment – Additional Web Servers
- Choose this deployment to further optimize the scalability of your deployment
- The separate deployment of NCM can leverage 2 NCM Web modules
One integrated with NPM and one (or more) integrated with an Additional Web Server
In this deployment, the database location options are similar to the Standalone deployment, described above
NCM 7.1 multi-poller deployment
Multi-poller - Standalone
- This is the recommended configuration for NCM standalone, leveraging multiple polling engines
Multi-poller - Integrated Same Server
- This is the recommended configuration for NCM integrated with NPM, leveraging multiple polling engines
- The polling engines are shared by NPM and NCM
Multi-poller - Integrated Separate Server
- This configuration (NCM integrated with NPM on a separate server), is still possible in the case of an upgrade from NCM 7.0, but will be de-supported moving forward. It is not possible to install a fresh NCM 7.1 in this configuration.
- The polling engines are shared by NPM and NCM
- The notation (A, B, …H) reflects example of 8 nodes managed by NPM and NCM integrated, to describe the activities performed but the platform components, on each of these nodes
- Devices A, B, C, are assigned to Additional Poller 1
- Devices D, E, F are assigned to the Orion Main poller
- Devices G, H are assigned to Additional Poller2
- The activity performed on these 8 devices is as follows:
- Node status and performance polling:
»ABC: performed by Poller 1
»DEF:performed by Main poller
»GH: performed by Poller 2
- Config management
»ABC: performed by Poller 1
»DEF: performed by NCM server
»GH: performed by Poller 2
NCM 7.x cannot be co-hosted with scalability engines
- NCM 7.0 cannot be installed on the same server as a scalability engine: Additional Polling Engine or Additional Web Server
NCM – Multiple NPM
- This NCM 6.x/NPM 10.1.x configuration (one NCM integrated to multiple NPMs), is not supported anymore with NCM 7.x/NPM 10.2
s
- EOC can offer views integrated between one NCM and multiple NPMs
EOC displays aggregated data and allows for drill-down to respective UI’s in order to get detailed views.
Other non-supported deployments
- 2 NCMs integrated to one NPM, sharing the same NCM DB and Core DB
- 2 NCMs integrated to one NPM, sharing the same Core DB