Doing a Silent Install and Configuration
You can do what's called a silent install and configuration of Report Services, where you don't have to interact with a user interface and you plug in some configuration values ahead of time.
Doing a Silent Install of Report Services
Follow this procedure if you're installing Report Services components newly or upgrading to the latest version.
To silently install Report Services
-
Open a command window and run it as administrator.
-
Navigate to the Report Services folder in the installer package:
Centrify-Server-Suite-version-mgmt-win64\DirectManage\Report Services
where version refers to the Verify Privilege Server Suite release version.
-
Run the following command to install the Report Services files:
Centrify_RptServices-version-win64.msi /quiet
where version refers to component version.
The program installs the Report Services files into the default installation folder. You'll know that the install worked if you see newer files in that folder.
You're now ready to configure Report Services. For new installations, see the next procedure. For upgrades, see Upgrading the reporting database silently.
Configuring a New Report Services Deployment Silently
There are a few main factors that drive which parameters to use in configuring Report Services silently (automatically without interaction):
- Are you creating a new database instance or publishing to an existing instance?
- Are you using PostreSQL or Microsoft SQL Server?
- Are you using Report Services in zone mode or domain mode?
When doing a silent configuration of report services, you create a file named config.json with the configuration parameters that you need for your deployment. For a list of the available parameters, see Report Services silent configuration parameters
Before you run the configuration program, be sure that you have the parameters set in the configuration file (config.json) and that you have the following ready to enter at the command line:
- ServiceAccount and ServiceAccountPassword
- PgSQLUser and PgSQLUserPassword (if using PostgreSQL)
The installer also supplies some sample configuration files (in the Report Services installation folder) that you can use as a guideline, depending on your deployment:
Database type | Domain mode | Zone mode |
---|---|---|
Microsoft SQL Server | config_sql_server_domain_mode_sample.json | config_sql_server_zone_mode_sample.json |
PostgreSQL | config_postgresql_domain_mode_sample.json | config_postgresql_zone_mode_sample.json |
To silently configure Report Services
-
Prepare the configuration file according to the settings you need.
-
Open a command line window as an administrator and run the report services configuration command according to the following usage:
Centrify.Report.Configuration.CLI.exe --ConfigFile "C:\\config.json" --ServiceAccount "Local System" --ServiceAccountPassword --PgSQLUser --PgSQLUserPassword
Parameter | Description |
---|---|
--ConfigFile
|
The configuration json file, including the path. You can name this file as desired, as long as it's a .json file. |
--IsGroupManagedServiceAccount
|
Use this option to specify that the service account is a group managed service account (gmsa). |
--ServiceAccount
|
The service account to use to configure report services. |
--ServiceAccountPassword
|
The service account password. If you're using a built-in account such as "Local System", you don't have to specify the password. |
--PgSQLUser
|
If you use PostrgreSQL as your database, specify the PostreSQL user name |
--PgSQLUserPassword
|
The PostgreSQL password |
The command does the configuration. If there is an issue or error, the command displays a message in red text. When the configuration succeeds, there's a message in green text indicating that the configuration is done.
Report Services Silent Configuration Parameters
Use the following parameters in the Report Services configuration file (config.json). You don't need to use all of them; it depends on which kind of database you use and whether you're configuring Report Services in domain mode or zone mode. These parameters match what you would enter in the installer interface.
The installer also supplies some sample configuration files (in the Report Services installation folder) that you can use as a guideline, depending on your deployment:
Database type | Domain mode | Zone mode |
---|---|---|
Microsoft SQL Server | config_sql_server_domain_mode_sample.json | config_sql_server_zone_mode_sample.json |
PostgreSQL | config_postgresql_domain_mode_sample.json | config_postgresql_zone_mode_sample.json |
Parameter name | Parameter type | Description | Example |
---|---|---|---|
AdditionalParam | string | (PostgreSQL only) Use this parameter if you have any additional PostgreSQL parameters that you need to specify. | |
DBInstallerPath | string | If you're creating a new database instance, this parameter specifies the location of the database installer file. | "DBInstallerPath": "D:\\Common\\SQLEXPR\\SQLEXPRADV_x64_ENU.exe" |
DBInstallationPath | string | If you're creating a new database instance, this parameter specifies where to install the new database instance. For directories or path separators, use \\ instead of \. | "DBInstallationPath": "C:\\Program Files\\Microsoft SQL Server\\130" |
DBName | string | If you're creating a new database instance, the name of the new database. | "DBName": "Report" |
DomainControllers | dictionary | (Zone mode only) -- key = domain, value = domain controller | {"test.com": "dc.test.com"} |
DomainMode | (Domain mode only) Use this parameter to specify domain mode. Inside of this parameter you specify the domains to synchronize to the reporting database. | "DomainMode": { "MonitoredDomains": { "test.com": "dc.test.com", "us.test.com": "dc.us.test.com" } } | |
ForestsForClassicZones | list of string values | (Zone mode only) The forest that contains the classic zones | |
ForestsForHierarchicalZones | list of string values | (Zone mode only) The forest that contains the hierarchical zones | ["companyA.com", "companyB.com"] |
InstanceName | string | (SQL Server only) If you're creating a new database instance, the name of the new database instance. For directories or path separators, use \\ instead of \. | "InstanceName": "REPORTS" |
IsDeployReport | true or false | (SQL Server only) Specifies whether or not to deploy reports. | "IsDeployReport": true |
LogLevel | string | Specifies the amount of detail that the installer includes in the log file. The format of the parameter is as follows: Log level (Off|Critical|Error|Warning|Information|Verbose|Trace) |
"LogLevel": "verbose" |
MonitoredClassicZones (list) | list of string values | (Zone mode only) If you use classic zones, use this parameter to specify the list of zones to synchronize with report services. | ["test.com/Program Data/Zones/ZoneC", "test.com/Program Data/Zones/ZoneD"] |
MonitoredHierarchicalZones | list of string values | (Zone mode only) The list and location of hierarchical zones | ["test.com/Program Data/Zones/hZoneA", "test.com/Program Data/Zones/hZoneB"] |
NewDB | true or false | Specifies whether to create a new database instance or not | "NewDB": true |
OdbcName | string | (PostgreSQL only) The name of the ODBC driver to use to connect with the PostgreSQL database. | "OdbcName": "PostgreSQL Unicode" |
OdbcInstaller | string | (PostgreSQL only) The path and filename of the PostgreSQL installer file. | |
Port | integer | (PostgreSQL only) The port for the PostgeSQL database. If you don't specify this parameter, the default port of 5432 is used. | "Port": "5432" |
ReportManagerUrl | string | (SQL Server only) Specifies the report manager URL. You use this URL to edit, publish, and administer reports. | "ReportManagerUrl": "http://MYCOMPUTER/Reports_REPORTS" |
ReportWebServiceUrl | string | (SQL Server only) Specifies the web service URL for deploying reports. You use the web service URL to read reports. | "ReportWebServiceUrl": "http://MYCOMPUTER/ReportServer_REPORTS" |
ScheduleFrequency | integer | You use this parameter in conjunction with the ScheduleRule setting. With this parameter, you specify the number of hours, days, or weeks to configure how often the report synchronization will happen. For example, if you set ScheduleRule to weekly and you specify ScheduleFrequency to 1, the synchronization will happen every week. If you change the ScheduleFrequency to 3, the synchronization will happen every 3 weeks. | "ScheduleRule": "interval", "ScheduleFrequency": 2, The above example specifies that the report synchronization will happen every 2 hours. |
string | You use this parameter in conjunction with the ScheduleFrequency setting. With this parameter, you specify what sets of time to count when scheduling the frequency of report services synchronization. The options that you can specify are "daily", "interval", or "weekly". Interval specifies an hourly interval. | "ScheduleRule": "weekly", "ScheduleFrequency": 2, The above example specifies that the report synchronization will happen every 2 weeks. | |
ScheduleStartTime (string) | string | Specifies the time of day to start the report services synchronization, in the 24 hour format of hh:mm:ss. | "ScheduleStartTime": "14:00:00", |
ScheduleWeekDays (list) | list of string values | Specifies on which days of the week the report services synchronization will happen. You can specify "all" for a daily synchronization or "none" to just do it manually as needed. Otherwise, you can specify one or more of the following for days of the week: "mon", "tue", "wed", "thu", "fri", "sat", "sun" | "ScheduleWeekDays": ["mon", "wed", "fri"] |
Server | string | (PostgreSQL only) The name of the PostgreSQL server. | "Server":"localhost" |
SqlCmdTimeout | int | SqlCommand timeout (second) | "SqlCmdTimeout": 3300 |
ZoneMode | (Zone mode only) Use this parameter to specify zone mode. Inside of this parameter you specify the MonitoredClassicZones and the MonitoredHierarchicalZones parameters and their respective settings. | ZoneMode": { "MonitoredClassicZones": [], "MonitoredHierarchicalZones": [ "test.com/Program Data/Zones/hZoneA" ], "ForestsForClassicZones": [ "test.com" ], "ForestsForHierarchicalZones": [], "DomainControllers": { "test.com": "dc.test.com", "us.test.com": "dc.us.test.com" } } |