This whitepaper is for historical reference only. Some content might be outdated and some links might not be available.
Solution architecture
Due to the different approaches in cloud-native operations versus virtualized application operations, the day -1 to day 2 operations also look different in the two. In this section, we will go over typical day -1 to day 2 operations, and explore how a cloud native orchestration can be built using those requirements. The following diagram represents a grouping of relevant AWS services for implementation of a cloud-native network orchestrator. To maintain ease of reading, we have ignored some of the operational requirements such as reliability, security and recovery from the following diagram, however in a real implementation, it is important to consider those requirements as well.
AWS constructs for a cloud-native CNF and infrastructure orchestrator
Motivation and tasks of each service in the preceding figure will become clear as the operational requirements are examined in detail in the following. Some guidelines to develop automation steps that are scalable while taking advantage of AWS and EKS native constructs for maximum flexibility is also presented.
Day -1: Planning
Common tasks during this phase are:
-
Creation of account structure
-
Planning IP/subnets
-
Working with ISVs and CSP to populate Customer Information Questionnaire (CIQ) and artifacts
-
Ordering AWS Outposts
if needed -
Defining naming conventions, metadata and tags
-
Creating AWS Identity and Access Management
(AWS IAM) accounts and roles in the account structure -
Creating service and CNF catalog
-
Giving appropriate permissions and set policies
-
Creating infrastructure — Deploy AWS constructs such as Amazon Virtual Private Cloud
(Amazon VPC), AWS Transit Gateway , AWS Direct Connect , and subnets.
Most of these activities are covered by proper landing zone design, discussions with ISVs
and network teams to create well-structured accounts and permissions, naming conventions and
network design. AWS services such as AWS Organizations
Amazon Virtual Private Cloud
Amazon Elastic Container Registry
Significant engineering effort and consideration should be given at this stage, as this lays the foundation of future automation and operations. Although proper planning needs human decisions, implementation of these design choices can often be automated.
Day 0: Topology development
Some of the tasks in this phase of deployment are as follows:
-
Activate hardware, such as AWS Outposts instance, if it is deployed.
-
Develop a service/CNF catalog — This catalog contains services that upper layers can call.
-
Deploy platforms such as EKS clusters, Container Network Interfaces (CNIs), Container Storage Interfaces (CSIs), vRouters, and observability infrastructure such as probes and clients.
-
Boot up infrastructure such as node groups.
Some of the well-developed robotic automation tools or customized
process automation tools can be developed to activate AWS Outposts. Services such as
Service Catalog
AWS CloudFormation
Increased agility and resilience can be achieved using Amazon EKS,
an AWS managed Kubernetes service that makes it easy to run
Kubernetes on AWS. The Kubernetes control plane managed by EKS
runs inside an EKS-managed VPC, running components such as the
Kubernetes API server nodes and
etcd
cluster
For on-premises infrastructure not managed by AWS, Amazon EKS Anywhere is a new deployment option that allows customers to create and operate Kubernetes clusters. Amazon EKS Anywhere helps simplify the creation and operation of on-premises Kubernetes clusters with default component configurations while providing tools for automating cluster management. While not as feature-rich as EKS, it gives customers option to view all of their Kubernetes clusters in one dashboard.
Day 1: Instantiation
This phase of deployment deals with the following tasks:
-
Instantiate CNFs
-
Update route tables
Most of these functions can be automated if properly designed.
CloudFormation and AWS CDKs are good constructs for this part. An
automation pipeline can be build using AWS-provided continuous
integration/continuous development
(CI/CD
You must also create proper databases to handle the vast and different types of data that
is generated by network functions, and to ensure proper mapping between services, functions
and their instantiation. Graph database such as Amazon Neptune
Day 2: Operation and management
This is arguably the hardest part of the automation lifecycle, and deals with day-to-day operation of the network. This phase deals with the following tasks:
-
Update and scale CNFs
-
Update and scale network services
-
Update EKS version
-
Update configuration
-
Allow creation of new services
-
Monitor and manage
-
End service/CNFs when not needed
New infrastructure, network and functions can also be deployed in this part to address increased network demand. Hence, it is important not to view this phase in isolation of earlier phases but think of it this phase as invoking all the earlier phases as and when needed.
This phase is also the one that is most difficult to handle with traditional CI/CD.
However, the new GitOps
Monitoring, observability, and logging alarm for the Day 2 operations can be achieved
using services such as Amazon CloudWatch, AWS CloudTrail, and AWS-provided managed services such as Amazon Managed Service for Prometheus
Because network functions continuously emit performance data and Key Performance
Indicators (KPIs), you'll need a way to process this streaming data. Amazon Kinesis
With the previous described AWS constructs, one possible implementation on AWS is be as follows:
Example implementation architecture of a cloud-native CNF and infrastructure orchestrator
This diagram represents VPC constructs, EKS clusters, load-balancers and repositories, network connections, and so on in the context of Region, Availability Zones, and on-premises data centers. For ease of representation, we haven’t depicted some of the functionalities such as account and user administration, the creation of a landing zone, security, and DNS that were part of the earlier architecture, because many of those features will run in their own VPCs within control of cross-account permissions.