Does anyone know how to reduce data transfer out charges on AWS? - amazon-web-services

I created a t3.micro EC2 instance on aws being costed at an hourly rate of $0.0065/hr. It's got 2 vCPUs and 1 GiB Memory. I manged to run a 128 tick CS:GO server on it, but the data transfer out charges are killing it. The estimated cost of this server per month is around $43, considering I only play 5 scrims (5v5 competitives) per day, and data transfer out alone costs me $38 in this case. However, some individuals are offering me a server for as low as $10 per month. What am I doing wrong? How do they do it?

You might consider moving from Amazon EC2 to Amazon Lightsail.
Lightsail has pricing plans that include volumes of Data Transfer traffic and it is designed for people who just want to launch a small number of virtual computers (eg WordPress instances) rather than configure a whole cloud infrastructure.
See: Amazon Lightsail Pricing | Virtual Private Server (VPS) | AWS

Related

AWS EC2 On-Demand Pricing

I'm new to AWS EC2, and I wanted to deploy a web server in it. However I'm concerned about the price because the app will only be used for a few hours per day and I saw in the AWS Calculator that there's a Utilization per month as part of the billing computation https://calculator.aws/#/createCalculator/EC2.
What does the Utilization mean? Let's say I have a running EC2 instance. How do I reduce the charges?
Does it depend on the amount of times the server APIs are invoked in the app? So for the hours that the APIs are NOT being invoked, I won't get charged?
Or
Will it keep on charging me as long as the EC2 instance is running so I should shut it down during idle hours to save up on costs?
Amazon EC2 is charged at an hourly price. The price varies by the Instance Type and the Operating System. Basically, machines with more memory and more CPUs are more expensive, and Windows is more expensive than Linux. There is also a charge for Data Transfer, which is traffic that goes out to the Internet.
If you have a small application, an alternative would be to use Amazon Lightsail, which offers a simple monthly price for both the computer and the traffic.
I've added my response to each of your questions -
What does the Utilization mean? Let's say I have a running EC2 instance. How do I reduce the charges? - You will be charged for the time you let that EC2 instance running, start with a t2.micro under free tier account, you are allowed to run it for 750 hours a month!
Does it depend on the amount of times the server APIs are invoked in the app? So for the hours that the APIs are NOT being invoked, I won't get charged? - No, for EC2, it's the runtime and not the API queries.
Will it keep on charging me as long as the EC2 instance is running so I should shut it down during idle hours to save up on costs? - Shut it down, I would also to setup billing alarms to get an alert once my bill crosses a certain threshold
As long as the servers are up and running you will be charged for it. So yes, you should shut it down during idle hours if you want to save costs.
If you just want to try it out for a simple Rest API server, you can create a new account for a 12-month free tier that will basically entitle you to the smallest 24/7 running (750 hours/month) server.
I've used this server for one of my smaller projects, and it was enough to serve about 100 users in total, with about maximum 10 people coming in and out time to time per day. Had no problem with it.

Does cost of EC2 on AWS increase at the same rate as user count?

I'm getting ready to launch a mobile app that I have hosted on AWS with an EC2 instance. ($0.0464 per On Demand Linux t2.medium Instance Hour).
This past month I was charged $112 for the EC2 usage, but only had a handful of internal users testing the private version of the app. It's a fairly simple app, not anything that should require a lot of computing power.
So what I'm wondering is if 10 users and dev team costs $112/mo, what happens if I get 1,000 users, or 10k users? Would the cost increase 100x, 1000x? I can't imagine getting auto-billed for $112,000 for a month of service with a small user base like 10k users.
Thanks for any help and guidance, I don't know much about AWS.
Here are the details of my billing for last month:
The billing page shows 2219 hours of t2.medium during this billing month.
That is the equivalent of 92 days. So, it might be 3 instances running for a full month.
Amazon EC2 is charged when the instance is in the Running state. If you are not using an instance, you can Stop the instance. The attached disks (EBS) will still be charged, but there will be no charge for the instance itself.
The charge is not based on the number of users, nor how 'busy' the instance is. It is simply charged when the instance is 'running'. This is because computer resources are exclusively assigned to instances (CPU, RAM) that nobody else can use.
Bottom line: Stop instances that you don't need. Use the smallest instance type for your use-case to reduce costs.
If you were not aware of the charges involved, you can contact AWS Customer Service and request a refund.
FYI, the T2 and T3 family are great for workloads that occasionally 'burst' but then have low-usage periods, but they are not great for sustained workloads. See: Burstable performance instances - Amazon Elastic Compute Cloud

AWS Lightsail MySql Database

