AWS OpsWorks provides configuration management using managed Chef and Puppet instances. This helps you automate your deployment, configuration, and management processes.
In AWS OpsWorks, we create a stack that is a collection of resources such as your web server, load balancer, and database servers. After that, we have a layer where we define the configuration of components. As per AWS:
"A layer is a blueprint for a set of Amazon EC2 instances. It specifies the instance's settings, associated resources, installed packages, profiles, and security groups."
After adding the layer, we have a list of the instances that will be running our workload, and then the application will be deployed on the infrastructure. Finally, there is monitoring, which monitors the infrastructure.
The only limitation with OpsWorks is that you cannot do the SSH into instances or do any custom configuration manually.
Let's see how easy it is to deploy a sample Node.js application using...