1. What are the main distinctions between cloud computing's IaaS, PaaS and SaaS?
Ans:
Virtualized computer resources are made available by Infrastructure as a Service (IaaS) such as networking, storage and servers over the internet. Users have full control over the operating system and applications. Developers can create, test and launch apps on Platform as a Service (PaaS) without having concerns about maintaining the underlying operating system or hardware. Online software applications are delivered by Software as a Service removing the need for users to handle installations or updates, like with Gmail or Office 365.
2. How do you manage permissions and roles in AWS IAM?
Ans:
In AWS IAM, permissions are managed by creating users or roles and attaching JSON-based policies that define allowed actions on resources. Roles provide temporary access, often used for AWS services or cross-account users. Grouping users into IAM groups simplifies permission management by assigning policies to groups instead of individuals.
3. Explain the steps to set up auto-scaling in AWS.
Ans:
To configure auto-scaling, first create a Launch Template or Launch Configuration that specifies instance settings. Then set up an Auto Scaling Group defining minimum, maximum and desired instance counts along with availability zones. Finally, establish scaling policies that trigger instance adjustments based on metrics like CPU usage or network load, allowing AWS to automatically add or remove instances as needed.
4. What is the purpose of Azure Resource Groups?
Ans:
Azure Resource Groups act as containers that group related cloud resources like databases, virtual machines and storage accounts. They simplify management by enabling collective deployment, access control and cost tracking for all resources within the group. This helps maintain organization and lifecycle control over cloud assets.
5. How do you handle data backup and recovery in a cloud environment?
Ans:
Cloud backup uses services such as AWS Backup or Azure Backup to schedule regular data copies, store versions securely and encrypt backups. Recovery involves restoring data from these backups to original or alternate locations. Strategies include automated backups, replication across regions and frequent testing to ensure recovery processes work effectively.
6. Describe how CI/CD works with cloud platforms like AWS or Azure.
Ans:
CI/CD automates the software build, test and deployment cycles. AWS provides tools like CodePipeline and CodeDeploy, while Azure offers Azure DevOps pipelines. Developers commit code to repositories, triggering automated builds and tests. Once successful, the code is deployed to staging or production environments, enabling fast and reliable software releases.
7. What tools have you used for infrastructure automation?
Ans:
Common infrastructure automation tools include Terraform for infrastructure as code, Ansible for configuration management and AWS CloudFormation for provisioning AWS resources. These tools automate setup and management, ensuring environments are consistent, repeatable and scalable.
8. How do you ensure security in multi-cloud architecture?
Ans:
Securing multi-cloud environments involves unified identity management, encryption practices and centralized security monitoring. Tools like Azure Security Center and AWS Security Hub provide threat detection across clouds. Role-based access controls, secure APIs and compliance audits maintain data protection regardless of platform.
9. Explain the use of load balancers in cloud infrastructure.
Ans:
Load balancers distribute user requests evenly across multiple servers to prevent overload and improve reliability. It monitor server health and route traffic away from unhealthy instances, ensuring continuous availability and a smooth user experience in cloud setups like AWS or Azure.
10. What distinguishes cloud computing's vertical scaling from its horizontal scaling?
Ans:
Horizontal scaling scaling out means adding more instances or nodes to share the workload, which is ideal for high availability and fault tolerance Vertical scaling scaling up involves increasing resources like CPU or memory on a single instance. While vertical scaling is simpler, it faces hardware limits, whereas horizontal scaling offers better resilience.