Amazon on Wednesday planned to introduce an offering that combines its Web services into one tool that is aimed at making it easier for customers to use and fine-tune the services.
AWS Elastic Beanstalk is now available for use by Java developers. To get started, a developer uploads a Java application to Elastic Beanstalk, which automatically handles the deployment details like provisioning compute capacity, load balancing between servers, autoscaling up and down, and monitoring the health of the application.
[ Also on InfoWorld: Amazon Web Services improves support offerings and Amazon EC2 enables brute-force attacks on the cheap. | Follow the cloud with InfoWorld's Cloud Computing blog and Cloud Computing Report newsletter. ]
The tool draws on Amazon Web Services, including EC2, S3, Simple Notification Service, Elastic Load Balancing, and Auto-Scaling.
Without Elastic Beanstalk, customers interact with each AWS service individually. Sometimes that requires developers to write code and make API (application programming interface) calls to the services. "That's a powerful and common way of using the cloud and it will continue to be going forward," said Adam Selipsky, vice president of Amazon Web Services.
Still, some customers and potential customers said they either don't have the technical sophistication to write such code or "they don't have the inclination because they'd rather spend their time on other things," he said.
Once a customer uploads the Java app, it will be up and running online in a matter of minutes, he said. "If they so choose, they never have to worry again about the underlying infrastructure that is making that app live to the world," he said.
However, Beanstalk also allows users to fine-tune the underlying services, helping to set AWS apart from some other offerings on the market, Selipsky said. "A lot of the platform-as-a-service offerings reduce the amount of programming you have to do but they make choices for you and force you to live with all the decisions predetermined by the vendor," he said.
Beanstalk users will be able to change the CPU and memory of an individual server and deploy a server with a different level of availability, based on the needs of an application. Users can tweak the autoscaling settings to add new servers more quickly or slowly.
"Really the 'aha' moment for us was when we realized it didn't have to be an either/or decision between simple deployment and management versus flexibility and control," he said.
Customers are not required to write any additional code to use Beanstalk. "You simply write your Java app as you would for any infrastructure you were going to deploy it on, upload it and it runs," he said.
That should appeal to companies worried about vendor lock-in issues because it means they can easily pull the application out of Beanstalk and run it elsewhere instead.
There is no cost to use Beanstalk, so named because like the story of Jack and the beanstalk, the "Elastic Beanstalk is easy to begin and impossible to outgrow," Selipsky said.
While the initial release is compatible with Java apps, Beanstalk is designed to be extended to work with additional programming languages, Amazon said.