AWS EC2 billed hours per instance in a given time period [closed] - amazon-web-services

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
My CIO is asking me for a monthly "per instance" breakdown of EC2 charges, as some of our EC2 instances are run on behalf specific customers. Does anyone know how to accomplish this?
I can use java, python, or the aws command line tools if necessary, but a report tools or service is preferable.

You need to tag resources associated with a particular customer (for example EC2 instances, RDS) and enable the Detailed Billing Report.
Log into the My Account area of the console and go to the Billing Preferences area. Enable Monthly Report, Programmatic Access and Detailed Billing Report.
AWS will start to aggregate your billing to a nominated S3 bucket as CSV files and break it down by tags. There will be a charge for the storage on S3.
Aggregation by tags only starts from when you turn it on so you won't get the full month till the next report.
More details here and here for how to set up and analyse the data.

Tag the instance ,it will reflect in your bills based on your tags .

There is fairly new tool open-sourced by Netflix called Ice which allows you to visualize the billing details as retrieved via the AWS reports generated into your S3 buckets.
You might also want to check the answers over at serverfault to a similar question.

First thing is to enable detailed billing export to a S3 bucket (see here)
Then I wrote a simplistic server in Python that retrieves your detailed bill and breaks it down per service-type and usage type (see it on this GitHib repo).
Thus you can check anytime what your costs are and which services cost you the most etc.
If you tag your EC2 instances, S3 buckets etc, they will also show up on a dedicated line.

I work for Cloudability, and our tool is built to do exactly that. It collects AWS billing and usage data as well as your tags from all of your accounts and puts it into a custom reporting interface. It's completely point-and-click so you don't have to mess around with writing scripts or building spreadsheets.
A lot of companies are using it to do exactly what you're talking about ... split up costs/usage by instance, department, project, client, etc..
You can check it out at https://cloudability.com

Related

