12 ms·
my own experience using CloudFormation to provision complex infrastructure If we're talking anecdotes, my experience is vastly different. Difficult to assess w
by bassman9000 6y ago
my own experience using CloudFormation to provision complex infrastructure
If we're talking anecdotes, my experience is vastly different. Difficult to assess what's going to be a replacement (other than browsing the doc), replacements that cause a chain of other replacements, leaf replacement that fails due to some syntax in a SSM doc that wasn't checked at the very beginning, wasting 45 min, so everything gets rolled back, but you used Retain policies, so those ASG groups are now not managed, and still live, so you need to delete them manually.
Building complex means breaking down stacks in multiple pieces, and you can only use URLs. Which can only point to S3. Which means you have to pre-upload your sources there. For which you have to build the tooling, because aws provides nothing. So not only you have to build your infrastructure: you need to build the infrastructure to build and develop your infrastructure.
You want to know why a nested stack is going to replace that ASG you though it was safe? Well, you can always dive into the nested stack changeset... aaand nothing there. You can't. Maybe in the parent stack JSON.
Complexity without loops? Good luck. Or lots of copy pastes, I guess. And the Conditions are just rudimentary and clunky.
The Resources/Events UI is just meh with no sensible sizing for the otherwise huge columns (big names, big ARNs). Impossible to get the sorting of new events coming in right. Every refresh reshuffles the rows.
And cfn L1 Support is hit-or-miss: 50% of the times it's simply not useful, because of the complexity of the infrastructure. We just get the problem echoed back to us. I'm lucky we have Enterprise, and can escalate. There would be issues we wouldn't have solved in weeks otherwise.
I very much like the fact that we have a state management tool. But calling it great is an overstatement.
- pugz 6y agoI mostly agree with you, but on this one: > Difficult to assess what's going to be a replacement (other than browsing the doc) Do you know of any better solution than docs? Or better implementations of docs? I struggle to imagine how they could handle this better - but I've been using CF for so long that my imagination is limited.
- bassman9000 6y agoI'd be happy if they just showed: - the nested stack elements that are going to change, not only the parent ones - the logical members/fields that prompt the change from the changeset window. All this info they have, and should be trivial to show, which tells me they either don't use their own tooling (no dogfooding), or they have internal, better diagnostic tools not exposed to customers.
- wgjordan 6y ago> the nested stack elements that are going to change, not only the parent ones You should be pleased to hear that 'change sets for nested stacks' support was just released last week: https://aws.amazon.com/about-aws/whats-new/2020/11/aws-cloudformation-change-sets-now-support-nested-stacks/ https://aws.amazon.com/about-aws/whats-new/2020/11/aws-cloud... https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/change-sets-for-nested-stacks.html https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGui...
- bassman9000 6y agoNice! Thanks. For others like me who were wondering why we didn't see this change: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/change-sets-for-nested-stacks.html https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGui... create-change-set – Change sets for nested stacks is not enabled by default for the AWS CLI. To create a change set for the entire stack hierarchy, specify the --include-nested-stacks parameter. For more information, see To create a change set (AWS CLI). Edit: grammar.