I was having similar problems and in case anybody is interested, I put together a PowerShell script to update the password and identity of the Hadoop services as well as the ASP.NET AppPool identity. The script can also switch to a different identity
if the GPO does not allow local users, but will need a small edit.
**** script *****
$user="hadoop"
$password="<<pick a password>>"
$de = [adsi]"WinNT://./$user,user"
$de.SetPassword($Password)
$de.SetInfo()
write-host "password set for [$user]"
Get-Service |
Where-Object { $_.DisplayName -imatch ".*apache.*" } |
ForEach-Object {
write-host "Processing service [$($_.DisplayName)]"
Stop-Service -Name $_.Name
$service = gwmi win32_service -filter "name='$($_.Name)'"
$dummy = $service.change($null,$null,$null,$null,$null,$null,".\$user",$password)
}
write-host "service identities set"
# set the identity of the application pool
$pool = Get-Item IIS:\AppPools\HadoopAppPool
$pool.processModel.userName = $user
$pool.processModel.password = $password
$pool.Stop()
$pool.Start()
Set-Item -Path IIS:\AppPools\HadoopAppPool -Value $pool
write-host "asp.net application pool identity set"