- AWS spot instance (t2.medium) for Regional Controller
- AWS spot instance (m5.4xlarge) for Airship-in-a-bottle with TungstenFabric
- security group
- keypair for authorization
Requirements:
- Ubuntu 18.04
- ansible 2.5.1
- python3
- boto (2.49.0)
- boto3 (1.4.2)
- botocore (1.8.48)
- AWS authorization must be setup on the host. (check aws credentials in ~/.aws/credentials). See https://docs.aws.amazon.com/cli/latest/userguide/install-cliv1.html for details
File ~/.boto must contain:
[Boto] use_endpoint_heuristics = True
Step by step guide for deployment Akraino Network Cloud with Tungsten Fabric in AWS
Clone the git repository
git clone https://github.com/progmaticlab/akraino-ansible.git cd akraino-ansible
Creating keypair, security group and AWS EC2 spot instances
ansible-playbook 00-create-environment.yaml
This playbook creates security group, keypair and 2 AWS spot instances which are available by ssh with the ssh identity akraino-aws-private-key.pem and user ubuntu.
You can login on them with the command
ssh -i akraino-aws-private-key.pem ubuntu@<ip_address>
IP addresses can be found in the files inventory/akraino and group_vars/all
Deploying Regional Controller
ansible-playbook -i inventory/akraino 01-deploy-regional-controller.yaml
After this step Regional controller is available by HTTPS.
You can see ip address of RC in file inventory/akraino or group_vars/all.
Also you can login on Regional Controller by ssh with the command
ssh -i akraino-aws-private-key.pem ubuntu@<ip_address>
Deploying TF blueprint on Regional Controller
ansible-playbook -i inventory/akraino 02-deploy-tf-blueprint.yaml
After this step Tall yaml files are generated and EdgeSite, Blueptint and POD are created on Regional Controller.
It starts local web-server and put ssh key and deploy.sh script on it.
Then Regional controller creates Airflow DAG and initiate the process of deployment Blueprint.
Process of deployment usually takes 5-6 hours.
Cleanup the environment
ansible-playbook -i inventory/akraino akraino-playbook-cleanup.yaml
As the result keypair, security group and AWS spot instances would be deleted.