Reasons To Automate
Reasons to Automate
Section titled “Reasons to Automate”Manual Process Challenges
Section titled “Manual Process Challenges”Many organizations start using AWS by manually creating resources like Amazon S3 buckets or launching EC2 instances. Manual processes quickly become challenging to manage and maintain as resources expand.
Key Issues with Manual Processes:
- Error prone and unreliable
- Inadequate to support an agile business
- Tie up highly skilled resources for manual configuration
- Time could be better spent on critical, higher value activities
Critical Questions to Consider
Section titled “Critical Questions to Consider”When deciding between manual or automated architecture building:
- Design vs Implementation Focus: Where do you want to put efforts - into design or implementation? What are the risks of manual implementations?
- Production Updates: How would you ideally update production servers? How will you roll out deployments across multiple geographic regions?
- Failure Management: When things break, how will you manage rollback to the last known good version?
- Debugging and Testing: How will you debug deployments? Can you fix bugs before rolling out to customers?
- Dependencies: How will you manage dependencies on various systems and subsystems?
- Scalability: Is it realistic to do all tasks through manual configurations?
Risks from Manual Processes
Section titled “Risks from Manual Processes”Major Risk Areas
Section titled “Major Risk Areas”Does not support repeatability at scale:
- Manually creating resources doesn’t scale for large corporate applications
- Not enough people to manually add features as necessary
- Difficulty replicating deployments to multiple Regions
Does not have version control:
- Creating architecture from scratch lacks inherent version control
- “It’s helpful to be able to roll back the production stack to a previous version, but that is not possible” when creating environments manually
- Cannot roll back production environment to prior version
Lacks audit trails:
- Important for compliance and security situations
- Dangerous to give anyone manual control and edit access to environments
- Difficult to track changes to configuration details at resource level
Has inconsistent configurations:
- Consistency is critical for minimizing risks
- Automation helps maintain consistency
- Difficult to ensure matching configurations across multiple EC2 instances
A stack is a collection of AWS resources that you can manage as a single unit.
Benefits of Automation
Section titled “Benefits of Automation”Modern operating environments commonly rely on full automation to minimize risks from manual processes.
Core Benefits
Section titled “Core Benefits”Reduces manual intervention or access:
- Eliminates manual intervention to production environments
- Focuses on setup, configuration, deployment, and support of infrastructure and applications
Allows for reproducible environments:
- Set up reproducible environments more rapidly
- Standardized and repeatable configuration
Improves productivity:
- Software testing automation
- Software releasing automation
- Machine configuration automation
- Operating system patching automation
- Troubleshooting and bug fixing automation
Automates testing and scaling:
- Use many levels of automation practices together
- Automatic scaling to respond to customer demand
- Create more elastic environments
By performing operations as code, you limit human error and enable consistent responses to events. Making changes in small increments that can be reversed helps if changes aren’t beneficial or introduce errors.
Manual processes are fundamentally inadequate for modern cloud operations, while automation enables organizations to build rapidly, maintain consistency, and reduce operational risks significantly.