* usr/lib/byobu/ec2_cost, usr/share/byobu/ec2/Makefile.am,

usr/share/byobu/ec2/rates.ap_si => usr/share/byobu/ec2/rates.ap-
  southeast-1, usr/share/byobu/ec2/rates.ap_to =>
  usr/share/byobu/ec2/rates.ap-northeast-1,
  usr/share/byobu/ec2/rates.eu_ie => usr/share/byobu/ec2/rates.eu-
  west-1, usr/share/byobu/ec2/rates.us_ca => usr/share/byobu/ec2/us-
  west-1, usr/share/byobu/ec2/rates.us_va =>
  usr/share/byobu/ec2/rates.us-east-1:
  - rework ec2_cost entirely, using metaservice; much more accurate
This commit is contained in:
Dustin Kirkland 2011-05-25 18:23:27 -05:00
commit 78c62257d6
12 changed files with 95 additions and 84 deletions

9
debian/changelog vendored
View file

@ -23,6 +23,15 @@ byobu (4.3) unreleased; urgency=low
usr/share/byobu/ec2/rates.ap_to, usr/share/byobu/ec2/rates.eu_ie, usr/share/byobu/ec2/rates.ap_to, usr/share/byobu/ec2/rates.eu_ie,
usr/share/byobu/ec2/rates.us_ca, usr/share/byobu/ec2/rates.us_va: usr/share/byobu/ec2/rates.us_ca, usr/share/byobu/ec2/rates.us_va:
- update AWS prices, add the two new AP zones - update AWS prices, add the two new AP zones
* usr/lib/byobu/ec2_cost, usr/share/byobu/ec2/Makefile.am,
usr/share/byobu/ec2/rates.ap_si => usr/share/byobu/ec2/rates.ap-
southeast-1, usr/share/byobu/ec2/rates.ap_to =>
usr/share/byobu/ec2/rates.ap-northeast-1,
usr/share/byobu/ec2/rates.eu_ie => usr/share/byobu/ec2/rates.eu-
west-1, usr/share/byobu/ec2/rates.us_ca => usr/share/byobu/ec2/us-
west-1, usr/share/byobu/ec2/rates.us_va =>
usr/share/byobu/ec2/rates.us-east-1:
- rework ec2_cost entirely, using metaservice; much more accurate
[ Scott Moser ] [ Scott Moser ]
* usr/lib/byobu/.shutil: fix rounding across a decimal point in fpdiv() * usr/lib/byobu/.shutil: fix rounding across a decimal point in fpdiv()

View file

