load balancing experience
CLIFFORD ILKAY
clifford_ilkay at dinamis.com
Thu Dec 19 12:37:47 EST 2013
On 12/19/2013 11:59 AM, Andy Hilton wrote:
> Clifford
>
> Interesting discussion - are you then saying that you are running the database server (or your postgres instance) on a completely different (cloud based) server ?
>
> So the Amazon side is handling just the web server side of life ?
Hi Andy,
It's end to end Amazon. We're not currently running PG in production on
Amazon RDS yet because Amazon only recently announced it. We're running
MySQL on RDS and PG either within the Amazon EC2 instance or PG on our
own dedicated servers. There is a huge amount of complexity and power
with Amazon's web services. You need a playbook to keep it all straight.
Here is a brief list of what we're using that I can remember right now.
AWS - general terms for Amazon Web Services. This isn't one particular
product. It's an umbrella description of all of Amazon's cloud offerings.
EC2 - Elastic Compute Cloud - virtual machines. We typically run Debian.
VM - virtual machine. It's an industry term that isn't specific to
Amazon's offerings.
AMI - Amazon Machine Image - a disk image of an EC2 instance. We use AMI
as templates for launching new EC2 instances. The AMIs are only
up-to-date for brief periods of time, where brief might be weeks or
minutes. When you update a running instance, if you expect any
subsequent VM to have those updates, you must "freeze" that instance to
an AMI and base subsequent instances off the new AMI.
ASG - autoscale group. The thing that enables us to automatically scale
up or down.
ELB - Elastic Load Balancing. Used to distribute incoming requests to
the cluster of machines in an ASG.
IAM - Identity and Access Management. We use this to manage access to
authorized users to the various services.
Route 53 - Amazon's DNS offering. The interface is a bit geeky but it's
fast and robust.
Cloudwatch - Amazon's monitoring services. We use this in watching
various parameters to determine when to spin up or spin down EC2
instances automatically.
EBS - Elastic Block Storage. A block device (disk drive) that can be
attached to one, and only one, EC2 instance.
S3 - Simple Storage Service. An object store that stores files as
objects in "buckets".
CloudFront - Amazon's CDN (Content Delivery Network). This enables you
take advantage of Amazon's huge network to have your site assets closer
to your users so that you improve page load times. If you an
international audience, no matter how fast your servers are, you still
can't beat the laws of physics so there is a latency when you're
fetching files from across oceans. CloudFront automagically distributes
and caches your files on Amazon's network worldwide so that the files
are fetched from the nearest server rather than having to traverse
trans-oceanic network connections. This uses S3 underneath.
VPC - Virtual Private Cloud. You can think of it like your own cloud
within Amazon's cloud. It enables you to put things that shouldn't be
exposed to the general Internet on servers that are only accessible via
front-end servers. This is a great way of allaying some of the security
concerns clients may have. I will bet their data will be more secure on
an Amazon VPC than in their own office. Any paranoia around NSA, PATRIOT
Act and all that is nonsense because it's now clear that the NSA can and
does collect data from all over the world.
RDS - Relational Data Services. MySQL or PostgreSQL in running on
Amazon's cloud. You specify how big an instance you want and in which
zone(s) you want to launch your RDS instances and you get a database as
a service. This is completely distinct from your EC2 instances. You may
not need a high I/O instance for your EC2 instances but for RDS, you may
specify a guaranteed I/O for performance reasons.
--
Regards,
Clifford Ilkay
647-778-8696
Dinamis
<http://dinamis.com>
More information about the omnisdev-en
mailing list