Esri / arcgis-powershell-dsc

This repository contains scripts, code and samples for automating the install and configuration of ArcGIS (Enterprise and Desktop) using Microsoft Windows PowerShell DSC (Desired State Configuration).
Apache License 2.0
114 stars 62 forks source link

Geoevent upgrade to 11.3: "No Synchronization Service found in platform service" #571

Open Biboba opened 3 days ago

Biboba commented 3 days ago

Community Note

Module Version

Affected Resource(s)

Configuration Files

AnymousGeoEventDevDeployment.txt

Expected Behavior

Should be able to run the configuration after having upgraded the GeoEvent component from 11.1 to 11.3 that is to say, the plateform service "Zookeeper (Synchronization_Service)" should be deployed on ArcGIS Server following upgrade.

Actual Behavior

After successful upgrade of Geovent from 11.1 to 11.3 by running:

Invoke-ArcGISConfiguration -ConfigurationParametersFile C:\pathto\GisGeoEventDevDeployment.json -Credential (Get-Credential) -Mode Upgrade

Running the configuration again not in mode "Upgrade":

Invoke-ArcGISConfiguration -ConfigurationParametersFile C:\pathto\GisGeoEventDevDeployment.json -Credential (Get-Credential)

returns the following error:

PowerShell DSC resource ArcGIS_GeoEvent failed to execute Test-TargetResource functionality with error message: No Synchronization Service found in platform service

Here are the last lines of the log before failing:

16.10.2024 11:35:26: [GISEVENTDEV13]: LCM:  [ Start  Resource ]  [[ArcGIS_xFirewall]GeoEvent_FirewallRules]
16.10.2024 11:35:26: [GISEVENTDEV13]: LCM:  [ Start  Test     ]  [[ArcGIS_xFirewall]GeoEvent_FirewallRules]
16.10.2024 11:35:26: [GISEVENTDEV13]:                            [[ArcGIS_xFirewall]GeoEvent_FirewallRules] TEST: Find rules with specified parameters
16.10.2024 11:35:31: [GISEVENTDEV13]:                            [[ArcGIS_xFirewall]GeoEvent_FirewallRules] Get-FirewallRules: Found a Firewall Rule for Name: [ArcGISGeoEventFirewallRules] and DisplayGroup [ArcGIS GeoEvent Extension]
16.10.2024 11:35:31: [GISEVENTDEV13]:                            [[ArcGIS_xFirewall]GeoEvent_FirewallRules] TEST: Check each defined parameter against the existing Firewall Rule - ArcGISGeoEventFirewallRules
16.10.2024 11:35:31: [GISEVENTDEV13]:                            [[ArcGIS_xFirewall]GeoEvent_FirewallRules] Get-FirewallRuleProperty:  Get all the properties
16.10.2024 11:35:31: [GISEVENTDEV13]:                            [[ArcGIS_xFirewall]GeoEvent_FirewallRules] Get-FirewallRuleProperty: Add filter info to rule map
16.10.2024 11:35:31: [GISEVENTDEV13]:                            [[ArcGIS_xFirewall]GeoEvent_FirewallRules] Test-RuleHasProperties returning True
16.10.2024 11:35:31: [GISEVENTDEV13]:                            [[ArcGIS_xFirewall]GeoEvent_FirewallRules] TEST: Returning True
16.10.2024 11:35:31: [GISEVENTDEV13]: LCM:  [ End    Test     ]  [[ArcGIS_xFirewall]GeoEvent_FirewallRules]  in 4.6010 seconds.
16.10.2024 11:35:31: [GISEVENTDEV13]: LCM:  [ Skip   Set      ]  [[ArcGIS_xFirewall]GeoEvent_FirewallRules]
16.10.2024 11:35:31: [GISEVENTDEV13]: LCM:  [ End    Resource ]  [[ArcGIS_xFirewall]GeoEvent_FirewallRules]
16.10.2024 11:35:31: [GISEVENTDEV13]: LCM:  [ Start  Resource ]  [[ArcGIS_GeoEvent]ArcGIS_GeoEvent]
16.10.2024 11:35:31: [GISEVENTDEV13]: LCM:  [ Start  Test     ]  [[ArcGIS_GeoEvent]ArcGIS_GeoEvent]
16.10.2024 11:35:31: [GISEVENTDEV13]:                            [[ArcGIS_GeoEvent]ArcGIS_GeoEvent] Checking if WebSocketContextURL in sys props is wss://giseventdev13.company.com:6143/arcgis
16.10.2024 11:35:31: [GISEVENTDEV13]: LCM:  [ End    Test     ]  [[ArcGIS_GeoEvent]ArcGIS_GeoEvent]  in 0.2270 seconds.
16.10.2024 11:35:31: [GISEVENTDEV13]: LCM:  [ End    Set      ]
16.10.2024 11:35:31: L’opération « Invoquer une méthode CIM » est terminée.

Checking myself the Admin API of the ArcGIS Server, I confirm that in "admin/system/platformservices", there is only "Spark (Compute_Platform)" and the "Zookeeper (Synchronization_Service)" plateform service is missing.

Steps to Reproduce

  1. Install and configure Geoevent 11.1.
  2. Upgrade to 11.3 using this library in upgrade mode.
  3. Run the configuration again without the upgrade mode once at 11.3
  4. "No Synchronization Service found in platform service"

Important Factoids

Upgrading manually Geoevent from 11.1 to 11.3 works: the "Zookeeper (Synchronization_Service)" plateform service exists after the upgrade.

References

I wonder if this issue could not be related to our private cloud Openstack. Last time I had an issue with ArcGIS Powershell DSC that I could not reproduce manually, it was the following issue: https://github.com/Esri/arcgis-powershell-dsc/issues/132

Any idea ? What could "unregister" this plateform service ?

Thanks !

/cc @ceddc

Biboba commented 1 day ago

It took me a while to figure out what was going on but here are the results:

I tested them one by one:

  1. Install GeoEvent 11.3 with ArcGIS Powershell dsc
  2. Make a GET request to one of the URL above
  3. Make the upgrade request

Do you observe the phenomena on your side ?

Thanks