Running an application in production requires visibility in terms of how all layers of the application are functioning. To understand key system behaviors, software developers can derive valuable insights from the metrics supported by the PaaS offering, such as the number of incoming HTTP requests, database response time latencies, and so on.

Beanstalk offers basic or enhanced reporting and monitoring directly in the console. With basic insights such as target response time, CPU utilization across the fleet, and total requests, the platform offers an aggregated view of the application performance that was not available in the systems on-premises. Using the Beanstalk health agent, the service additionally provides interesting insights into the deployment time activities and how they correlate with the application behavior. This was never available in the infrastructure setup on-premises.

With PaaS offerings, you not only meet your basic application needs but get interesting features from the platform based on the provider’s experience running workloads of thousands of other enterprise customers, at scale. This level of knowledge and best practices takes a long time to establish when you are managing workloads on your own and starting from scratch.

Code deployment

For rolling out features in the cloud, Beanstalk offers seamless integration with Amazon S3. You upload the code packages into the storage service, and Beanstalk takes care of the rest. Furthermore, it supports well- established DevOps methodologies to test new functionalities in isolation before rolling them out on all servers.

The team ended up using a traffic-splitting deployment policy that gave them the possibility to test new features on a subset of servers, while the live requests were served by others, using the older stable version of the application code.

A modification to any of these configuration settings was as simple as modifying a property in the web console that switched the deployment mode to rolling or all at once. These deployment modes control the rate of change rollout across your servers: one at a time or all in one go. Implementing similar software delivery capabilities on your own requires a lot of tinkering with various systems, applications, and tools. That is definitely not easy for teams just getting started with cloud.

Configuration

Modification of any application stack component including software, instances, capacity planning, and so on was possible within the configuration options supported by Elastic Beanstalk. Once the developers were comfortable operating the service via the console, they started rolling out modifications through code as well. Elastic Beanstalk offers the possibility to roll out customizations using its custom configuration files.

This level of understanding and confidence paved the way for easier adoption of automation and tooling, driven by code. In the on-premises world, the developers hardly had any opportunities to

own the operations of the software stack. Beanstalk opened the doors for them to not just build but own the application environments, from development to production.

Leave a Reply

Your email address will not be published. Required fields are marked *