Getting charged for "E2 Instance Core running in Seoul" but there is no VM [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 1 year ago.
Improve this question
I'm being charged for "E2 Instance Core running in Seoul". The billing report says the related service is "Compute Engine", but there is no VM instance running from Compute Engine. I can't track the cause of the bill.
Not sure if it's related, but I created 4 Cloud Run services with 0 minimum instances auto-scaling settings and runs probably 0~5 mins per day. But the usage of the "E2 Instance Core running in Seoul" is 84 hours for 7 days. So I don't think that's the cause.
Why am I being charged for "E2 Instance Core running in Seoul"?
As confirmed in the comments, when using a VPC Serverless Connector, this connector is charged as e2-micro instances as stated by pricing docs.
This is the reason why you see these charges even if you're not having a VM in GCE.
Also to confirm, you can use the following tip from the docs:
You can view your Serverless VPC Access costs in the Cloud Console by filtering your billing reports by the label key serverless-vpc-access.
There are two possiblities:
Resources were created in the wrong region due to a bug - contact billing support and explain everything. If they confirm that it's a bug you can file it on IssueTracker.
Your account has been compromised - in this case I can recommend reading some documentation:
Compromised credentials
Identify and secure compromised accounts
Check the login audit log and see for any unathorised / suspicious looking logins and audit logs for entries related to the resources located in Seoul. It may be in a different project (which would support "being hacked" version).

AWS EC2 Cost comparison in one place? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 1 year ago.
Improve this question
Currently having more than twenty AWS accounts and under each account having 6-10 On-demand EC2 instances both Linux and windows of different sizes and types ,altogether around 100 instances . So looking for cost saving options with various options such as Compute Saving Plan, EC2 Saving Plan, Reserve Instance however unable compare of all different options and their estimates side by side.
Though compute and EC2 estimates are given as recommendation through Billing->Cost Explorer but you need to go through each account , then select different option e.c Compute or EC2 saving , then payment options ,then tenure 1 or 3 years and it display estimates .
I want to see all 100 instance and their prices on one page if possible as below
Under Compute saving plan for 1 and 3 year with full , partial or no upfront payment
under EC2 saving plan for 1 and 3 years with full , partial or no upfront payment
Under reserved instance for 1 and 3 year with full , partial or no upfront payment
is there any easier way to get this done ?
This is probably the best you can get in terms of what you are looking for:
https://calculator.s3.amazonaws.com/index.html
From What is AWS Compute Optimizer? - AWS Compute Optimizer:
AWS Compute Optimizer is a service that analyzes the configuration and utilization metrics of your AWS resources. It reports whether your resources are optimal, and generates optimization recommendations to reduce the cost and improve the performance of your workloads. Compute Optimizer also provides graphs showing recent utilization metric history data, as well as projected utilization for recommendations, which you can use to evaluate which recommendation provides the best price-performance trade-off. The analysis and visualization of your usage patterns can help you decide when to move or resize your running resources, and still meet your performance and capacity requirements.
Compute Optimizer provides a console experience, and a set of APIs that allows you to view the findings of the analysis and recommendations for your resources across multiple AWS Regions. You can also view findings and recommendations across multiple accounts, if you opt in the management account of an organization. The findings from the service are also reported in the consoles of the supported services, such as the Amazon EC2 console.
https://ec2instances.github.io/ tiny opensource tool that pulls pricing data from AWS json-API and presents it as a table.
Disclaimer: I've built this (for myself)

Billing for multiple users of google cloud APIs on one GCP project [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 1 year ago.
Improve this question
I have one GCP project and multiple users/service accounts that use the google cloud APIs (e. g. Cloud text-to-speech, Cloud speech-to-text etc.). In the metrics overview for each API it is possible to see how often an API has been called by whom, but for the billing overview, it is not possible to identify which user/service account caused a specific amount of costs. So my question is: Is it possible to identify the different users/service accounts in the actual billing costs?
Normally, one would use labels to distinguish between different users, but unfortunately labels are not supported for those APIs (see list of currently supported services: https://cloud.google.com/resource-manager/docs/creating-managing-labels#label_support)
Additionally, each user/service account has a separate Cloud run instance connected to it, that runs a server listening for incoming requests and forwards them to the corresponding API. Would this approach somehow facilitates the mapping from user to costs in one GCP project?
Metrics and billing are 2 different things.
Google provides metrics to follow and understand the usage of your service in your project
The billing is at the project level, whatever the user/service account, YOU pay, it's not the concern of Google of how will you rebill the service to your users.
So, here the solution is to use the metrics to get the data and then to equally distribute the cost according to the APIs usages.
Similarly, Cloud Run label will help you to have details in the BigQuery billing export, but google will charge you for all your services.
Ultimately, if the services/customers are independent, you can imagine to create a project per customer, and thus to have 1 free tiers per project (when applicable) and, above all, 1 billing per project, and thus per customer!

Amazon AWS cost of small basic web [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 2 years ago.
Improve this question
I need a place to host a small basic static web site made up of a bunch of file and folders (html, css, images, etc.) for a non-profit. I've looked at Amazon AWS a bit and it looks like it could be done for a very small cost.
Is it really possible to host a web site At Amazon AWS for under a $1.00/month?
Is there any way to use the free AWS and then determine what the cost would have been if one used the paid option?
Is it really possible to host a web site At Amazon AWS for under a
$1.00/month?
If you just have static files, then you can definitely host the site on S3 for a very low price. If you have a dynamic website (PHP, Ruby, Python, Java, etc.) then you will need an actual server to run that on, and it will be more like $5 a month minimum.
Note that you will pay for data transfer, so if your site gets very popular the price could start to go up.
Is there any way to use the free AWS and then determine what the cost
would have been if one used the paid option?
You can enable detailed billing on the AWS account. Then you could punch those numbers into the AWS cost calculator to see what the charges would have been if you were not in your free tier period.
Is it really possible to host a web site At Amazon AWS for under a
$1.00/month?
It is possible for 1$/Month in AWS but your usage and traffic has to be less. Free tier is available but it is available for one year only and following are the resources available in free tier https://aws.amazon.com/free/.
You can also refer this which gives approximation. http://www.hostingadvice.com/how-to/aws-s3-pricing/
Is there any way to use the free AWS and then determine what the cost
would have been if one used the paid option?
You can calculate this cost at https://calculator.s3.amazonaws.com/index.html
Also you stated in your question it is non-profit. So AWS provides $2000 credits for non-profits.
https://aws.amazon.com/government-education/nonprofits/

Chat App on AWS: EC2 (eJabberd XMPP) vs RDS (Relational Database) vs other options? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I want to create an iOS app for 1:1 and group chats. Since DynamoDB is not the ideal solution for this, I am currently searching for a better way.
Possible solutions:
Install an XMPP server (eJabbered) on AWS EC2
Use AWS RDS (relational database) with one chat table, where each record equals a message sent from one client to another or to a group.
Use Amazon S3 to store files for each chat?
Other options?
Which one of the above is most elegant / easiest solution for this?
Option 1 is not recommended by some. Option 2 seems to be easier to (auto) scale.
Which one is more cost-efficient?
Regarding RDS Amazon writes:
"AWS Free Tier includes 750hrs of Micro DB Instance each month for one year"
Regarding EC2 Amazon writes:
"AWS Free Tier includes 750 hours of Linux and Windows t2.micro instances each month for one year. To stay within the Free Tier, use only EC2 Micro instances."
I am quite new to server backend architecture, but an accounting based on time seems not to be the best solution for a chat app?
The S3 solution is not the one to choose because the limit of PUT Authorized on Amazon S3 is too small (2000), so if you are going to have millions of chat conversation, your cost will be amazing.
Currently i'm using AWS RDS for a chat feature on my android/ios application.
This solution works fine because my database and your server application are scalable, but i'm not sure it's the better solution to use.
Conclusion
If i have to start a new chat application today, i will choose XMPP server for low cost and better performance.