Cloud Architecture Diagram
- T2 Planning
- Related links:
- GitHub Wiki Notes: General high level notes from the GitHub wiki
- EMBD 'HighLevel' project -> HighLevel is the name of the actual project not literally "high level"
- Basically how the embedded sensors get data from the car and send it to a db/grafana
- Potential issues/improvements to the Sunswift telemetry
- EMBD 'HighLevel' project -> HighLevel is the name of the actual project not literally "high level"
- IOTCore ⁄ Greengrass Connection: Notes from the Amazon whitepapers about what IOTCore/Greengrass is
- What is AWS IoT?
- MQTT network/messaging protocol
- Greengrass and its concepts (IoT Thing, core/client device, component etc.)
- GitHub Wiki Notes: General high level notes from the GitHub wiki
- Questions:
- What are Amazon services (S3, Lambda, Timestream, EC2, Cognito, CloudWatch)?
- What is CAN data? CANBus?
- What is ROS2/ROSCube?
- What even is IoT?
What is IoT?
The Internet of Things (IoT) describes the network of physical objects ("things") that are embedded with sensors, software and other technologies for the purpose of connecting and exchanging data with other devices and systems over the internet.
Amazon Services
- This seems like a good starting place: AWS services by category
AWS S3
- Amazon Simple Storage Service, is an object storage service that offers industry-leading scalability, data availability, security and performance.
- It can be used to store and protect any amount of data for a range of use cases
- An object is a file and any metadata that describes the file.
- A bucket is a container for objects.
- Storing data in Amazon S3 involves creating a bucket and specifying its name and AWS region. Data is then uploaded to that bucket as objects in Amazon S3
- It also provides management features to optimise, organise and configure access to data to meet user-specific needs and requirements
- It has A LOT of features and custom objects/classes
- E.g. Types of storage classes, storage management features, access management & security features, data processing features, storage logging & monitoring tools, analytics & insight features etc.
- Accessing Amazon S3 can be done via the Management Console, Command Line Interface (CLI), SDKs or REST APIs
AWS Lambda
- AWS Lambda is a serverless computing service -> it runs code on a high-availability compute infrastructure
- The code just simply needs to be supplied in one of the language runtimes that is supported by AWS Lambda
- There are also Lambda functions, which can be run by the Lambda service only when needed (e.g. in response to events)
- Lambda functions can perform any kind of computing task and these functions are able to be uploaded to AWS Lambda
- Serverless.com
- Another AWS link
AWS Timestream
- It is a managed time series database service for IoT and operational applications
- Time-series data has specific characteristics, such as arriving in time order form, data is append-only and queries are always over a time interval
- Timestream efficiently stores and processes data by time intervals
- It keeps recent data in its memory to quickly access it
- It also provides the user with built-in analytics functions which allows users to identify the trends and patterns in their data in real-time
AWS EC2
- Amazon Elastic Compute Cloud provides on-demand, scalable computing capacity in the AWS cloud -> it can be used to launch as many or as few virtual servers as needed, configure security and networking, and manage storage.
- Users can configure their instances as needed (e.g. allocate the RAM, ROM and storage as required)
- An EC2 instance is a virtual server in the AWS Cloud and such instances are able to be created and managed by the following interfaces:
- Amazon EC2 console
- AWS Command Line Interface
- AWS CloudFormation
- AWS SDKs
- Query API
AWS Cognito
- It is an identify platform for web and mobile apps, allowing authentication and authorising users from the built-in user directory
- There are various ways to configure these authentication/authorisation protocols, through features such as user pools and identity pools
AWS CloudWatch
- CloudWatch monitors AWS resources and applications run on AWS in real time -> it can be used to collect and track metrics