Be an Azure Consultant for PowerShell.org!
So, after our nearly-2-day outage, which was due to a still-not-fully-explained Apache fail, we’re looking to make some changes. We need to migrate PowerShell.org to a different Azure subscription anyway, so this is a good time to change the kind of service we’re using.
First, using Azure is non-negotiable. If your expert opinion is to use something else, please just don’t ;). **Update: **This might be changing. AWS could be an option.
Second, our current environment is a classic VM running CentOS 6 (yeah, it’s old), WordPress, and MySQL. WordPress and MySQL are also non-negotiable, this isn’t about switching CMSs or anything. We use VaultPress for to-the-minute backups, but their restore process is a beast and has never been easy or reliable.
What we WANT is the ability to more or less push a button and re-deploy the entire site from backup, ideally automated through some OMS trigger that senses when the site has crashed.
Now, some caveats.
- Our budget is $200/mo. We take about 150k-200k visitors per month, and WordPress is a reasonably demanding piece of software. We have about 500MB in files and about 300MB (currently) in data, and we grow about 75-ish MB a year.
- We would ideally like the data backups to be distinct from the site itself. That is, if we could simply kill an old server and deploy a new one, and then drop the data onto it (all automatically), that’d be ideal. This is distinct from simply backing up an entire VM image, since the OS, files, and data would all be one chunk.
- It’d be lovely if, instead of having to patch and upgrade the OS, we can just kill the current server, deploy a new one with all the new hotness in versions, and drop the data on it.
- The more of this that lives in Azure (e.g., Backups), the more likely - we feel - we’ll be able to automate this entire kill-and-deploy process in OMS or something.
Staying on Linux is fine. It also isn’t a pre-req. WordPress (and MySQL, since WordPress doesn’t play well with much else) are the main requirements. We’d like to be on a modern (6+) version of PHP, as well.
**Update: **So, let me outline the kind of thing we’re thinking. So far we’ve gotten a lot of suggestions on which OS to use, or which DB to use, and that wasn’t really the question so much as the architecture. For example:
- Run a small, on-demand staging instance where patches (WordPress and plugins) are applied to the site. The site’s folder is under Git, and after applying updates and testing, we push to a private (because configs contain passwords) GitHub repo. This instance isn’t backed up - the important bits are in GitHub.
- Use ____ to deploy the actual instance(s) that people will use. This deployment is a la Elastic Beanstalk, where you just push a base OS image and it sucks down your GitHub repo to populate the files of the site. Again, not backed up - GitHub is the backup.
- Except for the WordPress Uploads folder, which you redirect to another, simpler instance that serves these as static files. This is a bit complex, because WordPress needs file-based access to this for uploading, while it also needs to be exposed as a web server for downloading. Simple backups to ensure we have copies of the files handy, and we don’t need to retain a backup history because there’s no code that could break and need to be rolled back.
- Data lives on a distinct hosted RDBMS. That’s probably MySQL, as it’s what’s supported with WordPress. We’re aware of Namiproject, but unless that’s moving in lockstep with the base WP releases and is 100% guaranteed to work with all the plugins we need…. The RDBMS is backed up separately.
A concern with #4 in Azure is that they only offer this (for MySQL) through ClearDb, and I’ve seen latency and persistency problems. I’m ideally wanting everything hosted in one datacenter/region to reduce that problem. And I’m aware of Namiproject, but we have something a bit more complex than a stock WP install, so someone’s going to have to convince me that SQL Server’s a safe choice.
So… any suggestions for a full-stack? Please, be serious and complete - if your suggestion is, “just run VMs,” that’s not helpful and it’ll likely be deleted. But if you’ve got ideas for a mix of services that you think will do the job - by all means, please, speak up!
Related Articles
PowerShell + DevOps Global Summit 2025: Call for Papers Now Open!
PowerShell + DevOps Global Summit 2025: Call for Papers Now Open! Calling all innovators, problem-solvers, and thought leaders in the PowerShell and DevOps realm! The stage is set for the most anticipated event of 2025, and we want you to be a part of it. The PowerShell + DevOps Global Summit 2025 is now accepting session proposals, and this is your moment to shine. From April 7-10, 2025, in Bellevue, WA, the brightest minds in automation and DevOps will converge to share knowledge, challenge the status quo, and push the boundaries of what’s possible.
OnRamp2024 Program Unveiled
Navigating the Path to Proficiency: PowerShell + DevOps OnRamp2024 Program Unveiled Introduction The PowerShell + DevOps Global Summit proudly announces the OnRamp Program for 2024 to foster inclusivity and provide opportunities for aspiring IT professionals. This initiative is designed to be a bridge for those looking to enter the PowerShell and DevOps arena, offering a guided onboarding experience that aims to empower individuals with the skills and knowledge needed to thrive in this dynamic industry.
PowerShell + DevOps Global Summit 2024
[vc_row][vc_column][vc_column_text] We have had a lot of questions regarding the dates and location for the 2024 edition of the PowerShell + DevOps Global Summit. The team has been working hard to ensure we deliver the best possible experience for our attendees. We are pleased to return to Bellevue, WA, April 8-11, 2024, to the beautiful Meydenbauer Center and our new partner hotel, the Courtyard by Marriott. Some of you may remember the Courtyard from previous years.