Project

General

Profile

Actions

Feature #19593

closed

Windows Server 2016 image based provisioning

Added by Anonymous almost 7 years ago. Updated almost 7 years ago.

Status:
Feedback
Priority:
Normal
Assignee:
-
Category:
Compute resources - VMware
Target version:
-
Difficulty:
medium
Triaged:
Fixed in Releases:
Found in Releases:

Description

i assert that the image based provisioning does not work with windows server 2016 against the vmware provider. Even after the following ticket and pull request i guess it will not work:

http://projects.theforeman.org/issues/19235
https://github.com/theforeman/foreman/pull/4447

If i understand it right, this is just the "UI-View and OSIdentifer connection/mapping".
The pull request said:

"windows9srv-64" => "Microsoft Windows Server 2016 (64-bit)",

The VMWare vSphere 6.5 Documentation GuestOSIdentifier said, the name of the OSIdentifier for Windows Server 2016 is windows9Server64Guest. See http://pubs.vmware.com/vsphere-65/index.jsp?topic=%2Fcom.vmware.wssdk.apiref.doc%2Fvim.vm.GuestOsDescriptor.GuestOsIdentifier.html

In the file app/models/compute_resources/foreman/model/vmware.rb this GuestOSIdentifier named "windows9Server64Guest" alredy exists as "Microsoft Windows Server Threshhold (64-bit)". See at the codeline:

"windows9Server64Guest" => "Microsoft Windows Server Threshhold (64-bit)" 

The pull request seems wrong (i have request a change at the pull) and in fact i think it doesent change anything, because the provisioning over a vmware image/template should work by choosing "Microsoft Windows Server Threshhold (64-bit)" at "New Host -> Virtual Machine -> Guest OS" beause this label alredy connected with the right HostOSIdentifier.

So i think we have another problem, that windows server 2016 provisioning does not work in general.

What i try:

Provisioning a new host from a VMWare vSphere 6.5 image with a user data template. The Host are created, but Windows Server 2016 said at VMWare-Sysprep the user data (who comes from the user data template) could not be read / is not in the right format. I have used the user data from my old Windows Server 2012 R2 Template. Foreman does not show any error, so i guess everything should work.

It seems the user data template translation to vmware does not work correct.
my user data template at my foreman windows server 2016 provisioning template looks like this (just to be sure we discus on the same basis):

<%-
  powershell = '%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe -ExecutionPolicy Unrestricted -NoLogo -NoProfile'
-%>
---
identity:
  Sysprep:
    guiRunOnce:
      commandList:
        - '%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe -Command "C:\Temp\Puppet\PuppetAgentFiles\puppet4install.ps1 -PuppetMasterServer mypuppetmaster.my-domain.de -PuppetEnvironment DevTest_IT_Umgebung"'
    guiUnattended:
      autoLogon: true
      autoLogonCount: 1
      password:
        plainText: true
        value: 'usernamepassword'
      timeZone: 110
    identification:
      domainAdmin: 'username@mydomain-ag.de'
      domainAdminPassword:
        plainText: true
        value: 'username'
      joinDomain: 'mydomain-ag.de'
    licenseFilePrintData:
      autoMode: 'perSeat'
    userData:
      computerName: <%= @host.shortname %>
      fullName: 'IT'
      orgName: 'Company Name'
      productId: 'D2N9P-3P6X9-2R39C-7RTCD-MDVJX'
nicSettingMap:
  - adapter:
      dnsDomain: <%= @host.domain %>
      dnsServerList:
        - <%= @host.subnet.dns_primary %>
      gateway:
        - <%= @host.subnet.gateway %>
      ip: <%= @host.ip %>
      subnetMask: <%= @host.subnet.mask %>
globalIPSettings:
  dnsServerList:
    - <%= @host.subnet.dns_primary %>
  dnsSuffixList:
    - <%= @host.domain %>
options:
  changeSID: true
  deleteAccounts: false

I do everything what i could to bring windows server 2016 working with foreman-vmware. If you need any test and more informations please let me know.

Thanks for your help


Related issues 1 (0 open1 closed)

Related to Foreman - Refactor #19604: Update GuestOsIdentifier in vmware.rb to new vSphere 6.5ClosedTimo Goebel05/19/2017Actions
Actions #1

Updated by Anonymous almost 7 years ago

  • Related to Refactor #19604: Update GuestOsIdentifier in vmware.rb to new vSphere 6.5 added
Actions #2

Updated by Anonymous almost 7 years ago

  • Status changed from New to Feedback

Good morning together,

some good news at this point.
I have tested the fix #19604 and its enough to bring Windows Server 2016 running.

For everybody who wants to use Windows Server 2016 before the patch is in the branche, its enough to choose "Microsoft Windows Server Threshhold (64-bit)" as a guest os during provisioning a new host in foreman. Windows Server Threshhold had alredy the right mapping for Windows Server 2016 in the vmware.rb.

If sb. use my provisioning template from above, make sure using a Windows Server 2016 KMS-Key as productId => https://technet.microsoft.com/en-us/library/jj612867(v=ws.11).aspx

Regards

Actions

Also available in: Atom PDF