In this post i will show how to make a installation of Redmine in AWS with some nice tools from AWS (EC2, RDS, S3, SES, ElastiCache) and making it auto scalable.
Sometimes EC2 CloudWatch monitoring shows 100% CPU usage but when you ssh to your instance and try to see it with ‘top’ you can’t understand what is happening. Probably, Amazon is “borrowing” some of your CPU cycles to give to someone else who needs it – this is standard practice for a virtualised environment where physical server resources like RAM usage and CPU cycles are often hugely over-committed.
To check for CPU steal, run top and take a look for the %st value. If this value is anything other than zero, it means your VM’s CPU cycles are being “borrowed”.
In case you lose your Amazon EC2 SSH Key, and can’t login in your instance. This isn’t a big problem if your instance is EBS based and you use an Elastic IP.
1. Upload your new SSH Key, or use one made by AWS
2. Make an AMI of your instance
3. Launch a new machine from your AMI, select the new SSH Key
4. Log in your machine with default user (ubuntu, ec2-user, depends on your original AMI image)
How to get started with AWS free?
Just go to http://aws.amazon.com/free/ and make your account.
Credicard will be needed even for a free account.
What can be done with the free account?
It’s up to you! If you are going to make a light traffic website free tier can handle it. 🙂
You can have up to two EC2 instances (1 Linux, 1 Windows) with 613M Ram and up to 30GB EBS Size. You can go with all your 30GB on a Linux instance it’s the best way to spend your ‘free’ resources. (Windows is memory hungry.)
You can have up to one RDS instance (postgres, mysql, …) with 20GB of DB storage and 20GB for backups.
You can have up to one S3 with 5GB of storage with up to 20k put and 20k get requests.
You can have up to one Memcached server with 213MB
And some more things (ELB, DynamoDB, SNS, CloudWatch, …)