Author: Hsien-wen "Steven" Deng
This is a cloud-based Connected Vehicles (CV) Surveillance Application running in serverless architecture in Amazon Web Services (AWS).
Template: The template includes a system of AWS services allows you to establish this application.
Test Program: The test program is a Python script running in the client to test the availability of your cloud application. The program first simulates 10 vehicles sending Basic Safety Messages (ID, speed) to the Vehicle_Trajectory_Database. Then, the program simulates a Roadside Unit (RSU) sending a Kinesis Data Stream to trigger AWS Lambda. Last, the program requests results from Cloud_Feedback_Database.
- Python 3.8
- Python IDE, recommend Pyzo
- AWS Account
AWS Educate may not be eligible due to lack of permission configuring CLI - AWS User Credential
- From AWS Console go to IAM
- Select to users
- Click Add user
- Select Programmatic access for the AWS access type to generate an access key ID and secret access key for use with the AWS API, CLI, SDK, and other development tools
- Select the created user and select Security Credentials tab
- Click Create access key and copy the access key ID and secret access key after a new user is created
For more details, please check: AWS IAM
- AWS CLI
- Download AWS CLI and install
- Open CMD (Windows) or Terminal (Linux):
aws configure
- Input access key ID and secret access key copied from 4
- Configure region (default "us-east-1")
- Configure output (default "json")
For more details, please check: AWS CLI Configuration Guide
- From AWS Console go to CloudFormation
- Click Create stack
- Select Upload a template file and upload CV_Surveillance_Template.json
- Input a name and click Create stack
- Install boto3:
python -m pip install boto3
- Run CV_Surveillance_Client.py:
python CV_Surveillance_Client.py
If errors show up, check names of resources (DynamoDB, Kinesis)
After deletion of CloudFormation, resources are still in usage, deletions of these resources are needed to reduce cost impacts:
DynamoDB
Kinesis Data Stream