Thursday, 15 December 2011

Amazon Simple Email Service Gets Simpler with SMTP

Amazon Simple Email Service Gets Simpler with SMTP
On Dec. 13, Amazon announced that they have added support for Simple Mail Transfer Protocol (SMTP) to Amazon Simple Email Service (Amazon SES), AWS’s highly scalable and cost-effective bulk and transactional email-sending service for businesses and developers. It is now much easier to configure your programs and applications to send email via Amazon SES. Using your existing systems and SMTP, you don’t have to write a single line of code to send your email.
To use this feature:
  1. Log into the AWS Management Console.
  2. In the SES tab, select SMTP Settings and click on Create a New SMTP User.
  3. Use the default User Name or edit this name and click Create.
  4. Copy your credentials or click on Download Credentials.
  5. Use these credentials with the settings in SMTP Settings to configure your program or system to send through the Amazon SES SMTP interface.
Of course, you can continue to send email via their API as well, so you can use whichever method works best for you.
Check out this new feature today, and share your thoughts by visiting the Amazon SES forum. For more information, check out Amazon SES Developer Guide.

Thursday, 3 November 2011


Amazon kicked it up a notch today by adding SMS notifications for its Simple Notification Service (SNS).

Amazon SNS is a web service that makes it easy to send notifications from the cloud to applications or people. It provides developers with a highly scalable, flexible, and cost-effective way to publish messages and have them immediately delivered to any number of subscribers or other applications. Previously Amazon SNS supported message deliveries via HTTP, email or to Amazon SQS queues.

Notifications can now be sent as text messages to cell phones, smart phones or any other device that supports SMS. Amazon CloudWatch users who monitor their applications running on AWS services can receive timely updates for any event of interest or alarm they set. 

Existing Amazon SNS users who receive content via email can now also have that content delivered to their mobile device. SMS notifications with Amazon SNS can also be used to relay time-critical application events to mobile applications and devices. 

Mobile applications increasingly deliver and integrate real-time information from a variety of sources, including weather, traffic, social-media updates, and even multi-player games. Developers can easily integrate mobile applications with Amazon SNS today, to send messages and receive notifications over SMS. 

This new Amazon SNS feature can be easily accessed from the AWS Management Console available at: While Amazon SNS is supported in all AWS regions, SMS notification support is currently supported in the US-East region, and will be available in other AWS regions and countries in the coming months.

Wednesday, 26 October 2011

New domain name!

Woops! Apparently I haven't been in here for a while... and my GoDaddy emails were going to spam. Regardless, I let my long domain name go, and picked up something much smaller and easier.

Friday, 7 October 2011

Google App Engine Blog: Google Cloud SQL: Your database in the cloud

Google App Engine Blog: Google Cloud SQL: Your database in the cloud: Cross-posted from the Google Code Blog One of App Engine’s most requested features has been a simple way to develop traditional database-d...

Tuesday, 23 August 2011

Amazon's latest cloud super hero, ElastiCache

This morning Amazon announced the public beta launch of Amazon ElastiCache, a new web service that makes it easy to deploy, operate, and scale an in-memory cache in the cloud. The service improves the performance of web applications by allowing you to retrieve information from a fast, managed, in-memory caching system, instead of relying entirely on slower disk-based databases.

Amazon ElastiCache is protocol-compliant with Memcached, a widely adopted memory object caching system, so code, applications, and tools that you use today with your existing Memcached environments will work seamlessly with the service. Amazon ElastiCache simplifies and offloads the management, monitoring, and operation of in-memory cache environments, enabling your engineering resources to focus on the differentiating parts of your applications. The service is ideal for many read-heavy application workloads (such as social networking, gaming, media sharing and Q&A portals) or compute-intensive workloads (such as a recommendation engine).

Using Amazon ElastiCache, you can add an in-memory cache to your application architecture in a matter of minutes. With a few clicks of the AWS Management Console, you can launch a Cache Cluster consisting of a collection of Cache Nodes, each running Memcached software. You can scale the amount of memory associated with your Cache Cluster in minutes by adding or deleting Cache Nodes to meet the demands of your changing workload. In addition, Amazon ElastiCache automatically detects and replaces failed Cache Nodes, providing a resilient system that mitigates the risk of overloaded databases, which slow website and application load times. Through integration with Amazon CloudWatch, Amazon ElastiCache provides enhanced visibility into key performance metrics associated with your Cache Nodes.

