- Hyperion services are grouped together if sorted on description
- Hyperion services gets sorted in the order in which they should startup
- You can add a more meaningful description
Since several servers needed to be modified a script was setup to perform this task. It can be run locally on the server or remotely by specifying a servername as parameter. It has been written in PowerShell, so it will run (and act) only on Windows servers.
Also, in our environment, HFM, FDM, Reporting & Analysis and Financial Reporting are running separately from Planning and Essbase so the descriptions reflect this. You may want to change descriptions to suit your own situation.
# Name : Set_Services.ps1
# Purpose : Change description of Hyperion services and set them to manual. Sorting the services by description
# will group the Hyperion services and sort them according to their order of startup.
# Parameter : Servername - optional, default: localhost
# Dependencies : None
# Author : P. da Graça
# Remark : Edited with Notepad++, layout maybe off in other editors
#
# When Who What
# 05-02-2014 PdaGraca Initial setup in PowerShell
# optional servername as a parameter to act on remote server. Default is local server.
Param([Parameter(Mandatory=$false)][string]$servername="localhost")
# first set up a hash table with service names as keys and descriptions as values. N.B. these are SERVICE names,
# not DISPLAY names! Change descriptions as needed. Use wildcards if servicenames contain EPM instance or other
# variable values (see 02, 07 & 99), but make sure only one unique service gets selected. Script does not handle
# multiple services simultaneously!
$hyperion_services = @{
"HyS9AdminServer" = "Hyperion 01 - Weblogic Administration Server";
"OracleProcessManager_ohsInstance*" = "Hyperion 02 - Oracle HTTP Services";
"HyS9FoundationServices" = "Hyperion 03 - Foundation Services (WorkSpace, Shared Services)";
"HyS9CALC" = "Hyperion 04 - Calculation Manager";
"HyS9aps" = "Hyperion 05 - Analytic Provider Services";
"Hyperion Studio Service BPMS bpms1" = "Hyperion 06 - Essbase Studio Server";
"opmn_EPM_epmsystem*" = "Hyperion 07 - Essbase Server";
"HyS9eas" = "Hyperion 08 - Essbase Administration Services";
"HyS9Planning" = "Hyperion 09 - Financial Planning Web Application";
"Hyperion RMI Registry" = "Hyperion 10 - Financial Planning RMI Registry";
"Hyperion S9 Financial Management DME Listener" = "Hyperion 04 - Financial Management DME Listener";
"Hyperion S9 Financial Management Service" = "Hyperion 05 - Financial Management Application Service";
"HFMWebServiceManager" = "Hyperion 06 - Financial Management Web Service";
"HyS9RaFrameworkAgent" = "Hyperion 07 - Reporting and Analysis Framework Agent";
"HyS9RaFramework" = "Hyperion 08 - Reporting and Analysis Framework Web Application";
"HyS9FRReports" = "Hyperion 09 - Financial Reporting Web Application";
"HyS9FRPrint" = "Hyperion 10 - Financial Reporting Print Service (Generates PDF, batch, and scheduled job output)";
"HyS9FDMTaskManagerSrv" = "Hyperion 11 - Financial Data Quality Management Task Manager (Provides the ability to schedule FDM tasks.)";
"Oracled_oracle_middle*" = "Hyperion 99 - Configuration Manager";
}
ForEach ($entry in $hyperion_services.GetEnumerator()) # loop through all keys (service names) in the hash table
{
$servicename=$entry.name # assign key to service name
$description=$entry.value # assign value to service description
$service=(Get-Service -computerName $servername -Name $servicename -ErrorAction SilentlyContinue) # check if service exists
If ($service) # if yes
{
$servicename=$service.name # assign definite servicename in case of wildcards
$service_properties=(Get-WmiObject -ComputerName $servername -Class Win32_Service -Property StartMode -Filter "Name='$servicename'") # get service properties
If ($service_properties.Startmode -eq "Automatic"){$service_properties.StartMode = "Manual"} # set to manual if it's automatic
Set-Service -ComputerName $servername -Name $servicename -Description $description # set description
}
}
Result on the server:
All Hyperion services grouped together and sorted by startup order.