MegaSack DRAW - This year's winner is user - rgwb
We will be in touch
Hello,
Products that I work with are ncreasingly being driven by API's so I have been (trying) to learn Python, cURL etc.
I have now reached the stage where I have a library of basic scripts and am comfortable using them for basic tasks but now want the facility to automate and schedule their running.
Examples include taking backups of config files (small XML or text based), automating LDAP synchronisation etc.
These tasks would happen on customer sites so my initial thought is to create some sort of virtual machine for this purpose.
I am wondering what the best approach is here. Is there a simple, off the shelf product or is it a case of creating something myself? - I work mainly in Windows but realise that Linux may be the best option here. My concerns about using Linux would be maintaining the security of the system especially if it is audited somehow.
Would I be better off just getting a Windows server from the customer and using that?
Thanks
If they've already got standard patching routines for their windows estate, I'd be tempted to stick to Windows so you can potentially hand that element over to them and be more confident that it'll get patched in good time. Linux boxes, especially appliances, tend to get left alone on the erroneous assumption they don't need updates / fixing unless broken.
I would have thought it depends on what infrastructure the customer already has? If VMware you could create either a Windows or Linux OVA appliance but who would be responsible for deploying/configuring/securing/maintaining it? If you then go with the OS you're comfortable with but also needs to fit in with customer's current environment (and licensing).
You could have a look at Docker containers to do this.
Less overhead than a VM, but accessing the file system might be more difficult.
Not sure what the VM will add? How will you ensure it's running?
Windows has a built in Task Scheduler so just create bat files for your jobs and schedule them on a machine that will stay up e.g. the app server. If you want to use Linux, CRON is your friend.
Just learn powershell so you can automate the creation of the scheduled tasks in windows 😉
Thanks all. My career (post Novell Netware) has mainly been spent avoiding Microsoft but it does look like Windows/Powershell may be the best fit for most of my customers.
Shame because I far prefer coding in Python.
Will check out containers too - this has been a grey area for me so time to learn about them I guess.
We use https://airflow.apache.org/ for quite a lot of this type of stuff.
Code in python just use powershell / bash to run the python scripts. To avoid installing python you can use a python to exe tool then just schedule your program to run.
