[bug 1173085] deal with ebs mount edge case #170
Conversation
key = "Environment" | ||
value = "${var.environment}" | ||
propagate_at_launch = true | ||
key = "Environment" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bonus: I fixed some whitespace issues. 馃槒
1844185
to
c171f5d
Compare
|
||
# There is an edge-case interaction between cloud-init and *some* instance | ||
# types that causes EBS volumes to be pre-mounted. | ||
# https://bugzilla.mozilla.org/show_bug.cgi?id=1173085 | ||
exec { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a simple and decidedly inelegant solution: if the mount is there, unmount it. We can get away with this because we're using a strict role separation model; however, if we ever intend to combine roles, this may be problematic down the line.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure what you mean by combine roles, like apply multiple roles to the same node?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I mean if we combine two roles that both expect exclusive use of /dev/xvdb
. Unlikely, but wanted to point it out anyway.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah good point - yes I would definitely like to handle ephemeral storage in a more general way. I think this is fine for the moment since it's only really critical for processor.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The ES data nodes also mount this device, fwiw...
r+, in terms of rollout it's totally fine to just let this go out and configure processor after the fact - incoming jobs will simply be queued up. This is preventing new processor instances from coming up cleanly anyway. |
[bug 1173085] deal with ebs mount edge case
Since cloud-init is a bit of an unknown for us right now, I reasoned that Puppet presented the most rapid path to dealing with the EBS mount edge case.
I've tested this and, from a system perspective, it appears to work as expected. 馃榿 In terms of actual deployment there are some configuration (Consul) elements that will need to be adjusted. Let's open a dialogue on the best way to roll this out.
r?
@rhelmer @jdotpz