1. Overview

AWS provides three main ways to interact with AWS services. All three are built on the same underlying AWS API. Understanding when to use each is important.

2. AWS Management Console

The Console is a web-based graphical user interface (GUI) for managing AWS resources.


Key Features

  1. Browser-based — no installation required
  2. Visual, point-and-click interface
  3. Good for learning, exploring services, and quick tasks
  4. Supports multi-factor authentication (MFA)
  5. Includes a search bar to find services quickly
  6. Mobile app available for monitoring resources on the go


When to Use

  1. Learning and experimenting with new AWS services
  2. Quick one-time configurations
  3. Monitoring dashboards and alarms
  4. NOT recommended for repetitive tasks or automation

3. AWS Command Line Interface (CLI)

The AWS CLI is a unified tool to manage AWS services from the command line (terminal/shell).


Key Features

  1. Open-source tool that runs on Windows, Mac, and Linux
  2. Direct access to the AWS API from the terminal
  3. Can be scripted and automated (bash scripts, cron jobs)
  4. Supports all AWS services
  5. Uses access keys (Access Key ID + Secret Access Key) for authentication


Common CLI Commands

  1. aws configure — Set up credentials and default Region
  2. aws s3 ls — List S3 buckets
  3. aws ec2 describe-instances — List EC2 instances
  4. aws iam list-users — List IAM users


When to Use

  1. Automating repetitive tasks
  2. Scripting infrastructure management
  3. Quick resource management from your terminal
  4. CI/CD pipelines

4. AWS Software Development Kits (SDKs)

AWS SDKs let you access and manage AWS services programmatically from your application code.


Supported Languages

  1. Python (Boto3), JavaScript/Node.js, Java, .NET/C#, Go, Ruby, PHP, C++, and more


Key Features

  1. Embed AWS functionality directly into your applications
  2. Handles authentication, retries, and error handling automatically
  3. Used for building applications that interact with AWS services
  4. Same API calls as Console and CLI, but from code


When to Use

  1. Building applications that need AWS services (e.g., uploading to S3 from a web app)
  2. Custom automation and orchestration
  3. Serverless functions (Lambda uses SDK internally)

5. Comparison Table

6. Other Management Tools

AWS CloudShell: A browser-based shell in the AWS Console. Pre-configured with AWS CLI, Python, Node.js. No setup needed — opens directly from the Console.

AWS CloudFormation: Infrastructure as Code (IaC) service. Define your infrastructure in JSON or YAML templates and deploy them as stacks. Enables repeatable, version-controlled deployments.

AWS CDK (Cloud Development Kit): Define cloud infrastructure using familiar programming languages (TypeScript, Python, Java). Compiles to CloudFormation templates under the hood.


Exam Tip
All three tools (Console, CLI, SDK) use the same underlying AWS API. The exam may ask: "Which is the BEST way to automate resource management?" Answer: CLI for scripting, SDK for application integration. The Console is never the right answer for automation. CloudShell is a popular exam question — know that it’s a pre-configured CLI in the browser.