BLOG: WHAT IS ASTARA?
By Mark McClain, CTO Akanda @gtwmm
Super? Mythical? Fantasy?
One of my nephews favorite things to talk about is what they’ll be when they grow up and lately the answers range from Spiderman to Santa Clause to Ninja Turtle. I’m trying to be a good uncle and not crush those dreams but sometimes even the greatest aspirations aren’t achievable. Hopefully you’ll see from this blog post and our upcoming product release that our aspirations with Astara are rooted in achievable goals and even better that they align with some of your goals as an OpenStack user as well.
Product Design Principles
Before we dig into the initial features and functions I wanted to share some core design ideas that are the drivers behind what we are building.
The first is simplicity. We have first hand experience deploying a commercial SDN/NFV platform in a production OpenStack environment and the amount of work it takes to deal with plugins, overlays and 3rd party integration and it is our goal to deliver a solution that ensures no one else ever has to deal with those complexities again.
The second is compatibility. Astara is layer 2 agnostic and designed to work with your existing network, not replace it
The third is that the Astara solution be open source. This is not a business driver or a marketing plan for us…Astara has been built as open source for the past few years and was born out of DreamHost’s search for an open source solution that would address their own OpenStack networking needs. We are leveraging open source projects to accelerate our own development and are committed to delivering an open solution to our customers.
So…What is Akanda and how is it related to Astara? The simple answer is…Akanda is the company providing commercial support of the OpenStack Astara project. Astara is an open source network orchestration platform for OpenStack clouds. But we won’t leave you with the just the marketing answer. Let’s start with a simple view of the product functions and capabilities and break down from there.
The best way to think of Astara is as a network orchestration platform that delivers network services (L3-L7) via VMs providing routing, load balancing, firewall and more. Astara also interacts with any L2 overlay including open source solutions based on OVS and Linux bridge (VLAN, VXLAN, GRE) as well as most proprietary solutions to deliver a centralized management layer for all OpenStack networking decisions. Astara is designed for scale and HA as the control plane is capable of scaling both up and out.
Astara & Neutron
Astara takes the place of many of the agents that OpenStack Neutron communicates with (L3, DHCP, LBaaS, FWaaS) and acts as a single control point for all networking services. By removing the complexity of extra agents Astara can centrally manage DHCP and L3, orchestrate load balancing and VPN Services and overall reduce the number of components required to build, manage and monitor complete virtual networks within your cloud.
What does Astara Manage?
By combining network services Astara can centrally manage the critical functions of health monitoring, event processing and all interactions with the OpenStack Neutron API. Astara takes event streams from Neutron and processes and distributes to individual workers (more in a minute) to manage the lifecycle of the VM. This greatly simplifies the task of monitoring network service VMs and enables Astara to make intelligent decisions to update configurations as needed.
Astara workers are deployed to manage communications with individual network service VMs. Each Astara worker is made up of three components:
1. State Machine – State machines keep track of the lifecycle of the VM
2. VM Manager – Ensures VMs are up and running and manages interface configurations
3. Driver – Drivers enable support for multiple network VMs within Astara including Astara open source network services (routing and load balancing in V1) as well as third party services (open source or proprietary) to benefit from monitoring, notification and lifecycle management that Akanda management provides.
Hopefully this gives you an idea of the inner workings of Akanda and the simplification it can provide for your OpenStack deployment.