mozmeao / infra

Mozilla Marketing Engineering and Operations Infrastructure
https://mozilla.github.io/meao/
Mozilla Public License 2.0
58 stars 12 forks source link

Decide on if WWW Workers Are In Scope For Initial MIgration #1347

Closed bensternthal closed 3 years ago

bensternthal commented 4 years ago

Is replacing workers with lambda a requirement for the initial migration? The suspense is killing me!

pmac commented 3 years ago

@alexgibson @hoosteeno and I discussed this on Slack but came to no real conclusion. What I got out of our conversation was that it will be important to do redirects for experimentation again, but that we have no need of that capability for the moment. We are open to looking into doing these in bedrock so that we can avoid having extra automation and experiment code outside of the bedrock repo and thus reducing complexity. So my conclusion is that lambda automation should not be a hard requirement for the initial migration. But Alex and Justin please let me know if you disagree.

alexgibson commented 3 years ago

If we can do server side redirects in bedrock, and those can be configured with minimal code changes, and updated independently of a production push, then that would be preferable to a lambda function imho. If that proves to be a difficult thing to make happen, then my second preference would be to have a lambda function. Updating that lambda function would not necessarily have to be automated straight away (we could update manually, and add automation later).

The last resort would be to do redirects using Traffic Cop in bedrock via JS, but as discussed this is probably my least preferred option because of the performance cost of redirecting client side.

pmac commented 3 years ago

We could do redirects where the percent of traffic sent one way or the other is adjusted with variables in the www-config repo, so I think that satisfies the need. It might be clunky though. What I'll say is that we can see what kind of experimental need arises and decide on the best tool for the job at the time. I think for now what we can say is that we can either do manual bedrock work, or manual lambda installation in the short term, and then after the CDN move we can make a plan for automating something that will work for the front-end team. Does that sound reasonable?

hoosteeno commented 3 years ago

I just want to be sure we have the ability to experiment within ~2 weeks after this switch (2 being arbitrary, but a duration when some experiment is likely to be pitched and we should be ready to handle it). If manual config to determine optimal automation can satisfy that, it WFM.

pmac commented 3 years ago

Great. This will help us a lot with our CDN move planning.

The Decision

  1. We will not require cloud worker automation for experiments to be operational for the launch of the new CDN.
  2. We will work with the WMO team to put in place the best experimentation setup for them shortly after the CDN move is complete.
  3. We will support manually setting up redirects either in Bedrock or in AWS Lambda should the need arise in the interim.

Thanks all 🥇