For more info about ElastiCache, you can visit Amazon ElastiCache detail page to learn more about the benefits of the service. You can easily get started with Amazon ElastiCache by viewing a quick demo or reviewing the Getting Started Guide, and launch a pre-configured Cache Cluster in minutes.

Thursday, 4 August 2011

Amazon Web Services announces VPC Global Rollout and New Enterprise Features

Today Amazon announce the global rollout of Amazon Virtual Private Cloud (Amazon VPC) plus new enterprise capabilities for dedicated networking and identity management. These new capabilities are designed to support the security, network management, dedicated connectivity and access control requirements of enterprises when deploying mission critical applications in the cloud.

Amazon Virtual Private Cloud is now out of beta and is generally available in multiple Availability Zones in all AWS Regions (US East, US West, EU, Singapore, and Tokyo.) Using Amazon VPC, you can provision a private section of the AWS cloud where you can a create virtual network that you control, including selection of IP address range, creation of subnets, and configuration or route tables and network gateways. You can connect your Amazon VPC directly to the Internet while also extending your corporate data center to the cloud using encrypted VPN connections.

With today's global rollout of Amazon VPC, you can:
  • Provision multiple VPCs to support different use cases, for example, a production network, a staging network, and a development and test network.
  • Launch Amazon EC2 instances into subnets in different Availability Zones to protect applications from failure of a single location
  • Connect branch office locations to each other and to your Amazon VPC via encrypted VPN tunnels.
In addition, this rollout also includes support for Windows Server 2008 R2 and for Windows SQL Server Reserved Instances in Amazon VPC. To get started using Amazon VPC, visit

Amazon Direct Connect, also announced today, is a new service that enables you to bypass the Internet and deliver data to and from AWS via a private network connection. With a private connection, you can reduce networking latency and costs, and provide a more consistent network experience when moving data between AWS and your datacenters. With pay-as-you-go pricing and no minimum commitment, you pay only for the network ports used and the data transferred out from AWS over the private connection

AWS Direct Connect works with all AWS services and is available today for the US-East (Virginia) Region. Additional locations are planned for San Francisco Bay Area (San Jose), Los Angeles, Tokyo, and Singapore in the next several months. To get started using AWS Direct Connect, visit

AWS has also added new functionality for AWS Identity and Access Management (IAM) that enables “identity federation,” or the ability for you to use your existing corporate identities to grant secure and direct access to AWS resources without creating a new AWS identity for those users. This capability enables you to programmatically request security credentials, with configurable expiration and permissions, that grant your corporate identities access to AWS resources controlled by your business. To get started using AWS IAM, visit

Friday, 10 June 2011


For all those Windows users looking to leverage Amazon SES with your IIS SMTP instances, check out this Codeplex project.

"The SMTP server was made to be simple and easy to integrate with IIS Virtual SMTP Server and as such does not provide authentication. To simplify things, the Amazon SES SMTP server can sit behind the IIS Virtual SMTP Server as a SmartHost, allowing IIS to take care of all security restriction, authentication and queuing."

Friday, 18 February 2011

Host your static website in Amazon S3

This morning Amazon announced a set of new features that make it easy to host static websites on Amazon S3. 1000s of customers already use Amazon S3 to host images, video, and other content for their websites, but until now they have not been able to effectively host their entire website on Amazon S3. That's because even though customers can configure an Amazon S3 bucket as a website, users accessing the root of the website (e.g. would see the list of objects in the Amazon S3 bucket instead of the website's home page. Also, if an error occurred, users would see an Amazon S3 error message instead of a website specific error message. In response to customer requests, Amazon has added support for root and custom error documents to address these issues.

With these new features, Amazon S3 now provides a simple and inexpensive way to host your website in one place. To get started, open the Amazon S3 Management Console, and follow these simple steps:

1) Right-click on your Amazon S3 bucket and open the Properties pane
2) Configure your root and error documents in the Website tab
3) Click Save

For more information on hosting your static website on Amazon S3, review the Amazon S3 Developer Guide.

Thursday, 10 February 2011

Reset your Webmin admin password

Webmin is an awesome tool; super powerful and extremely intuitive. Using any modern web browser, you can setup user accounts, Apache, DNS, file sharing and much more. Webmin removes the need to manually edit Unix configuration files like /etc/passwd, and lets you manage a system from the console or remotely. See the standard modules page for a list of all the functions built into Webmin, or check out the screenshots.

However, at some point you might need to reset your password - especially if you want to use Webmin with a Linux server in Amazon EC2.

