AWS can build your stack (DNS, servers, DB, LB, etc) for you using "Cloud Formation":
http://aws.amazon.com/cloudformation/aws-cloudformation-temp...
Look at "Application Framework Examples" and the templates for "A simple Ruby on Rails "Hello World" application" to start. You can build your whole stack with a single click.
Later on, if you decide you want to be devops instead of dev, you can learn about how these templates were written. Go here to roll your own:
http://aws.amazon.com/cloudformation/aws-cloudformation-arti...
EC2 itself just provides blank virtual machines and gives you full control over them. At a high-level, you'll be setting up your web server and db, pulling your application code, and running it. It's really not too dissimilar from setting up your app on your local machine.
The complexity around EC2 comes from the need to scale an application. Then you'll want to add load-balancers and more instances. While you can add these by the GUI console, you'll want to learn to use the EC2 Command Line tools[2] or the API via a library like Boto[3]. You may want to look through Amazon's suggested architectures to understand how to put these tools into play[4].
[1] http://www.heroku.com [2] http://aws.amazon.com/developertools/351 [3] https://github.com/boto/boto [4] http://aws.amazon.com/architecture/