With these playbooks you can deploy the same environment as used for CICD validation. Playbooks can be used for full deployment or partially. For example you can deploy the AWS environment and Regional Controler and then manually deploy TF blueprint following manual Installation.
AWS environment:
- 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.