Tuesday, 25 January 2011

Introducing Amazon SES (Simple Email Service)

http://aws.amazon.com/ses/Amazon Simple Email Service (Amazon SES) is a highly scalable and cost-effective bulk and transactional email-sending service for businesses and developers. Amazon SES eliminates the complexity and expense of building an in-house email solution or licensing, installing, and operating a third-party email service. The service integrates with other AWS services, making it easy to send emails from applications being hosted on services such as Amazon EC2. With Amazon SES there is no long-term commitment, minimum spend or negotiation required - businesses can utilize a free usage tier and after that enjoy low fees for the number of emails sent plus data transfer fees.

Building large-scale email solutions to send marketing and transactional messages is often a complex and costly challenge for businesses. To optimize the percentage of emails that are successfully delivered, businesses must deal with hassles such as email server management, network configuration, and meeting rigorous Internet Service Provider (ISP) standards for email content. Additionally, many third-party email solutions require contract and price negotiations, as well as significant up-front costs.

The pricing for SES is very reasonable too...

Amazon SES Free Tier
If you are an Amazon EC2 user, you can get started with Amazon SES for free. You can send 2,000 messages for free each day when you call Amazon SES from an Amazon EC2 instance directly or through AWS Elastic Beanstalk. Many applications are able to operate entirely within this free tier limit.

Note: Data transfer fees still apply. For new AWS customers eligible for the AWS free usage tier, you receive 15 GB of data transfer in and 15 GB of data transfer out aggregated across all AWS services, which should cover your Amazon SES data transfer costs. In addition, all AWS customers receive 1GB of free data transfer per month.

Email Messages*
  • Email messages are charged at $0.10 per thousand.
*A message is defined as a single email communication sent to a single email address. A single email communication sent to multiple recipients is considered to be a unique message to each recipient.
Data Transfer
Data Transfer In  
All Data Transfer $0.10 per GB

Data Transfer Out
First 1 GB per Month $0.00 per GB
Up to 10 TB per Month $0.15 per GB
Next 40 TB per Month $0.11 per GB
Next 100 TB per Month $0.09 per GB
Over 150 TB per Month $0.08 per GB

Data transfer “in” and “out” refers to transfer into and out of Amazon SES. Data transferred between Amazon SES and Amazon EC2 within a single region is free of charge. Data transferred between Amazon SES and Amazon EC2 in different regions will be charged at Internet Data Transfer rates on both sides of the transfer.

Read more about Amazon SES on the product site here.

Wednesday, 19 January 2011

AWS and the Elastic Beanstalk

"Easy to begin, Impossible to outgrow"

AWS Elastic Beanstalk is an even easier way for users to quickly deploy and manage applications in the AWS cloud. Simply upload your 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, you retain full control over the AWS resources powering your application and can access the underlying resources at any time. 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. AWS Elastic Beanstalk is easy to begin and impossible to outgrow.

Thursday, 13 January 2011

Move your VMs to the cloud with VM Import from Amazon

VM Import enables you to easily import virtual machine images from your existing environment to Amazon EC2 instances. This offering allows you to leverage your existing investments in the virtual machines that you have built to meet your IT security, configuration management, and compliance requirements by seamlessly bringing those virtual machines into AmazonEC2 as ready-to-use instances. VM Import is available at no additional charge beyond standard usage charges for Amazon EC2 and Amazon S3.

To import your images, use the Amazon EC2 API tools to point to a virtual machine (VM) image in your existing environment. You then specify which Availability Zone and instance type you want to run in Amazon EC2, and VM Import will automatically transfer the image file, migrate the image and create your instance. Once you have imported your VMs, you can take advantage of Amazon’s elasticity, scalability and monitoring via offerings like Auto Scaling, Elastic Load Balancing and CloudWatch to support your imported images. Your instance will be up and running in Amazon EC2in as little time as it takes to upload your image.*

The VM Import process currently supports VMware VMDK images for Windows Server 2008 SP2. Amazon's notes they plan to import additional operating systems, versions and image formats in the future. In addition, we will enable exporting AmazonEC2 instances to common image formats. They also plan to make VM Import available via a plugin for VMware’s vSphere console in the coming months. To participate in a private beta of the vSphere console plugin, please email [email protected]

*The time required for VM Import is dependent upon your network connection speed and the size of the virtual machine image being uploaded.

Read more on VM Import here.

Sunday, 9 January 2011

A basic HAProxy config for load balancing HTTP traffic

HAProxy is an ultra fast, reliable TCP/HTTP load balancer developed by Willy Tarreau. The following post outlines a brief example on how to load balance two web servers. My distro of choice for this example was Ubuntu 10.10 running as a virtual machine in Amazon EC2.

The installation of HAProxy on Ubuntu 10.10 was very straightforward with apt-get and is as follows:
sudo apt-get install haproxy