I have taken a AWS Lightsail Unix Instance for one of my pilot project, I wanted to explore AWS ecosystem and thought this would be a easy playground to start with. The plan I opted was a USD 5 per month, which gives 1 GB Memory, 1 Core Processor, 40 GB SSD Disk and 2 TB Transfer.
After subscribing I created a LAMP instance and a Plesk Instance, assigned static IPs to both instances and setup connections from my PC to transfer files using PuTTY; also setup access to Plesk and phpMyAdmin to start work.
In the first month itself, I am seeing a huge bill of USD 985 for using AWS RDS, details in bill are as below:
Amazon Relational Database Service for MySQL Community Edition
$1.080 per RDS db.r4.xlarge Multi-AZ instance hour (or partial hour) running MySQL
My question is - When I created LAMP, does it create a AWS RDB service automatically, I have hardly used MySql for anything. It seems AWS Lightsail is throwing hidden charges without notifying customers about actuals.
No, creating a LAMP stack on Lightsail does not create an RDS instance on your behalf. With the LAMP stack on Lightsail, the MySQL database is installed on that instance alongside PHP and Apache - there is no charge beyond the $5.00 / month (in your case) as long as you don't go over the data transfer limit.
I can't say why you're getting charged for RDS, but it's not because you fired up Lightsail instances.
Thank you folks!
I tried to go through several docs AWS provides on pricing. There is no indication that AWS RDB services automatically starts on LAMP installation. I wanted to take second opinion before raising a complaint with them. I have opened a case, and they have confirmed to revert the charges, however there is no clarity how AWS RDS service has started. At present I have removed all DB snapshots and backups.

AWS billing - how to view cost for load balancing instance aka ELB?

In brief
How to know the monthly cost of an Elastic Load Balancing instance?
Full detail
My team is using an AWS Elastic Beanstalk instance, and we need to know how much it costs per month.
My google lead me to this AWS page which suggests to view the cost of EC2 and ELB
The principal costs for a web application will typically be for the Amazon EC2 instance(s) and for the Elastic Load Balancing
We can use AWS Calculator to get the monthly cost of an EC2 instance; though we CANNOT find out how to compute the cost for the ELB there ie. using the AWS Calculator.
My google search results as this AWS page which shows a way to compute the cost manually i.e. basing on $0.025 per hour run, and $0.008 per GB of data transfer. But what is the average number of hours and/or transferred data? Why not just have it in the calculator too?
If the load balancer ended up transferring 100 GB of data over a 30 day period, the monthly charge would amount to $18 (or $0.025 per hour x 24 hours per day x 30 days x 1 load balancer) for the load balancer hours and $0.80 (or $0.008 per GB x 100 GB) for the data transferred through the load balancer, for a total monthly charge of $18.80.
To see how much your services are costing you, turn on Detailed Billing Reports. This will create highly detailed billing information, saved in files in Amazon S3.
You can also use the billing option in the management console to see high-level billing by service, but you'll need to turn on Detailed Billing to obtain more detail (and that detail is only available after Detailed Billing is activated).
See also:
Pricing for Classic Load Balancer
Pricing for Application Load Balancer

Charges for "traffic" in EC2 instance?

Is there any changes for "traffic" when using basic version of EC2 instance, by basic I mean:
750 hours per month of Linux, RHEL, or SLES t2.micro instance usage
Traffic: If we setup a server and there are some hits on my server then is there any charge for this setup. I am not using ELB, just EC2 instance with a server on it.
The full pricing for On-Demand Amazon EC2 instances can be found at: https://aws.amazon.com/ec2/pricing/on-demand/
The AWS Free Usage Tier gives 750 hours per month of a t2.micro instance. This means you could run one instance for a full month, or two instances for half a month. Simply stop the instance(s) to stop the charges.
You can have this free usage tier for a Linux AND a Windows instance.
However, please note that there are additional charges that also apply:
Data Transfer: This is charged for data leaving the AWS Region going to the Internet. The free usage tier includes "15 GB of bandwidth out aggregated across all AWS services" in the first 12 months. The EC2 pricing page also says that the first 1 GB/month is free, but I'm not sure if they overlap.
EBS Volume storage: Elastic Block Store (EBS) runs the disks attached to your instance. The free usage tier includes "30 GB of Amazon Elastic Block Storage in any combination of General Purpose (SSD) or Magnetic, plus 2 million I/Os (with EBS Magnetic) and 1 GB of snapshot storage", so you will be charged if your disk storage exceeds this (which is likely if you run both a Windows and a Linux instance). This storage charge continues to apply when an instance is Stopped, but not when an instance is Terminated.
Bottom line: Stop or turn off things when you don't need them. You can also activate a billing alert to warn you when you have been charged some actual money.
Yes, there are varying charges for traffic into and out of your EC2 instance.
in very rough numbers, if you budgeted $0.01 per GB of traffic, you would come in under that, but the complete breakdown is here:
https://aws.amazon.com/ec2/pricing/on-demand/