4. AWS EC2
• Virtual computing environments, known as instances.
• Provides scalable computing capacity in AWS Cloud.
• Enables you to scale up or down to handle changes.
• Various configurations of CPU, memory, storage, and networking capacity
for your instances, known as instance types.
• Secure login information for your instances using key pairs.
• A firewall that enables you to specify the protocols, ports, and source IP
ranges that can reach your instances using security groups
• Virtual networks you can create that are logically isolated from the rest of
the AWS cloud, and that you can optionally connect to your own network,
known as virtual private clouds (VPCs).
5.
6. AWS Lambda
• AWS Lambda is a compute service that lets you run code without managing
servers, operating system, capacity provisioning, scaling, code monitoring
and logging.
• AWS Lambda executes your code only when needed and scales
automatically, from a few requests per day to thousands per second.
• AWS Lambda run your code in response to events-
build serverless applications.
• Code in one of the languages that AWS Lambda supports-
1. Node.js
2. Java
3. C#
4. Go
5. Python
7.
8. AWS RDS(Relational Database Service)
• Amazon RDS is a web service that makes it easier to set up, operate,
and scale a relational database in the cloud.
• The basic infrastructure components that RDS offers-
1. Amazon Aurora
2. MariaDB
3. Microsoft SQL Server
4. MySQL
5. Oracle
6. PostgreSQL
9.
10. AWS DynamoDB
• Amazon DynamoDB is a fully managed NoSQL database service that
provides fast and predictable performance with seamless scalability.
• DynamoDB offers encryption at rest, which eliminates the operational
burden and complexity involved in protecting sensitive data.
• With DynamoDB, you can create database tables that can store and retrieve
any amount of data, and serve any level of request traffic.
• You can scale up or scale down your tables' throughput capacity without
downtime or performance degradation, and use the AWS Management
Console to monitor resource utilization and performance metrics.
11. • Amazon DynamoDB provides on-demand backup capability. It allows you
to create full backups of your tables for long-term retention and archival for
regulatory compliance needs.
• DynamoDB automatically spreads the data and traffic for your tables over a
sufficient number of servers to handle your throughput and storage
requirements, while maintaining consistent and fast performance.
• All of your data is stored on solid state disks (SSDs) and automatically
replicated across multiple Availability Zones in an AWS region, providing
built-in high availability and data durability. You can use global tables to
keep DynamoDB tables in sync across AWS Regions.
• DynamoDB allows you to delete expired items from tables automatically to
help you reduce storage usage and the cost of storing data that is no longer
relevant.
13. AWS IoT Core
• Thing – A logical representation of a device. Supports attributes, as
well as Device Shadows, which can be used to store device state & define
desired state.
• Policy – Attached to Certificates to dictate what that Certificate is
entitled to do on AWS IoT.
• Certificate – Things can communicate with AWS IoT via MQTT or
HTTPS. MQTT transmission to your AWS IoT gateway is authenticated
using certificates you will create.
• Rule – Leverages AWS IoT’s Rules Engine to dictate how messages
sent from Things to AWS IoT are handled. You will configure rules that
send data published to an MQTT topic to a variety of AWS Services.
16. ELK
• ELK Stack is a combination of three open source
tools which form a log management
tool/platform that helps in deep searching,
analyzing and visualizing the log generated from
different IoT devices.
• E- Elasticsearch
L- Logstash
K- Kibana
18. Elasticsearch
• Real time distributed and analytics engine.
• Open Source developed in Java.
• Supports full-text search i.e completely document based
instead of tables and schemas.
• Used for Single Page Application Projects.
• Lets you perform many types of searches like structured,
unstructured, geo etc.
21. Logstash
• Data coming from the server is centrally pulled by a
pipeline provided by logstash.
• Centralizes the data processing.
• Collects, parses and analyses large variety of
structured/unstructured data and events.
22. Kibana
• Visualization tool.
• Provides real time analysis, summarization,
charting and debugging capabilities.
• User friendly interface.
• Allows sharing of snapshots of the log.
• Permits saving the dashboard.
• Allows multiple dashboards.
24. IAM(Identity Access Management)
• AWS Identity and Access Management (IAM) is a web service that
helps you securely control access to AWS resources.
• You use IAM to control who is authenticated (signed in) and
authorized (has permissions) to use resources.
• IAM Features:
1. Shared access to your AWS account
2. Granular permissions
3. Multi-factor authentication (MFA)
4. Eventually Consistent
5. Free to use
6. Integrated with many AWS services
25. CloudWatch
• Amazon CloudWatch monitors your Amazon Web Services (AWS) resources
and the applications you run on AWS in real time.
• CloudWatch collects and track metrics, which are variables you can
measure for your resources and applications.
• CloudWatch alarms send notifications or automatically make changes to the
resources you are monitoring based on rules that you define.
• With CloudWatch, you gain system-wide visibility into resource utilization,
application performance, and operational health.
26. CloudFormation
• AWS CloudFormation is a service that helps you model and set up your
Amazon Web Services resources so that you can spend less time managing
those resources and more time focusing on your applications that run in
AWS.
• You create a template that describes all the AWS resources that you want,
and AWS CloudFormation takes care of provisioning and configuring those
resources for you.
• Benefits-
1. Simplify Infrastructure Management
2. Quickly Replicate Your Infrastructure
3. Easily Control and Track Changes to Your Infrastructure
27. Device MQTT Broker
AWS IoT
Core
Rule Engine
ElasticsearchKibanaDashboard
Architecture of a Device sending Data to Kibana
Fig.
Sample Kibana
Dashboard
28. Amazon Cognito
• Provides authentication, authorization, and user management for all web
and mobile apps.
• The two main components of Amazon Cognito are
▫ User pools
▫ Identity pools
• A user pool is a user directory in Amazon Cognito.
• With an identity pool, users can obtain temporary AWS credentials to
access AWS services, such as Amazon S3 and DynamoDB.
30. Jobs
• AWS IoT jobs can be used to define a set of remote operations that are sent
to and executed on one or more devices connected to AWS IoT.
• For example, there can be a job that instructs a set of devices to download
and install application or firmware updates, reboot, rotate certificates, or
perform remote troubleshooting operations.
• Jobs are of two types:
▫ Snapshot job:- By default, a job is sent to all targets that you specify
when you create the job. After those targets complete the job (or report
that they are unable to do so), the job is complete.
▫ Continuous job:- A continuous job is sent to all targets that you specify
when you create the job, but continues to run and will be sent to any new
devices (things) that are added to the target group.
31. EBS(Elastic Block Storage)
• EBS is the block storage that is automatically allotted once the Elasticsearch
domain is created.
• EBS volumes offers high availability and durability.
• Amazon EBS encryption provides seamless support for data-at-rest and
data-in-transit between EC2 instances and EBS volumes.
• Advantages of EBS volumes:
▫ Reliable, Secure Storage
▫ Consistent, Low-latency Performance
▫ Optimized Performance
▫ Quickly Scale Up, Easily Scale Down
32. IoT Analytics
• IoT Analytics is a fully managed service that makes it easy to run
sophisticated analytics on massive volumes of IoT data without having to
worry about all the cost and complexity.