AWS OpsWorks Stacks lets you manage applications and servers on AWS and on-premises. With OpsWorks Stacks, you can model your application as a stack containing different layers, such as load balancing, database, and application server. You can deploy and configure Amazon EC2 instances in each layer or connect other resources such as Amazon RDS databases. OpsWorks Stacks lets you set automatic scaling for your servers based on preset schedules or in response to changing traffic levels, and it uses lifecycle hooks to orchestrate changes as your environment scales. You run Chef recipes using Chef Solo, allowing you to automate tasks such as installing packages and programming languages or frameworks, configuring software, and more.
Supports any application
AWS OpsWorks Stacks supports a wide variety of architectures, from simple web applications to highly complex custom applications, and any software that has a scripted installation. Since AWS OpsWorks Stacks supports Chef recipes and Bash/PowerShell scripts, you can leverage community-built configurations such as MongoDB and Elasticsearch. You start by modeling and visualizing your application with layers that define resource and software configuration. You control every aspect of your application's configuration to match your needs, processes, and tools.
Configuration as code
AWS OpsWorks Stacks lets you define configurations for your entire environment in a format that you can maintain and version just like your application source code. You can reproduce the software configuration on new instances and apply changes to all running instances, ensuring consistent configuration at any time. You can deploy your application from source repositories such as Git and Subversion to one or hundreds of instances with the click of a button.
Automation to run at scale
AWS OpsWorks Stacks provides dynamic configuration and orchestration that allows you to efficiently manage your applications over their lifetime, including support for automatic instance scaling and auto healing. Each new instance that comes online is built to specification automatically and can change its configuration in response to system events. This lets you, for example, change the configuration of a web application firewall when a new web server comes online without any manual steps.
AWS OpsWorks Stacks lets you model and visualize your application using concepts such as stacks, layers and apps. The OpsWorks Stacks dashboard shows the status of your stacks across all AWS regions. AWS OpsWorks Stacks tags your resources with the stack and layer names to make discovery easier and to support logical groupings for monitoring, cost allocation, and permissions. You can grant AWS IAM users access to specific stacks, making management of multi-user environments easier.
Supports any server
AWS OpsWorks Stacks helps you automate operational tasks like software configurations, package installations, database setups, and code deployment on any Linux or Windows server including existing EC2 instances or servers running in your own data center. You can use a single configuration management service to deploy and operate applications across your hybrid architecture.
Host multi-tier web applications
AWS OpsWorks Stacks lets you model and visualize your application with layers that define how to configure a set of resources that are managed together. You can also define the software configuration for each layer, including installation scripts and initialization tasks. When an instance is added to a layer, all the configuration steps are applied for you. OpsWorks Stacks promotes conventions but is flexible enough to let you customize any aspect of your environment. AWS OpsWorks Stacks supports any software that has a scripted installation. Because OpsWorks Stacks uses the Chef framework, you can bring your own recipes or leverage hundreds of community-built configurations.
Support continuous integration
AWS OpsWorks Stacks supports DevOps principles such as continuous integration. Everything in your environment can be automated. You can specify not only how to deploy your code, but use Chef recipes to configure the software on your servers and AWS APIs to provision resources. This supports pipelines from your source repository to your build server to integration tests to production.