Hey All :slightly_smiling_face: Any vendors here t...
# platform-blueprints
n
Hey All 🙂 Any vendors here that are struggling with provisioning their infrastructure blueprints on customer private or public clouds, especially on day 2 when changes are needed? How often does it lead to delays or headaches, and what are the biggest pain points in your view?
a
Depending the scope of changes, especially when there are breaking changes, I would deploy in a second account or beside infra #1 then migrate data from infra #1 to #2. This would have the following benefits: 1. Lowering downtime 2. Avoiding the need of rolling forward infrastructure changes, often in panic if somethings goes wrong 3. Ensuring that data disaster/recovery works as designed 4. Controlling the migration/rollout of infrastructure If you think about it, that's how it works when you deploy e.g. containers. Try to implement A/B or Canary in your infra will help you can avoid all sorts of issues related to in-place fixes.
n
thanks @Alexandre Proulx 🙂 Sounds like a good approach if data migration is not an obstacle. Is the process you mentioned something you find yourself doing often? Wouldn't you say this necessarily creates a high-touch situation with each customer who's infra we need to update?
m
From a technical point of view, not necessarily. The only thing the app devs need to know is that they have a target to which they can deploy. Make sure your environment specific variables are kept in git and you can change them at will. Of course, that means your customers have to trust that you’l can do that. Like with most things platform, the earlier you get those high-touch moments, the better.
a
Great point about data migration. I'd say that using cloud-native storage solutions (like S3-compatible storage) combined with self-service migration tools can significantly reduce the high-touch aspects. When self-service can initiate and monitor data migrations through automated workflows, it empowers and ensures consistent quality of service. Arguably: Building a Platform with built-in support for date migration isn't a standard problem to solve. That being said, adopting this methodology can later be used to do A/B testing or provide a way to swap environment dynamically, create new ones for testing/isolation purpose and even change cloud provider if the abstraction is right.