This installs version 1.4.8 of HAProxy and is almost immediately ready for use.

First, let's move the current config over to a backup file:
mv /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg.bak

Then, create a new config file with VI or whatever your favorite text editor might be:
vi /etc/haproxy/haproxy.cfg

This text can be pasted right into your text editor window and adjusted to fit your needs.

#Run as a daemon
#Fix the maximum number of concurrent connections on a frontend.
maxconn 4096

#User and group to run under
user haproxy
group haproxy

#Enable per-instance logging of events and traffic.
log   local0
log   local1 notice

 #connection, client and server timeouts
timeout connect 5000ms
timeout client 50000ms
timeout server 50000ms
option redispatch
option dontlognull
retries 3

#IP address of your HAProxy server and 
#the port it will be listening on
frontend http-in

 #Set the running mode or protocol of the instance.
mode http

#Specify the backend to use when no "use_backend" rule has been matched.
default_backend http

backend http

#Set the running mode or protocol of the instance.
mode http
#Enable stats
stats enable
#Enable statistics and define the URI prefix to access them.
stats uri     /admin?stats

#Enable statistics with authentication and grant access to an account.
stats auth admin:[email protected]!n

#Enable cookie-based persistence in a backend.
cookie SERVERID insert indirect

#Enable insertion of the X-Forwarded-For header to requests sent to servers.
option forwardfor

#Enable or disable passive HTTP connection closing.
option httpclose

#Enable HTTP protocol to check on the servers health.
option httpchk GET /keepalive.php HTTP/1.0
#Define the load balancing algorithm to be used in a backend.
balance leastconn
 #Declare your backend servers
server web1 cookie w1 weight 1 check inter 10000
server web2 cookie w2 weight 1 check inter 11000

Once you have made the necessary adjustments to the IP addresses and any other tweaks you see fit, you can test your new config by entering this command:

haproxy -c -f haproxy.cfg

If everything is good you will see:
Configuration file is valid

If not, HAProxy will show you the lines and errors within your config.

When you are ready to pull the trigger you can launch HAProxy:
haproxy -D -f haproxy.cfg
For a deeper look into just how powerful HAProxy can be, I reccomend you check out the latest (at this time) HAProxy Configuration Manual. Or a quick, searchable command reference guide here.

Thursday, 6 January 2011

Amazon expands cloud services support

Amazon Web Services (AWS), the cloud computing arm of the online retail giant, is expanding its support offerings with a basic entry level and higher-end options while at the same time chopping prices on existing support levels.

AWS Premium Support provides a highly personalized level of service for customers seeking technical help. Customers that do not select Premium Support will continue to have access to Basic Support, offered at no additional charge, which includes the Resource Center, Product FAQs, and Discussion Forums.

New email delivery controls for Google Apps Administrators

Google Apps administrators can now create policies specifying who their users can communicate with over email, and administrators can tailor these policies for different groups of users.

For example, school faculty and staff can have unrestricted email access while students have the freedom to send and receive emails within the school community but are protected from unwanted email interactions with outsiders.

Editions included:
Google Apps for Business, Government and Education

Languages included:
US English Only (Next Generation Control Panel)

How to access what's new:
In the administrator control panel, select ‘Advanced tools’ and scroll down to the bottom of the page to see the new option ‘Restrict email delivery’. To restrict email to just within the domain, administrators will still need to add the domain name here.

For more information:
Help Center: http://www.google.com/support/a/bin/answer.py?hl=en&answer=177482

Monday, 3 January 2011

Amazon CloudFront adds Edge location

On Dec 22, 2010, Amazon added a new CloudFront edge location in Jacksonville, FL. With this new location, CloudFront now has a total of 10 edge locations in the United States, and 17 total edge locations worldwide. Each new edge location helps lower latency and improves performance in delivering content by caching it even closer to end users. The new Jacksonville edge location will help improve performance for end users in the south east United States. Amazon plans to continue to add new edge locations worldwide throughout 2011.

About Amazon CloudFront
Amazon CloudFront, the easy to use content delivery network, lets you deliver your content to your end users with low latency and high, sustained data transfer rates. Like other Amazon Web Services, there are no long term contracts or monthly minimum commitments for using CloudFront - you pay only for as much or as little content as you actually deliver through the service. Learn more about our recent features that allow you to do even more with CloudFront: custom origins, object invalidation, default root object, detailed log files, private content, video and audio streaming, and HTTPS to name a few. You can learn more about Amazon CloudFront by visiting the product detail page.

Sunday, 2 January 2011

Lock it up!

Here is a super fast way to lock you computer.

Create a shortcut to: rundll32.exe user32.dll, LockWorkStation

Right click that shortcut and assign shortcut keys - CTRL+ALT+. works great for me.

Then, right before you run out for lunch, hit CTRL+ALT+. and voila, your workstation is locked.