1. Login as root

2. Run one of these commands based on your distro

* RedHat distribution (Fedora, CentOS):
/usr/libexec/webmin/ /etc/webmin admin newpassword

* Debian distribution:
/usr/share/webmin/ /etc/webmin admin newpassword

* FreeBSD:
/usr/local/lib/webmin/ /usr/local/etc/webmin admin newpassword

3. Login to Webmin with your reset password.

Some guides and great texts about Webmin are:


Wednesday, 9 February 2011

What Linux process is listening?

One of the fastest ways to find out which port/IP your process is listening on is to use netstat. A command line tool that displays network connections and interface stats as well as routing tables.

Example netstat command:
netstat -tulpn

Example netstat output:

[email protected]:/# netstat -tulpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 *               LISTEN      760/memcached
tcp        0      0*               LISTEN      1468/haproxy
tcp        0      0 *               LISTEN      730/perl
tcp        0      0    *               LISTEN      300/sshd
tcp        0      0*               LISTEN      1468/haproxy
tcp        0      0  *               LISTEN      579/nrpe
tcp6       0      0 :::11211                :::*                    LISTEN      760/memcached
tcp6       0      0 :::22                   :::*                    LISTEN      300/sshd
udp        0      0 *                           620/snmpd
udp        0      0    *                           307/dhclient3
udp        0      0 *                           760/memcached
udp        0      0 *                           1468/haproxy
udp        0      0 *                           730/perl
udp        0      0 *                           620/snmpd
udp6       0      0 :::11211                :::*                                760/memcached

Further, if you want to drill into only HTTP, for example:
netstat -tulpn | grep :80

And we can see HAProxy listening for HTTP traffic on TCP:80:
tcp        0      0*               LISTEN      1468/haproxy

Tuesday, 8 February 2011

Amazon adds CloudFront & Route 53 Edge Location

Today, Amazon announced the addition of a new edge location in Paris, France to serve end users of Amazon CloudFront and Amazon Route 53. With this new location, CloudFront and Route 53 now have a total of 5 edge locations in Europe, and 18 total edge locations worldwide. Each new edge location helps lower latency and improves performance for end users in that region. With further plans to continue adding new edge locations worldwide throughout 2011, this is a very promising and cost effective alternative to traditional CDNs and DNS services.

Monday, 7 February 2011

Amazon SES and your MTA

One very popular question, I am sure, about Amazon SES is "Can my existing SMTP applications deliver email via Amazon SES?". And the simple answer to that is, YES. It can. As long as your MTA isn't IIS+SMTP. But, if you are a Linux user using Postfix or Sendmail you are in luck!

I have not yet tried any of these configs myself, yet. But as soon as I do I will post some help.

Thursday, 3 February 2011

Tuesday, 1 February 2011

AWS to Launch Oracle Edition of Amazon RDS

Today, Amazon announced plans to make Oracle Database 11g available via the Amazon Relational Database Service (Amazon RDS) during the second quarter of 2011. Amazon RDS is a web service that makes it easier to set up, operate, and scale a relational database in the cloud. Amazon RDS for Oracle will include flexible pricing options. If you have existing Oracle licenses, you will be able to apply them to run Oracle Databases on Amazon RDS with no additional software licensing or support charges. If you don't, you'll be able to take advantage of on-demand hourly licensing with no upfront fees or long-term commitments.

With Amazon RDS, you can provision and scale a relational database (and the underlying infrastructure hardware and software) in just minutes using the point-and-click interface of the AWS Management Console. Amazon RDS also manages time-consuming database administration tasks, including continuous backups, software patching, and exposing key operational metrics. Running Oracle Databases on Amazon RDS enables you to extend the ease of use and management capabilities of Amazon RDS to the Oracle Database Software.

While this new Oracle Database offering is not yet available, Amazon is announcing our plans in advance of launch to allow enterprises of all sizes that are interested in Oracle Database to plan for future database deployments. Click here to learn more, sign up to be notified when the service is available, and request contact from an AWS associate to answer your questions or schedule a briefing.

In anticipation of this offering, you can click here to learn more about the benefits of Amazon RDS and deploy a managed MySQL database today. Since the user experience of Amazon RDS will be similar across MySQL and Oracle offerings, this is a great way to get started with Amazon RDS in preparation for the forthcoming Oracle Database offering.

Tuesday, 25 January 2011

Introducing Amazon SES (Simple Email Service) 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:

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.