You have started an interesting thread. The answer of your question depends on many factors:
- You are setting up a development environment for home work and study. But which products are you interested to study? PI AF SDK? PI Web API? PI OLEDB Enterprise?
- Do you have a specific machine that you want to use? Does it support hosting virtual machines?
- Have you ever considered using Azure Virtual Machine? There are a lot of good resources available on the cloud but some of them are not free.
- Do you have an idea of which platform and language you want to develop on top of?
- In case, it is C#, do you have Visual Studio installed on your machine?
- Do you have a PI System to connect to?
As you could realize, there are a lot of options available. Please answer the questions above so we can better guide you!
Well I suppose I would like to install most everything, maybe not cloud yet, but PI database, OLEDB for a small sql database, AF. I would or could set up virtual machines, probably with Microsoft. I have a developers club license, so if I could use Azure I might try. I am most familiar with VB, not much C. some of the development I would do in the short term might be with office products and VB. I thinking of setting up a virtual machine on my surface 3, it is a higher end one.
I know there are a lot of options, that is why I would like to get a little advice before I start, or even buy a new pc to host the system(s) on.
I currently working full time as a IT manager at a paper mill and have many years working with pi at most levels. I'm going to retire soon, but might do some contract PI work, depending on who is hired to replace me, which is why I I'm thinking about working some at home.
Thanks for posting answer Craig!
I will share with you what I would do. It depends on how many machines there are available to work with.
I like to start at least with 3 machines:
- Domain Controller
- Server products: SQL Server, PI Data Archive, PI AF Server…
- Client machine: Visual Studio with PI AF SDK, PI OLEDB Enterprise, PI ODBC, PI JDBC and some mature products if required.
If it is possible to have more machines:
- Web Server: Instead of installing on the machine #2, I would have a separate machine just for web products: SharePoint + PI WebParts, PI Coresight, PI Web API, PI integrators…. And custom web apps that you might develop hosted on IIS.
- Another server machine for testing PI and AF Collectives.
Having a machine just for web products are useful when you want to learn more about Kerberos and also to split the load of the products on the server machine. I also don’t know if having an environment with collectives is something useful to you.
You can also duplicate machines above with different versions of products. If you want to troubleshoot code, this is an interesting architecture. So you could have, for instance:
- Windows 7 with Visual Studio 2010 and PI AF SDK 2.5
- Windows 8.1 with Visual Studio 2013 and PI AF SDK 2.7
- Windows 10 with Visual Studio 2015 and PI AF SDK 2.7.5
Those machines are useful to test CTP and Beta products.
All in all, what I have written here is just an idea. You need to think what you actually want to learn and then design a possible architecture suitable for you.
Hope it helps!
thanks, all very helpful. will give it some more thought.
If you are ok with just running one version of all software, i typically do all of my development work in a single VM. Data Archive, AF, SQL, Domain Controller, CoreSight, Web API, some interfaces, Pi Manual Logger, OLEDB, Office and plugins (DataLink, Pi Builder, point builder), Client tools (PB and the like) SMT, etc. About everything an Enterprise Agreement would buy. You have some limitations using DevClub license, around interfaces and such.
Development tools like Visual Studio i run from the host.
Adding SharePoint and WebParts is where i got into trouble in the past, so i have a separate VM for that. For beta testing i use a clone of the VM, and i don't do HA often so i don't need multiple servers. if a client has HA, they probably have sufficient resources to be able to do HA-specific testing.
Except for a few workarounds, this works ok for me. Just a plain W2008 / W2012 Standard server, running 4 to 8 Gb of allocated memory.
1 of 1 people found this helpful
Have you considered using the Virtual Learning Lab Environment ?
Perhaps this isn't strictly what you had in mind, but it's a quick start and does have the complete PI System ready for use.
Quoting the FAQ:
The Virtual Learning Environment gives you access to a working PI System that is running and available 24 hours, 7 days a week.
It is composed of virtual machines hosted on Microsoft Azure that you can access remotely.
great idea, will check it out.