Cloud Deployment Essentials Flashcards
The deck is focused on teaching the essentials of deploying applications on virtual machines using EC2 and related technologies.
What is virtual machine?
A software emulation of a physical computer that runs an operating system and applications as if they were running on a physical machine.
What are the benefits of using virtual machine?
Isolation of applications, flexibility in resource allocation, scalability, and the ability to quickly provision or clone systems.
Who are main Cloud Service Providers (CSPs)?
Amazon Web Services (AWS), Microsoft Azure, Google Cloud Platform (GCP).
What are EC2 use cases?
EC2 is used for scalable computing, hosting web applications, batch processing, disaster recovery, and as development environments.
What is nginx?
A high-performance web server, reverse proxy, and load balancer that helps in handling website traffic efficiently.
Steps to upload the code to the remote machine (EC2 as an example).
- Provision an EC2 instance (click Allow HTTP traffic from the internet; click Allow HTTPS traffic from the internet)
- Save .pem key, and login to the machine via SSH.
- Install some web server (nginx) on that machine, and run all updates.
- Edit the Nginx configuration file to point to the folder where your application’s files will be stored.
- Build your app on local machine.
- Upload code to the remote machine.
What services to use for domain routing?
Amazon Route 53, Google Cloud DNS, or traditional DNS hosting services (e.g., GoDaddy, Cloudflare).
What is SSL certificate?
A digital certificate that authenticates a website’s identity and enables an encrypted connection between a web server and a browser.
How to provision an SSL certificate?
By using a library: Install Certbot and the plugin to handle Nginx.