Dynamically create (dev) channels and their load balancers on demand
Categories
(Webtools :: Searchfox, enhancement)
Tracking
(Not tracked)
People
(Reporter: asuth, Unassigned)
References
(Blocks 1 open bug)
Details
Attachments
(1 file)
(deleted),
text/x-github-pull-request
|
Details |
Right now searchfox's web-server mechanism depends on the use of ELB application load balancers whose creation is described at https://github.com/mozsearch/mozsearch/blob/master/docs/aws.md#creating-additional-development-channels. These have a non-zero carrying cost but are a hassle to manually set up. However, this mechanism could be automated.
As a result, this would:
- Reduce the effort required for new contributors to trigger AWS indexing jobs since they won't have to worry about colliding on use of the "dev" channel.
- Similarly, make it more feasible to A/B test by running two jobs, etc.
- Realize a non-trivial cost-savings that could help cover any additional runtime costs from potentially stepping up the web-servers to be more powerful.
This could also help with bug 1730293 where I'm proposing having indexer runs that failed checks to be moved to a "failed" channel, but this mechanism could even support ex: "failed1" for "release1" and such so that we don't have to worry about the failures interfering with each other. (However, the S3 costs do add up so we wouldn't want to keep 4 channels of failures around for a long time.)
Reporter | ||
Comment 1•3 years ago
|
||
A separate thought and potential follow-up might be that maybe our dev channels don't actually need to be using an application load balancer since there's just a single server on a single domain, rather than the release servers which are 4 servers on a single domain. But that would be something that could be done subsequently as there's still the issues of creating/updating the sub-domain which would still want the enhancements from this bug.
Reporter | ||
Comment 2•3 years ago
|
||
I've speculatively landed channel-tool.py in mozsearch. This is not yet hooked up to any part of our automation. This is landed for people to play with / iterate on. This won't get hooked up to anything before next weekend.
Reporter | ||
Updated•2 years ago
|
Description
•