Methodology
- Start with a failure state
- Investigate and gather evidence
- Review possible causes
- Test to find the root cause
- Provide a Solution
Scenario:
Failure State:
User has a test env. And wanted to validate a planned change
Instead of getting the standard Studio GUI he received the „initial configuration” screen
Investigate and gather evidence
Support engineer said PS should be used to check if the DDC was still active in Site. State was shown as active!
- Asnp citrix*
- Get-brokercontroller
Engineer performed subsequent tests to check each DC services:
- Show all citrix services
- Get-command get-*serivcestatus
- Upon querying all services one by one, he found out that the DB connection was unconfigured (means no DB config defined)
- Get-ConfigServiceStatus
- Upon querying Config DB connection, no results returned
- Get-ConfigDBConnection
- Upon querying BrokerDBConnection, result returned as an OK status. Pointer was facing correct DB server.
- Trusted_Connection=True shows that windows auth was used to connect to DB.
- Get-BrokerDBConnection
Review possible causes
- Most likely Config DB Service string is missing since all other services were correctly configured with the SQL Server DB
Test to find the root cause
- To confirm theory, connection string had to be restored. Connection string obtained from querying the broker service db connection string
- Get-BrokerDBConnection
- Using this information the connection string has been redefined with the below command:
- Set-ConfigDBConnection -DBConnection „server=NYC-SQL-001.workspacelab.com;database=DB-XDMain;Trusted_connection=True”
- Status is returned with „OK” as shown below
- Functionality confirmation has been obtained from querying the BrokerDB connection with ConfigDB connection
- Get-ConfigDBConnection
- Get-BrokerDBConnection
Provide a solution
- Ask affected user to restart console and check if functionality has been restored.
- Use configuration logging to determine changes done and find who did what to cause this issue
- In this situation, another admin removed the DBConnectionString for the configuration service.
Takeaways