none
MSDN and Production Environment (again) RRS feed

  • Question

  • I started this on another forum before I found this one, but this seems a more suitable place.

    The definition of "production environment" seems rather odd. In some responses on this forum it appears to refer to "soft" systems whereas the latest MSDN licence refers to environment and physical kit.

    Below is a conversation I had over email with someone from MSDN and I find the whole thing utterly bizarre. I cannot for the life of me see how this helps anyone apart from MS being able to charge for non-production software. It renders having a powerful desktop for local lab experimentation pointless as you're not allowed to install anything and effectively doubles the hardware cost to small companies if they have to buy a separate server for any testing work (yes, best practice and all that, but budgets...) or pay out for a Windows Datacenter licence.

    Question:
    “If a physical machine running one or more virtual machines is used entirely for development and test, then the operating system used on the physical host system can be MSDN software. However, if the physical machine or any of the VMs hosted on that physical system are used for other purposes, then both the operating system within the VM and the operating system for the physical host must be licensed separately.”

    Is this actually saying that if I have a physical server licenced with a purchased (not MSDN) Server 2012 R2, running Hyper-V with, say, a production file server VM on it,  that ALL Windows VMs on that machine must have purchased licences even if they are only for development & testing purposes?

    Is this saying that all production and development Windows VMs must be only completely separate hardware, cluster, SAN, etc otherwise you must pay for full licences for the VMs?

    Or does it just mean that the bare metal licence (plus any additional ones required for running further production VMs) must be purchased if the VMs are a mix of production and development?

    Answer:

    We kindly inform that any products licensed under the developer tools model (e.g. SQL/BizTalk developer and/or MSDN) must be installed on their own separate physical hardware.

    You are not allowed to run test or development products on a server where production workloads are running at the same time.  Kindly run your developer software on a device/host that is dedicated to testing and development.

    Explanation:

    The Product Use Rights (PUR) say that the developer software is not licensed for use in a production environment. Even if the PUR does not have a separate definition of production environment, a production environment is a set of resources for network, physically dedicated hardware and software to provide "live" service.  If the intent was to say that the same physical server could be used for both development and production - it would say "not licensed for use in a production OSE," instead it says environment.

     

    See current PUR, page  51:

    Developer Tools (User License)

    [.]

    You have the rights below for each license you acquire.

    #      You must assign each license to a single user.

    #      Each Licensed User may run an unlimited number of copies of the Developer Tools software and any prior version on any device.

    #      The Licensed User may use the software for evaluation and to design, develop, test, and demonstrate your programs. These rights include the use of the software to simulate an end user environment to diagnose issues related to your programs.

    #      The software is not licensed for use in a production environment. #      Additional rights provided in license terms included with the software are additive to these product use rights, provided that there is no conflict with these product use rights, except for superseding use terms outlined below.

    Question:

    Classifying an entire physical infrastructure as "production" in these days of virtualisation and shared storage really does not make any sense at all. Not using the software for production purposes makes perfect sense, but not being able to locate it alongside production OS installs is mad. Does this only apply to the server running the VM (CPU and RAM)? If the VHDX is hosted on shared SAN storage does the SAN have to be dedicated to non-production storage?

    Answer:

    We kindly inform that after double-checking the case we would like to confirm the development software cannot be run on the same hardware with production software.

    We have also received a feedback from the responsible team regarding your request about a dedicated SAN (Storage Area Network) for MSDN software.

    They have confirmed that the SAN has to be dedicated to the development and testing environment if it is used to run the software acquired through MSDN.

    Question:

    OK, so if I have my desktop (which is a production environment as I use it for email and other day to day office tasks), can I turn on Hyper-V and install an MSDN Windows Server 2012 instance for development purposes?

    Answer:

    We kindly inform it is not allowed to install and run software from MSDN subscriptions in production environments. Please do not install MSDN software on a desktop in a production environment:

    "[.] The customer will need to run the developer software on a device/host that is dedicated to testing and development.

    Explanation:

     

    The Product Use Rights (PUR) say that the developer software is not licensed for use in a production environment. Even if the PUR does not have a separate definition of production environment, a production environment is a set of resources for network, physically dedicated hardware and software to provide "live" service.  If the intent was to say that the same physical server could be used for both development and production - it would say "not licensed for use in a production OSE," instead it says environment.

     

    See current PUR, page  51:

     

    Developer Tools (User License)

    [.]

    You have the rights below for each license you acquire.

     

    -      You must assign each license to a single user.

    -      Each Licensed User may run an unlimited number of copies of the Developer Tools software and any prior version on any device.

    -      The Licensed User may use the software for evaluation and to design, develop, test, and demonstrate your programs. These rights include the use of the software to simulate an end user environment to diagnose issues related to your programs.

    -  The software is not licensed for use in a production environment.

    -      Additional rights provided in license terms included with the software are additive to these product use rights, provided that there is no conflict with these product use rights, except for superseding use terms outlined below.

    Wednesday, August 20, 2014 7:21 AM

