AWS and Linux Interview Questions and
Answers
AWS EC2:
1. Instance Types:
EC2 instances come in various types, such as General Purpose (e.g., t3, m5), Compute
Optimized (e.g., c5), Memory Optimized (e.g., r5), and more. Choose based on your workload
needs (e.g., CPU, memory, storage).
2. Securing EC2:
Use Security Groups, IAM roles, key pairs for SSH, VPC for network isolation, and regularly
update and patch your instances.
3. Resizing EC2:
Stop the instance, change the instance type, and restart. Ensure the new instance type is
compatible with your needs.
4. Stopping vs. Terminating:
Stopping halts the instance but retains the EBS volume. Terminating deletes the instance
and associated storage (unless specified otherwise).
5. Auto Scaling Group:
Define launch configurations, set scaling policies (based on CPU utilization, etc.), and attach
them to load balancers for automated scaling.
6. Snapshot:
Snapshots capture the state of an EBS volume. Use them before major changes for backup or
when migrating to another instance type or region.
AWS S3:
1. S3 Overview:
S3 is object storage for storing and retrieving any amount of data. Use cases include backup,
content storage, and data archiving.
2. Securing S3:
Use bucket policies, IAM policies, enable encryption, and enforce MFA delete. Use AWS
Config to monitor bucket settings.
3. Storage Classes:
S3 offers Standard, Intelligent-Tiering, Standard-IA, One Zone-IA, Glacier, and Glacier Deep
Archive. Choose based on access frequency and cost.
4. Versioning:
Allows keeping multiple versions of objects. Enable it to recover from unintended
overwrites or deletions.
5. Standard vs. Intelligent-Tiering:
Standard is for frequently accessed data; Intelligent-Tiering automatically moves data
between two access tiers when patterns change.
AWS VPC:
1. VPC Overview:
A VPC is a virtual network in AWS. It isolates resources for security and management. It
allows defining subnets, route tables, and security settings.
2. Designing a VPC:
Use public subnets for web servers and private subnets for databases. Add an Internet
Gateway for public subnets and NAT Gateway for private subnets.
3. Security Groups vs. NACLs:
Security Groups are stateful, applied at the instance level; NACLs are stateless, applied at the
subnet level.
4. VPC Peering:
Establish a connection between two VPCs using VPC Peering. Ensure route tables in both
VPCs allow traffic to each other.
5. NAT Gateway:
Allows instances in a private subnet to access the internet while preventing inbound traffic.
Cloud Computing Basics:
1. Cloud Benefits:
Cost-efficiency, scalability, flexibility, disaster recovery, and global reach.
2. IaaS vs. PaaS vs. SaaS:
IaaS provides infrastructure, PaaS offers a platform for development, and SaaS delivers
software over the internet.
3. High Availability:
Deploy across multiple Availability Zones and regions, use load balancers, and implement
failover mechanisms.
4. Cost Management:
Use reserved instances, rightsizing, monitor usage with AWS Cost Explorer, and set up
budget alerts.
Linux:
1. Managing Processes:
Use commands like `top`, `ps`, and `kill`. `top` shows running processes, and `kill` can
terminate processes by PID.
2. Disk Space Management:
Use `df` for disk usage, `du` for directory usage, and `find` to locate large files.
3. Securing Linux:
Disable root login, use SSH key-based authentication, enable firewalls (`ufw` or `iptables`),
and regularly update the system.
4. Cron Jobs:
Edit the crontab file using `crontab -e`. Schedule tasks like `0 2 * * * /path/to/backup.sh` for
daily backups at 2 AM.
5. System Performance Monitoring:
Use `top`, `vmstat`, `iostat`, `free`, and `sar` to monitor CPU, memory, and I/O performance.