Skip to content

This repository focuses on cloud computing and demonstrates how to set up virtual machines, S3, and other services using LocalStack. It provides a comprehensive guide to simulating AWS services locally for development and testing purposes.

License

Notifications You must be signed in to change notification settings

madhurimarawat/Cloud-Computing

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

35 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Cloud-Computing

This repository focuses on cloud computing and demonstrates how to set up virtual machines, S3, and other services using LocalStack. It provides a comprehensive guide to simulating AWS services locally for development and testing purposes.

Repo Size GitHub Stars GitHub Forks GitHub Issues Closed Issues Open Pull Requests Closed Pull Requests GitHub Discussions GitHub Contributors Top Language License Last Commit Repository Age Workflow Status GitHub Watchers Visitors


Tools and Technologies βš™οΈπŸ’»

AWS Command Line Interface (CLI) is a powerful tool that allows users to interact with AWS services directly from the terminal. It simplifies managing cloud resources by providing commands for a wide range of AWS services, enabling tasks such as provisioning, managing, and automating workflows with ease.

LocalStack is a fully functional, local testing environment for AWS services. It enables developers to simulate AWS services on their local machines, facilitating the development and testing of cloud-based applications without needing access to an actual AWS account.

Docker is a containerization platform that allows developers to build, share, and run applications in isolated environments called containers. It ensures consistent environments across development, testing, and production by packaging the application and its dependencies together.

Boto3 is the official AWS SDK for Python, enabling developers to interact with AWS services programmatically. It provides a high-level, easy-to-use interface for managing AWS resources like S3, EC2, DynamoDB, and more.

Flask is a lightweight and flexible Python web framework designed for building web applications and APIs. It follows a minimalistic approach, providing essential tools while allowing developers to add extensions as needed.


Directory Structure πŸ“‚

  • Codes πŸ’» (If applicable)
    Contains code files used for the data processing and analysis in each experiment. These files are critical for performing the tasks required in the experiment.

    • e.g., main.py, process_data.py
  • Documentation πŸ“
    This folder contains detailed documentation for each experiment, including methodology, analysis, and insights. Documentation is provided in both Markdown (.md) and PDF formats for easy reference.

    • documentation.md (Markdown version of the documentation)
    • documentation.pdf (PDF version of the documentation)
  • Dataset πŸ“ (If applicable)
    Contains the datasets used for analysis in each experiment. Datasets are placed here to ensure easy access and organization.

    • e.g., data.csv, stream_data.json
  • Output πŸ“Š
    Stores the output generated from each experiment, including visualizations, data analysis results, and any other relevant outputs.

    • Experiment X Output (where "X" refers to the relevant experiment number)

Layout:

Cloud-Computing/
β”‚
β”œβ”€β”€ Experiment 1/
β”‚   β”œβ”€β”€ Documentation/ πŸ“
|   β”‚   β”œβ”€β”€ Explanation of methods and key observations from Experiment 1.
β”‚   β”œβ”€β”€ Output/ πŸ“Š
β”‚   β”‚   └── Contains the results and analysis of Experiment 1.
β”œβ”€β”€ Experiment 2/
β”‚   β”œβ”€β”€ Codes/ πŸ’»
β”‚   β”‚   └── Contains the web app code in flask and docker files.
β”‚   β”œβ”€β”€ Documentation/ πŸ“
β”‚   β”‚   β”œβ”€β”€ Detailed documentation explaining the methodology and analysis for Experiment 2.
β”‚   β”œβ”€β”€ Output/ πŸ“Š
β”‚   β”‚   └── Contains the results and analysis of Experiment 2.
.....

Explanation of Folders:

  • Codes Folder (πŸ’»):
    This folder contains the source code for the experiment. It includes all the necessary code files, scripts, and programs required to run the experiment. Additionally, it holds detailed explanations of the command prompt inputs and outputs:

    • Command Prompt Input and Output Explanation (MD & PDF): Provides an explanation of the inputs and outputs for all commands used in the experiment.
    • Command Prompt Input and Output Logs (TXT): Contains the actual input commands and their corresponding outputs in text format for reference.
  • Dataset Folder (πŸ“):
    This folder stores the dataset used in an experiment. If a dataset is involved (like a .csv, .json, or any data file), it will be placed here.

  • Output Folder (πŸ“Š):
    Stores the outputs/results generated by the experiments. This might include processed data, logs, or result files. Each experiment’s output is stored separately with a relevant name.

  • Documentation Folder (πŸ“):
    Contains the documentation of each experiment, provided in both .md and .pdf formats. The Markdown file is converted to PDF using the provided link for Markdown to PDF conversion.

  • Commands File (πŸ“‹):
    A text file documenting the specific commands or steps used in the experiment, especially useful for command-line operations.


Table Of Contents πŸ“” πŸ”– πŸ“‘

In this experiment, students will learn to understand the basics of cloud computing by setting up and configuring a virtual machine on a cloud platform such as AWS, Google Cloud, or Microsoft Azure or localstack.

This experiment enables students to deploy a basic web application on a cloud server using services like AWS EC2, where they will practice deploying applications on the cloud infrastructure.

This experiment sets up an AWS S3 bucket to upload, verify, and download data. It demonstrates secure and scalable cloud storage management.

This experiment focuses on configuring and managing cloud networking services, such as creating Virtual Private Clouds (VPCs) and subnets. It involves using cloud platforms like AWS, Google Cloud, or Azure to set up and manage cloud networking environments.

In this experiment AWS Lambda deployment, execution, and testing are done using AWS CLI and LocalStack. The runtime image is pulled from Amazon ECR via Docker. This simulates a serverless environment for function invocation and validation.


Thanks for Visiting πŸ˜„

About

This repository focuses on cloud computing and demonstrates how to set up virtual machines, S3, and other services using LocalStack. It provides a comprehensive guide to simulating AWS services locally for development and testing purposes.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published