Answers

  • Hey Tinkering,

    Well I got the word back and it turns out the response you got previously was correct.  However, the folks I spoke to are completely aware of this issue and working towards a resolution.  The licensing documentation is updated periodically so lets revisit this the next time its published.  When that happens is up to them, but its been updated a few times already this year, so I don't think it'll be too long.

    Thanks,
    Mike


    MSDN and TechNet Subscriptions Support

    • Marked as answer by Tinkering 101 Friday, September 5, 2014 8:28 AM
    Thursday, September 4, 2014 5:36 PM
    Moderator

All replies

  • Thanks for your post Tinkering 101, its quite a lot of information to digest.  It sounds like you've had a bunch of questions regarding the definition of production environments for the MSDN Customer Service team that you have gotten answers to.  

    I might've missed it but I didn't see a follow up question for the forum.  

    How can I help?

    Thanks,
    Mike


    MSDN and TechNet Subscriptions Support

    Wednesday, August 20, 2014 5:28 PM
    Moderator
  • Hi Mike,

    I think I'm asking for the impossible to be honest which is "why?". I've got the answer which appears to be a categorical "no you can't", but what I am really struggling with is why such a bizarre rule would be in place.

    Traditionally (and maybe we've all be doing this wrong for years) MSDN gave you the ability to install what you want where you wanted as long as you didn't use it for production purposes. That was its big selling point: dev and test environments without massive licence costs. Defining production purposes was really simple, i.e. is this something used for running your business?

    Now there's this limitation on where the software can be installed based on the hardware it's installed on, irrelevant of what it's used for. The key bit here being OS installs, rather than, say, Office or SQL.

    We can't install a local MSDN instance of Server 2012 or 8.1 for dev and test under Hyper-V on desktops because desktops used for email, writing documents, etc are production.

    We can't install a test Server 2012 VM on a server if that server also hosts, say, the VM hosting TFS (ironic given that TFS itself it supplied as part of MSDN).

    We're all virtualising these days. Having hardware we can move our virtuals between for ease of maintenance, upgrading, temporary capacity needs, live capacity testing, etc is key to this working. MSDN licensing imposing restrictions on the physical location of these VMs irrelevant of what they are being used for seems completely at odds with this.

    And that brings it full circle to my point behind all of this: Why impose this restriction at all? What does it achieve apart from devaluing MSDN?


    Thursday, August 21, 2014 9:04 AM
  • Two things on this:

    1) I'm going to reread all of this and pick through it, but it seems like your central statement is:

    It sucks that MSDN software can't be run in a production environment, that means you have to have two entirely separate hardware environments, which are costly, and it seems unnecessary.  

    Please confirm or append or amend?

    2) I'm not your lawyer, and you need one to fully interpret this for you to see what they think you can defend in the event that Microsoft were to sue you, and in that event, you and I would be on opposite sides of a legal dispute.  There is no such thing as a "but Mike Kinsman said" defense :)  What counts here is what the documentation says, not what I say.  I'm going to use intentionally inconclusive language below and you'll need to reach your own conclusions.  

    So I cracked open the Visual Studio and MSDN Licensing whitepaper, and it says:

    A production environment is defined as an environment that is accessed by end users of an application (such as an Internet Web site) and that is used for more than Acceptance Testing of that application or Feedback. Some scenarios that constitute production environments include:

    • Environments that connect to a production database.
    • Environments that support disaster-recovery or backup for a production environment.
    • Environments that are used for production at least some of the time, such a server that is rotated into production during peak periods of activity.

    So I dont think (here's that inconclusive language) but am not sure that your desktop machines count as production environments, based on that, unless end users are connecting to them. (I dearly hope they are not!)

    Also, there is a section here, on the MSDN Licensing help page that says (with my added emphasis):

    Many MSDN subscribers use a computer for mixed use—both design, development, testing, and demonstration of your programs (the use allowed under the MSDN subscription license) and some other use.  Using the software in any other way, such as for doing email, playing games, or editing a document is another use and is not covered by the MSDN subscription license.  When this happens, the underlying operating system must also be licensed normally by purchasing a regular copy of Windows such as the one that came with a new OEM PC.

    Now to me, it seems this might be saying that the underlying operating system on a work machine cannot be licensed using MSDN if that work machine is going to be doing non-msdn things in addition to MSDN things.  It doesn't say "This can't happen" it just says "When this happens, the underlying OS must be licensed normally..." 

    So, based on what I'm reading it seems that this quote from you might not be true:

    "We can't install a local MSDN instance of Server 2012 or 8.1 for dev and test under Hyper-V on desktops because desktops used for email, writing documents, etc are production. "

    You've said a lot more than this quote and I've got to get to the rest of it, but I hope this gives you some hope :)  

    Looking forward to your response.

    Thanks,
    Mike


    MSDN and TechNet Subscriptions Support


    Thursday, August 21, 2014 11:28 PM
    Moderator
  • Hi Mike,

    It sucks that MSDN software can't be run in a production environment, that means you have to have two entirely separate hardware environments, which are costly, and it seems unnecessary.  

    That's essentially it. I'm not saying for one second that it should be used for production purposes, just that it's physical location shouldn't be relevant. Also, the word "environment" is a very bad choice in the documentation simply because it's very open to interpretation.


    A production environment is defined as an environment that is accessed by end users of an application (such as an Internet Web site) and that is used for more than Acceptance Testing of that application or Feedback. Some scenarios that constitute production environments include:

    • Environments that connect to a production database.
    • Environments that support disaster-recovery or backup for a production environment.
    • Environments that are used for production at least some of the time, such a server that is rotated into production during peak periods of activity.

    So I dont think (here's that inconclusive language) but am not sure that your desktop machines count as production environments, based on that, unless end users are connecting to them. (I dearly hope they are not!)


    My reading is based on the "Other Guidance" section:

    "If a physical machine running one or more virtual machines is used entirely for development and test, then the operating system used on the physical host system can be MSDN software. However, if the physical machine or any of the VMs hosted on that physical system are used for other purposes, then both the operating system within the VM and the operating system for the physical host must be licensed separately."

    <o:p>This is the crux of the matter and the interpretation of "licensed separately". A (to my mind) sensible reading of that would be "if you're running any production purpose VMs on a server then the physical host OS must be a full licence [presuming it's Server 2012 and not, say, VMWare or Hyper-V 2012] as must all production purpose VMs on that server". This has been getting interpreted by others (I'm not the first) and backed up by MS as meaning that if you want to run any dev/test VMs on a server that also runs production VMs then you can't use MSDN for those dev/test VMs.</o:p>

    Also, there is a section here, on the MSDN Licensing help page that says (with my added emphasis):

    Many MSDN subscribers use a computer for mixed use—both design, development, testing, and demonstration of your programs (the use allowed under the MSDN subscription license) and some other use.  Using the software in any other way, such as for doing email, playing games, or editing a document is another use and is not covered by the MSDN subscription license.  When this happens, the underlying operating system must also be licensed normally by purchasing a regular copy of Windows such as the one that came with a new OEM PC.

    Now to me, it seems this might be saying that the underlying operating system on a work machine cannot be licensed using MSDN if that work machine is going to be doing non-msdn things in addition to MSDN things.  It doesn't say "This can't happen" it just says "When this happens, the underlying OS must be licensed normally..." 

    So, based on what I'm reading it seems that this quote from you might not be true:

    "We can't install a local MSDN instance of Server 2012 or 8.1 for dev and test under Hyper-V on desktops because desktops used for email, writing documents, etc are production. "

    I wouldn't have expected this to be true either, but this is the response I was given. It may well be that my question was misunderstood. I hope this is the case otherwise one of the big reasons for turning on Hyper-V on  expensive, powerful desktops enabling the running of personal test environments goes out the window!

    Thanks for your time on this.

    Friday, August 22, 2014 3:51 AM
  • I know its been a while Tinkering, but I'm still working on a response to this.   Sorry for the delay.

    Thanks,
    Mike


    MSDN and TechNet Subscriptions Support

    Wednesday, September 3, 2014 10:13 PM
    Moderator
  • Hi Mike,

    Your efforts are appreciated, whatever the outcome.

    I love the concept of MSDN and really don't want petty, lawyerly squabbles to tarnish a fantastic resource :)

    Thursday, September 4, 2014 9:27 AM
  • Hey Tinkering,

    Well I got the word back and it turns out the response you got previously was correct.  However, the folks I spoke to are completely aware of this issue and working towards a resolution.  The licensing documentation is updated periodically so lets revisit this the next time its published.  When that happens is up to them, but its been updated a few times already this year, so I don't think it'll be too long.

    Thanks,
    Mike


    MSDN and TechNet Subscriptions Support

    • Marked as answer by Tinkering 101 Friday, September 5, 2014 8:28 AM
    Thursday, September 4, 2014 5:36 PM
    Moderator
  • Thanks, Mike.

    I'm glad that they're looking into this. It does make me wonder if we've all being doing it wrong in the past or if this is a new change.

    Friday, September 5, 2014 8:27 AM
  • Still no change in the November publication :(
    Tuesday, December 23, 2014 11:46 AM
  • Actually they did change this, at least thats the impression I'm under Tinkering.  The changelog for the whitepaper indicates:

    October 2014

    • Update to TFS CAL use rights for stakeholders(ability to edit and view any item)
    • Update to the section on “Assigning MSDN Subscriptions to External Entities”
    • Clarification on licensing requirements for Virtual Environments

    "If a physical machine running one or more virtual machines is used entirely for development and test, then the operating system used on the physical host system can be MSDN software. However, if the physical machine or any of the VMs hosted on that physical system are used for other purposes, then both the operating system within the VM and the operating system for the physical host must be licensed separately."

    There is now a section titled "When Virtual Environments Require Separate Licensing" that rewrites this paragraph to, with my bolding and underlining:

    If a physical machine running one or more virtual machines is used entirely for development and test, then the operating system used on the physical host system can be MSDN software. However, if the physical machine or any of the VMs hosted on that physical system are used for other purposes, then both the operating system within the production environment VMs and the operating system for the physical host must be licensed separately. The same holds true for other software used on the system—for example, Microsoft SQL Server obtained as MSDN software can only be used to design, develop, test, and demonstrate your programs.  


    My read of this is: production VMs need to be licensed separately, physical machines running those production VMs need to be licensed separately, but design/dev/test/demo only VMs running on those physical machines can be MSDN licensed.

    You've kept right up with me in terms of licensing in this thread, and it is complicated, so let me know how you read it.

    Thanks,
    Mike


    MSDN and TechNet Subscriptions Support

    Did Microsoft call you out of the blue about your computer? No, they didn't.

    Tuesday, December 23, 2014 6:07 PM
    Moderator
  • Hi Mike,

    I'm glad you spotted that! It's such a subtle change that I read over it and didn't even notice it was different!

    I think you're right and that finally means we can go back to running MSDN on the same kit and not have a lawyer on our backs :)

    If I'm being really picky, having the licensing folks add an example section like there is for other areas in the whitepaper would be really useful and spell it out fully without anyone worrying about interpretation, especially as people are already working to the "no you can't" version.

    Thanks

    Gary

    Monday, January 5, 2015 3:11 PM
  • Hi Mike!

    I would like to comment on your interpretation, because

    Developer Tools such as the server products that are included in MSDN subscriptions may not be used in a Production Environment. With the October 2014 Product Use Rights document (the PUR), Microsoft has defined Product Environment:


    Production Environment

    means any Physical or Virtual OSE running a production workload or accessing production data, or any Physical OSE hosting one or more Virtual OSEs running production workloads or accessing production data.

    In similar discussions with Microsoft the outcome was always the same: the PUR is leading, even if a Licensing Guide or other non-official document states something else. So we must “slavishly” follow it in order to avoid the risk of being found non-compliant.

    What is your comment on that?

    Best Regards

    Berit

    Tuesday, June 30, 2015 1:39 PM
  • Last answer for this thread is allmost 2 years old.

    But is this situation clear now? If i have vmware environment. Host machines runs commercial windows server licences (or linux). Can i run both commercial Windows servers and development servers (installed with MSDN license) on this same environment?

    Monday, April 3, 2017 11:10 AM
  • Last answer for this thread is allmost 2 years old.

    But is this situation clear now? If i have vmware environment. Host machines runs commercial windows server licences (or linux). Can i run both commercial Windows servers and development servers (installed with MSDN license) on this same environment?

    Dear Timo,

    Please do contact the Visual Studio Subscription support.

    https://www.visualstudio.com/subscriptions/support/

    Thanks,
    prathaprabhu



    If my reply is useful please mark it as answered as it help other users with the same query. I am a Microsoft Partner, MVP and MCC and I want to become One Day Microsoft CEO.

    • Proposed as answer by Timo Pertilä Tuesday, April 4, 2017 5:36 AM
    Monday, April 3, 2017 6:15 PM
  • It seems if the physical server is windows then it needs a paid license then any VMs that are use by people without MSDN/Visual Studio licenses or for production use as opposed to test/evaluation/demonstration need to be licensed too.

    An example would be a server with Server 2019  standard you can run 2 VMs that are production use and any number of VMs that are used for testing or demonstration purposes.

    Wednesday, December 4, 2019 9:34 PM