In a recent upgrade from 9.6 CU24 to 10.1 CU6, we can see the notice below on the progress.log file, though the upgrade finished successfully and Dataminer is running apparently without issues.
192.168.231.100|2021-09-08 13:32:33|information|Executing action EnableWebsocketsWinFeatureUpgrade.exe
192.168.231.100|2021-09-08 13:32:33|information|Executing upgrade actions (v9.6.0.0-10750 => v10.1.0.0-10813)
192.168.231.100|2021-09-08 13:32:33|notice|Enabling of Websockets is pending. A reboot is required.
The message suggests a reboot of the server machine is required. Is it really?
Trying to check the state of the WebSockets in IIS, we get the following:
C:\Skyline DataMiner\Files>dism /online /get-featureinfo:IIS-WebSockets
Deployment Image Servicing and Management tool
Version: 10.0.14393.0
Image Version: 10.0.14393.0
Feature Information:
Feature Name : IIS-WebSockets
Display Name : WebSocket Protocol
Description : IIS 10.0 and ASP.NET 4.6 support writing server applications that communicate over the WebSocket Protocol.
Restart Required : Possible
State : Disabled
Custom Properties:
ServerComponent\Description : IIS 10.0 and ASP.NET 4.6 support writing server applications that communicate over the WebSocket Protocol.
ServerComponent\DisplayName : WebSocket Protocol
ServerComponent\Id : 447
ServerComponent\Parent : Web-App-Dev
ServerComponent\Type : RoleService
ServerComponent\UniqueName : Web-WebSockets
ServerComponent\Deploys\Update\Name : IIS-WebSockets
The operation completed successfully.
C:\Skyline DataMiner\Files>
This action installs the websocket feature in IIS, which is used to have real time updates in the web applications (Dashboards, Monitoring, etc). The apps will still function if there is no websocket communication possible, as they will get the data using polling from the DMA (which can generate more load on the server) and thus won't update in real time.
So if you get this message, we recommend to reboot the server to have the best user experience in the web applications.
Note that some Dashboards functionality requires the websocket connection (for example Spectrum).