1. What are the main differences between IaaS, PaaS and SaaS?
Ans:
IaaS offers fundamental cloud resources like virtual machines, storage, and networking, giving you full control to install and manage any software. PaaS provides a platform to develop and run applications without managing the underlying servers, saving time by handling infrastructure tasks. SaaS delivers fully managed software applications over the internet, such as email or document services, with all maintenance handled by the provider.
2. How do you secure data in cloud storage like AWS S3?
Ans:
To protect data in S3, apply access controls using bucket policies and IAM roles. Enable encryption for data at rest and in transit. Keep buckets private by default and activate versioning to guard against accidental deletion or unauthorized changes. Implement logging and multi-factor authentication to enhance security further.
3. Explain how auto-scaling works in AWS.
Ans:
AWS auto-scaling automatically adjusts the number of EC2 instances based on traffic demands. When user activity increases, it adds more servers to maintain performance. As traffic drops, it removes excess instances to save costs. Scaling decisions are driven by rules monitoring metrics like CPU usage or network bandwidth.
4. What is the role of IAM in cloud security?
Ans:
IAM (Identity and Access Management) controls who can access cloud resources. It allows you to create users and roles with specific permissions, reducing risks of unauthorized access. IAM supports multi-factor authentication for enhanced security and enables detailed, granular access management.
5. Describe the steps to deploy a web application on AWS or Azure.
Ans:
Start by creating a virtual machine, such as an AWS EC2 instance or an Azure VM. Install a web server like Apache or Nginx. Upload your application or website files. Configure firewall rules to open ports 80 or 443 for internet traffic. Finally, link a domain name and monitor the application to ensure it runs properly.
6. How does a VPC function in a cloud environment?
Ans:
A VPC (Virtual Private Cloud) is a private network within the cloud where you can launch servers, databases, and other resources securely. You can segment resources into subnets, set routing rules, and control internet access, providing full networking control similar to a traditional data center.
7. Explain how CI/CD pipelines are used in cloud-based DevOps.
Ans:
CI/CD pipelines automate software build, test, and deployment processes. Continuous Integration automatically tests and merges code changes into the main branch. Continuous Delivery deploys the tested code to production automatically. This speeds development, reduces errors, and delivers updates faster. Tools like AWS CodePipeline, GitHub Actions, and Azure DevOps streamline these workflows.
8. What distinguishes vertical scaling from horizontal scaling?
Ans:
Horizontal scaling (scaling out) means adding more servers to handle increased load. Vertical scaling (scaling up) involves boosting a single server’s resources, like CPU or RAM. Horizontal scaling suits large applications, while vertical scaling is simpler but limited by hardware capacity.
9. How would you set up monitoring and alerts in a cloud system?
Ans:
Use monitoring tools such as AWS CloudWatch or Azure Monitor. Configure alerts on key metrics like CPU utilization, memory usage, or network traffic. Set up notifications through email or SMS to quickly respond to any issues.
10. What are some common challenges in cloud migration?
Ans:
Challenges include ensuring data security during transfer, ensuring application compatibility with cloud platforms, minimizing downtime and data loss, accurately estimating costs, and training teams on new cloud tools and processes.