Akamai Browser — A browser instance configured for Akamai Staging Network

Jose Pacheco
2 min readMay 7, 2022

--

Akamai Browser Architecture

In restrictive computing environments, it's difficult/impossible to test against the Akamai staging network since users may not have access to update host files. Additionally, it's not user-friendly for business users.

Here is one way to deliver on-demand Akamai browser instances with proper configuration for Akamai staging. An instance can be provisioned with a unique URL for each user.

UX

  1. A user requests a new instance via various avenues (chat, CI pipeline, etc)
  2. Automation magic
  3. The user receives a link to access the instance and begins spoof testing 💥

DNS

The core part of this is to configure the domain names for akamai staging. Here we use a bind9 server with zones for each domain. In the zone file, a CNAME record (the akamai staging hostname i.e “my-domain.edgekey-staging.net”) is created for each subdomain to spoof.

Akamai Browser

This is essentially a Chrome Browser with the Modheader plugin installed. noVNC is the web front-end and connects to the Chrome instance using TigerVNC.

Akamai Browser Operator

I created a helm chart to deploy the akamai browser instances. Creating an operator from this was super easy using the operator-sdk with helm plugin. Having a CRD to request an instance is pretty sweet.

Mobile apps

Creating instances for Android apps should be doable, but this is a work in progress. Not sure about iPhone apps.

--

--