Sort by:
Cloud is a tool, just like many others out there. Just because it could be used, it does not mean it is a good tool for everything. In some cases making a compromise on using Cloud where the fit is 50/50 ends up being best for the long term strategy.
Overall, when used properly and approached without political or organizational or ego based decisions, it has potential to positively transform pretty much everything about technology for an organization
Think about the operations first and foremost and Cloud Adoption Frameworks, individuals focus too much on the IaaS and PaaS and give less thought to the networks, compartments, landing zones, IAM, security etc etc etc etc, that sit around all of that stuff which is potentially more important than the VMs or Services themselves, IMHO.
If you want to take the most advantages from cloud migration you need to transform (replatforming, refactoring) your applications (e.g. cloud native), so you need your business lines on board as you need budget and committment before start. Otherwise the risk is to stop many times during cloud migration and more costs. The ideal solution, obvioulsy if possible, is top down sponsorship (CEO, CFO).
Azure only (all I know)...
- Ensure a budget is in place - added when the Subscription is created, preferably via automation
- For each resource, ask the questions...
- Is it necessary? Don't create it unless/when it's necessary
- Do I use it very little?, e.g. mon-fri 9-5 - automate manual start/stop
- Can I reserve it (Reserved Instance)?
- Can I use a Savings Plan?
- Can I re-engineer it to a cheaper solution, e.g. IaaS to PaaS - when will I get my investment back?
- Be organised from the outset - use Cloud Adoption Framework / Well Architected Framework or similar
- Automate as much as you can
- Have some standards
- Lean on people with proven expertise
I have around 2 decades of migration experience, both DC to DC and DC to cloud. From my experience, discovery and planning are the two critical stages and determines the success of migration. Application dependencies need to be captured well in advance. Application Affinity groups and migration wave groups should align with application dependencies.