@ -31,30 +31,32 @@ for arg in $@; do
esac esac
done done
# Get the going rates # Try to use metadata service
[ -r "$DATA/ec2_rates" ] || ln -s $BYOBU_PREFIX/share/$PKG/ec2/rates.us_ca "$DATA/ec2_rates" zone=$(wget -q -O - http://169.254.169.254/latest/meta-data/placement/availability-zone || echo "us-east-1")
. "$DATA/ec2_rates" || exit 1 . "$BYOBU_PREFIX/share/$PKG/ec2/rates.$zone"
if type=$(wget -q -O - http://169.254.169.254/latest/meta-data/instance-type); then
# Count CPUs, Memory, Architecture RATE=$(eval ${type/./_})
cpu=$(grep -c "^processor.*:" /proc/cpuinfo) || cpu=1
mem=$(grep ^MemTotal /proc/meminfo | awk '{print $2}')
# Guess this system's going rate, based on mem available (m* types)
if [ $mem -lt 700000 ]; then
RATE=$T1_MICRO
elif [ $mem -gt 64000000 ]; then
RATE=$M2_4XLARGE
elif [ $mem -gt 32000000 ]; then
RATE=$M2_2XLARGE
elif [ $mem -gt 16000000 ]; then
RATE=$M2_XLARGE
elif [ $mem -gt 14000000 ]; then
RATE=$M1_XLARGE
elif [ $mem -gt 7000000 ]; then
RATE=$M1_LARGE
else else
# Otherwise, scale based on number of cpu's (c* types) # Count CPUs, Memory, Architecture
RATE=$(echo "$cpu" "$M1_SMALL" | awk '{printf "%f", $1*$2}') cpu=$(grep -c "^processor.*:" /proc/cpuinfo) || cpu=1
mem=$(grep ^MemTotal /proc/meminfo | awk '{print $2}')
# Guess this system's going rate, based on mem available (m* types)
if [ $mem -lt 700000 ]; then
RATE=$T1_MICRO
elif [ $mem -gt 64000000 ]; then
RATE=$M2_4XLARGE
elif [ $mem -gt 32000000 ]; then
RATE=$M2_2XLARGE
elif [ $mem -gt 16000000 ]; then
RATE=$M2_XLARGE
elif [ $mem -gt 14000000 ]; then
RATE=$M1_XLARGE
elif [ $mem -gt 7000000 ]; then
RATE=$M1_LARGE
else
# Otherwise, scale based on number of cpu's (c* types)
RATE=$(echo "$cpu" "$M1_SMALL" | awk '{printf "%f", $1*$2}')
fi
fi fi
# Data Transfer Cost Basis # Data Transfer Cost Basis

View file

@ -1,2 +1,2 @@
ec2dir = $(datadir)/@PACKAGE@/ec2 ec2dir = $(datadir)/@PACKAGE@/ec2
ec2_DATA = rates.eu_ie rates.us_ca rates.us_va rates.ap_si rates.ap_to ec2_DATA = rates.ap-northeast-1 rates.ap-southeast-1 rates.eu-west-1 rates.us-east-1

View file

@ -0,0 +1,15 @@
# 2011-05-25: Approximate Instance Cost Basis per hour from
# http://aws.amazon.com/ec2/instance-types/
# http://aws.amazon.com/ec2/pricing/
# for AP - Tokyo
m1_small="0.10"
m1_large="0.40"
m1_xlarge="0.80"
t1_micro="0.027"
m2_xlarge="0.60"
m2_2xlarge="1.20"
m2_4xlarge="2.39"
c1_medium="0.20"
c1_xlarge="0.80"
cc1_4xlarge="1.60"
cg1_4xlarge="2.10"

View file

@ -0,0 +1,15 @@
# 2011-05-25: Approximate Instance Cost Basis per hour from
# http://aws.amazon.com/ec2/instance-types/
# http://aws.amazon.com/ec2/pricing/
# for AP - Singapore
m1_small="0.095"
m1_large="0.38"
m1_xlarge="0.76"
t1_micro="0.025"
m2_xlarge="0.57"
m2_2xlarge="1.14"
m2_4xlarge="2.28"
c1_medium="0.19"
c1_xlarge="0.76"
cc1_4xlarge="1.60"
cg1_4xlarge="2.10"

View file

@ -1,15 +0,0 @@
# 2011-05-25: Approximate Instance Cost Basis per hour from
# http://aws.amazon.com/ec2/instance-types/
# http://aws.amazon.com/ec2/pricing/
# for AP - Singapore
M1_SMALL="0.095"
M1_LARGE="0.38"
M1_XLARGE="0.76"
T1_MICRO="0.025"
M2_XLARGE="0.57"
M2_2XLARGE="1.14"
M2_4XLARGE="2.28"
C1_MEDIUM="0.19"
C1_XLARGE="0.76"
CC1_4XLARGE="1.60"
CG1_4XLARGE="2.10"

View file

@ -1,15 +0,0 @@
# 2011-05-25: Approximate Instance Cost Basis per hour from
# http://aws.amazon.com/ec2/instance-types/
# http://aws.amazon.com/ec2/pricing/
# for AP - Tokyo
M1_SMALL="0.10"
M1_LARGE="0.40"
M1_XLARGE="0.80"
T1_MICRO="0.027"
M2_XLARGE="0.60"
M2_2XLARGE="1.20"
M2_4XLARGE="2.39"
C1_MEDIUM="0.20"
C1_XLARGE="0.80"
CC1_4XLARGE="1.60"
CG1_4XLARGE="2.10"

View file

@ -0,0 +1,15 @@
# 2011-05-25: Approximate Instance Cost Basis per hour from
# http://aws.amazon.com/ec2/instance-types/
# http://aws.amazon.com/ec2/pricing/
# for EU - Ireland
m1_small="0.095"
m1_large="0.38"
m1_xlarge="0.76"
t1_micro="0.025"
m2_xlarge="0.57"
m2_2xlarge="1.14"
m2_4xlarge="2.28"
c1_medium="0.19"
c1_xlarge="0.76"
cc1_4xlarge="1.60"
cg1_4xlarge="2.10"

View file

@ -1,15 +0,0 @@
# 2011-05-25: Approximate Instance Cost Basis per hour from
# http://aws.amazon.com/ec2/instance-types/
# http://aws.amazon.com/ec2/pricing/
# for EU - Ireland
M1_SMALL="0.095"
M1_LARGE="0.38"
M1_XLARGE="0.76"
T1_MICRO="0.025"
M2_XLARGE="0.57"
M2_2XLARGE="1.14"
M2_4XLARGE="2.28"
C1_MEDIUM="0.19"
C1_XLARGE="0.76"
CC1_4XLARGE="1.60"
CG1_4XLARGE="2.10"

View file

@ -0,0 +1,15 @@
# 2011-05-25: Approximate Instance Cost Basis per hour from
# http://aws.amazon.com/ec2/instance-types/
# http://aws.amazon.com/ec2/pricing/
# for US - N. Virginia
m1_small="0.085"
m1_large="0.34"
m1_xlarge="0.68"
t1_micro="0.02"
m2_xlarge="0.50"
m2_2xlarge="1.00"
m2_4xlarge="2.00"
c1_medium="0.17"
c1_xlarge="0.68"
cc1_4xlarge="1.60"
cg1_4xlarge="2.10"

View file

@ -1,15 +0,0 @@
# 2011-05-25: Approximate Instance Cost Basis per hour from
# http://aws.amazon.com/ec2/instance-types/
# http://aws.amazon.com/ec2/pricing/
# for US - N. Virginia
M1_SMALL="0.085"
M1_LARGE="0.34"
M1_XLARGE="0.68"
T1_MICRO="0.02"
M2_XLARGE="0.50"
M2_2XLARGE="1.00"
M2_4XLARGE="2.00"
C1_MEDIUM="0.17"
C1_XLARGE="0.68"
CC1_4XLARGE="1.60"
CG1_4XLARGE="2.10"