Joaquin Diez’s Weblog

Small notes…thoughts… etc..

Nuevos Planes de Precios de Amazon

Acabo de leer en el Twitter de Jeff Barr (Evangelista de Amazon AWS) que Amazon acaba de introducir nuevos planes de precios paara la reserva de Instancias con el Objetivo de ayudar a reducir costes a aquellos clientes, que mantienen una plataforma estable de instancias levantadas.

Aqui podeis ver en detalle el plan de precios http://aws.typepad.com/aws/2009/03/announcing-ec2-reserved-instances.html

Han definido 2 planes de precios, con reservas a 1 año y a 3 años, en los cuales pagas una tarifa inicial de reserva y luego pagas el coste por hora de maquina levantada en vez de a 0.1$ a 0.03$.

¿Cuanto ahorro supone esto?

Plan 1 año = 288,2$ anuales si la maquina esta levantada (24×7)

Plan 3 años= 446,5$ anuales si la maquina esta levantada (24×7)

Claramente merece la pena, si estimas tener levantadas N maquinas de forma estable..

Y ahora la mala noticia para los Europeos… de momento solo estara disponible este plan para las reservas echas en los CPD de USA, asi que los que deseamos tener las maquinas en Europa no podremos acceder a estos precios aun…es una pena que siempre nos dejen para el final.

De todas formas, este tipo de pasos que esta dando amazon me reafirman en la idea del uso de Cloud Computing sobre todo para empresas que estan empezando, como en Unience, y en una forma magnifica de controlar gasto en tu infraestructura.

Marzo 12, 2009 Publicado por Joaquin Diez | Cloud Computing, ec2 | , , , , , | 1 comentario

Amazon Ec2: Configurando Linux(Debian,Ubuntu)

PreCondicion: Tener JAVA_HOME configurado correctamente.

Una vez que te has dado de alta como usuario de Amazon WebServices y como usuarios de Amazon Ec2, llega el momento el configurar el entorno para poder hacer uso de sus APIS y comandos.

Amazon va continuamente actualizando sus APIS para ampliar funcionalidades, por lo que necesitaba algo que me permitiera estar siempre con la ultima version disponible en el sistemas.

EL siguiente script hace todo lo necesario para desde cero poder tener tu sistema listo para interactuar con los servicios de Amazon Ec2.


#!/bin/bash
sudo apt-get install ruby rubygems libopenssl-ruby debootstrap dpkg

RDIR=”`pwd`”
PREDIR=$RDIR/mydir
rm -d -f -r soft
mkdir soft
cd soft
wget http://s3.amazonaws.com/ec2-downloads/ec2-ami-tools.zip
wget http://s3.amazonaws.com/ec2-downloads/ec2-api-tools.zip
unzip ec2-ami-tools.zip
cd ec2-ami*
export EC2_AMITOOL_HOME=”`pwd`”
cd ..
unzip ec2-api-tools.zip
cd ec2-api*
export EC2_HOME=”`pwd`”
cd ..
cd ..
export EC2_CERT=$PREDIR/cert-MYCERTIFICADO-GENERADO-POR-AMAZON.pem
export EC2_PRIVATE_KEY=$PREDIR/pk-PRIVATE-KEY-GENERADA-POR-AMAZON.pem
export EC2_USER_ID=MI-NUMERO-DE-USUARIO

export PATH=$PATH:$EC2_HOME/bin:$EC2_AMITOOL_HOME/bin
export AWS_ACCESS_KEY=MY-ACCESS-KEY
export AWS_SECRET_KEY=MY-SECRET-KEY

export EC2_GSG_KEYPAIR=my-keypair
export UPLOAD_BUCKET_NAME=se-uploaf-bcket
export RUBYLIB=$RUBYLIB:/usr/lib/site_ruby/

guarda el código anterior en un fichero llamado por ejemplo config-ec2.sh y dale permisos de ejecucion con

chmod +x config-ec2.sh

luego:

source config-ec2.sh

una vez se ejecute si todo ha ido bien prueba a escribir el siguiente comando.

ec2-describe-images --all

si te aparece la lista de Amis disponibles.. enhorabuena ya puedes empezar a disfrutar de esta herramienta revolucionaria que es Amazon EC2

Agosto 31, 2008 Publicado por Joaquin Diez | desarrollo, ec2, linux, ruby | , , , , , | Aún no hay comentarios

Launching an EC2 image….

  1. Launch the ami selected .. in this case I am using and Fedora 8 base I have design for testing.. this image will be available for public use shortly.
    ec2-run-instances ami-62dc390b -k gsg-keypair When the command finish we get the instance-id Amazon assigned us
  2. Now we need to see the state of our instace for that we make
    ec2-describe-instance When executing this command we get something likeRESERVATION r-fdd13994 595199202159 default
    INSTANCE i-debf4eb7 ami-62dc390b ec2-67-202-32-41.compute-1.amazonaws.com domU-12-31-38-00-40-15.compute-1.internal
    running gsg-keypair 0 m1.small 2007-12-19T20:39:02+0000
    We are ready to connect with the instance.
  • Autorize Network Access
  • ec2-authorize default -p 22
    ec2-authorize default -p 80
    <Opening this ports we can now access it throw SSH and configure the machine as we need

  • Revoke Network Access
  • ec2-revoke default -p port

    We can find more information about this in http://developer.amazonwebservices.com/connect/entry.jspa?externalID=992&categoryID=87

    Diciembre 19, 2007 Publicado por Joaquin Diez | desarrollo, ec2 | | Aún no hay comentarios

    Problems with Ec2 tools and Ruby 1.8.6

    When you try to bundle and Ec2 image using the next command,

    ec2-bundle-image -i /mnt/image/$IMAGE_NAME -k $EC2_PRIVATE_KEY -c $EC2_CERT -u $AWS_ACCOUNT_NUMBER

    and you have just installed the last version of Ruby 1.8.6, is possible you get the next error:


    Creating bundle manifest...
    Error: private method `gsub' called for 51:Fixnum
    ec2-bundle-image failed.

    This error can be fixed in this way,

    go to the instalation of ruby in your system and open /usr/lib/ruby/1.8/rexml/text.rb

    This could have been fixed at the rcov side, but since it *did* used to work
    with rexml, I consider this a backwards-compatibility failure. The fix is
    trivial:

    --- rexml/text.rb.orig 2007-10-22 08:00:04.000000000 +0100
    +++ rexml/text.rb 2007-10-22 08:00:33.000000000 +0100
    @@ -286,7 +286,7 @@
    EREFERENCE = /&(?!#{Entity::NAME};)/
    # Escapes all possible entities
    def Text::normalize( input, doctype=nil, entity_filter=nil )
    - copy = input
    + copy = input.to_s
    # Doing it like this rather than in a loop improves the speed
    #copy = copy.gsub( EREFERENCE, '&' )
    copy = copy.gsub( "&", "&" )

    (Note that there are other places in this file which might benefit from a
    to_s as well)

    The second is almost certainly a bug in REXML: it’s a misnamed local
    variable.

    --- rexml/document.rb.orig 2007-10-22 08:02:36.000000000 +0100
    +++ rexml/document.rb 2007-10-22 08:03:01.000000000 +0100
    @@ -183,7 +183,7 @@
    output = Output.new( output, xml_decl.encoding )
    end
    formatter = if indent > -1
    - if transitive
    + if trans
    REXML::Formatters::Transitive.new( indent, ie_hack )
    else
    REXML::Formatters::Pretty.new( indent, ie_hack )

    Noviembre 29, 2007 Publicado por Joaquin Diez | desarrollo, ec2, linux, ruby | , , | Aún no hay comentarios