Amazon Web Services (AWS) delivers a new service known as AWS Elastic Beanstalk, which is aimed at, initially, helping Java developers more easily deploy applications on the AWS cloud.
Amazon Web Services (AWS) has announced the
beta release of a new service known as AWS Elastic Beanstalk, which
provides an easy way for developers to quickly deploy and manage applications
in the AWS cloud.
In
an interview with eWEEK, Adam Selipsky, vice president of Amazon Web Services,
said the concept of the AWS Elastic Beanstalk is much like the "Jack and the
Beanstalk" fable it is named after, where developers can quickly and easily
seed applications on the AWS cloud and have them grow and scale as much as
possible. Indeed, Selipsky said the tagline for the new service is: "Easy to
begin and impossible to outgrow."
Selipsky
said with the new service, developers simply upload their application, and
Elastic Beanstalk automatically handles the deployment details of capacity
provisioning, load balancing, auto-scaling and application health
monitoring. At the same time, with Elastic Beanstalk, developers
retain full control over the AWS resources powering their application and can
access the underlying resources at any time.
"This
is a key differentiation to other offerings out there -- application containers
or platform-as-a-service solutions -- that offer developers a simpler way to
move to the cloud," Selipsky said. "While reducing the amount of programming
needed, other options reduce the amount of programmers' flexibility. But we are
delivering a simplified solution without taking away any of the control from
the developer."
For
his part, Selipsky said with Elastic Beanstalk, developers retain full control
over the AWS resources powering their application, and can perform a variety of
functions by simply adjusting default configuration settings from the Elastic
Beanstalk management console, including:
??Ã
Selecting the most appropriate Amazon EC2 instance type that matches the CPU
and memory requirements of their application
??Ã
Choosing from several available database and storage options.
??Ã
Enabling login access to Amazon EC2 instances for immediate and direct
troubleshooting
??Ã
Quickly improving application reliability by running in more than one
Availability Zone
??Ã
Accessing built-in CloudWatch monitoring and getting notifications on
application health and other important events
??Ã
Running other application components, such as a memory caching service,
side-by-side in Amazon EC2
"We'd
been grappling with how to simplify application deployment and management on
AWS without removing the flexibility and control our customers have come to
expect," Selipsky said in a statement. "Once we started exploring the
mental model of customers being able to -open the hood' to tinker with the
infrastructure management themselves, a light bulb went off and we realized we
didn't have to make this -either/or' decision. AWS customers can now
choose to have as much automation or as much control as they wish."
There
is no additional charge for Elastic Beanstalk - customers pay only for the AWS
resources needed to run their applications. The first release of Elastic
Beanstalk is built for Java developers using the familiar Apache Tomcat software stack, which
ensures easy portability if developers ever want to move their
applications.
"We
picked a target that has high demand," Selipsky said of AWS' choice of
initially focusing on the Java development space. "This is not a philosophical
statement; we started with a popular platform. There is high demand for Apache
Tomcat. We intend on there being other versions in the future."
While
the initial release of Elastic Beanstalk supports Java web application developers,
Elastic Beanstalk is designed so that it can be extended to support multiple
development stacks and programming languages in the future, Amazon said.
AWS is actively working with solution providers on the APIs and capabilities
needed to create additional Elastic Beanstalk offerings.
"We're
excited about the introduction of AWS Elastic Beanstalk and the benefits it can
offer to Ruby on Rails developers," said
John Dillon, CEO of Engine Yard, a
Ruby on Rails application hosting technology and service provider, in a
statement. "We're working with AWS to provide an Elastic Beanstalk Ruby on
Rails container that leverages the optimized Engine Yard stack which has been
battle-tested by thousands of high-growth companies."
"Elastic Beanstalk automatically scales up or down as needed and developers
don't need to worry about the configuration required to set up their
infrastructure on AWS," Selipsky said.
Meanwhile,
Selipsky said Elastic Beanstalk leverages AWS services such as Amazon EC2,
Amazon S3, Amazon Simple Notification Service, Elastic Load Balancing, and
Auto-Scaling to deliver the same highly reliable, scalable, and cost-effective
infrastructure that hundreds of thousands of businesses depend on today.
However, now developers don't need familiarity with AWS services to begin
running their applications on the AWS technology infrastructure platform.
To get started, developers simply upload their application to Elastic Beanstalk
using the AWS Management Console, the AWS Toolkit for Eclipse, or the Elastic
Beanstalk command line tools or API, Amazon officials said. Behind the
scenes, Elastic Beanstalk handles the provisioning and deployment of the
infrastructure needed to run the application. Within a few minutes, the
application can be accessed at a customized URL. Once the application is
deployed, Elastic Beanstalk will automatically monitor application health and
Amazon EC2 instance performance, AWS said in a press release on the new service.
Darryl K. Taft covers the development tools and developer-related issues beat from his office in Baltimore. He has more than 10 years of experience in the business and is always looking for the next scoop. Taft is a member of the Association for Computing Machinery (ACM) and was named 'one of the most active middleware reporters in the world' by The Middleware Co. He also has his own card in the 'Who's Who in Enterprise Java' deck.