This blog post covers the Akamai Developer Webinar, “Akamai-as-code With The Washington Post" in which Ian Baker, Technical Director at the Washington Post and Yair Greenbaum, Engagement Manager at Akamai, explain how Arc Publishing (a Washington Post company) created an effective DevOps practice to manage their infrastructure as code.
Arc Publishing, a Washington Post company, offers an intuitive, comprehensive suite of tools to manage digital assets, deploy and test content across channels, websites and mobile apps, and track performance within a single, easy-to-navigate interface. They provide a powerful, headless content management system (CMS) that services more than 1,000 sites globally.
Arc Publishing partnered with Akamai in 2017 to leverage the Akamai to provide security and performance to Arc’s customers. As of June 2020, they launch 3-5 new sites each week (with multiple environments per site), applying changes to hundreds of configurations each day. With the workflow they've designed, they're now able to launch new customer configurations in less than an hour compared to days and can apply changes to a global customer base in two hours compared to two weeks.
Now, let's dive into some highlights from Arc Publishing's discussion. You can also find a recording of the whole talk plus several demos at the bottom of this post.
Managing Several Configs via Automation
Since all of Arc Publishing's configurations are based on the same template, when they need to make a change, they need to update all of their configs at once. On top of that, they launch between 3 to 5 customers every week, and each customer has 3 configs – sandbox, development, and production.
Previously, they had been using Akamai Control Center to manage their configs, which meant creating and cloning properties, adding a hostname, adding that to a certificate, and waiting for it to deploy. It was all very very manual.
Now, their focus is on automating common tasks or task that are quick and easy to automate. They've automated things like site setup, domain addition, and common rule requests.
In addition, a few years ago they templatized their change intake, which allows them to easily identify changes that were repetitive, were requested across the client base, and where the trend of requests wasn't changing.
Moving to APIs
For years, Arc Publishing primarily use the Akamai CLI to make configuration changes. The CLI met their initial goals, but as they scaled, they needed to change large amounts of configurations at a time. These bulk activations used to take days.
Below you can see the original workflow using the CLI:
APIs are just easier to execute. APIs allowed the Arc Publishing team to easily and quickly interact with their infrastructure.
With APIs, their team could do the following tasks with a simple request:
Add controls for changes in
Deploy bulk activation across the site and entire org
Audit events easily
Integrate unit tests into the staging network
Enable centralized access to Akamai
Interact easily with our pipeline (ie. Slack Integration)
To accommodate their needs, they built a series of basic APIs that interacted with Akamai APIs. These were then wrapped by a set of AWS step functions which can handle the long term processes better than Lambda would.
This set up accommodates processes like property activations, fast activations, and certificate validations, which can take several days for a customer to complete sometimes. Switching to APIs to power this workflow allows much more flexibility compared to the CLI.
Now, they can create CP codes directly and track those in their dynamo config database. They can also create new properties without having to use a clone from an existing template, allowing them to change groups, networks, and other items which are usually cloned from the template.
Plus, getting feedback from the API is significantly easier than parsing the CLI output for status and errors.
Staying Up-to-date with a Slack Integration
One of the DevOps integrations that Arc Publishing uses is a Slackbot that allows users to interact with the DevOps automation workflow by sending a message in specific slack channels.
Below, you can see how you can create a new site by just typing:
automate createWebOrigin demo akamai sandbox 1.2
All of these changes have helped Arc Publishing become more efficient and have allowed them to scale. We've got the recording for you right here, so you can take a deeper look into how they use Akamai APIs to automate tasks and simplify their workflow.
Watch the Recording
Watch the full webinar to get a more detailed look into Arc Publishing's workflow.
You Might Also Like
We'd like to give a special thanks to the Yair and Ian, who put together this great talk!
The Washington Post
About the Author
Javier Garza is a developer evangelist at Akamai Technologies where he helps the largest companies on the internet run fast and secure apps by leveraging web performance, security and DevOps best practices. Javier has written many articles on HTTP/2 and web performance, and is the co-author of the O’Reilly Book “Learning HTTP/2”. In 2018, Javier spoke at more than 20 developer-related events around the world, including well-known conferences like Velocity, AWS Re:Invent, and PerfMatters. His life’s motto is: share what you learn, and learn what you don’t. In his free time he enjoys challenging workouts and volunteering for non-profits in areas like children and education