Finally the help of IT is here

Blog de soluciones informaticas.

Como funcionan los CPU Credits en Amazon AWS

Posteado por Xavier Xaus Nadal on 19th agosto 2015

Los CPU Credits de Amazon AWS son los encargados de aumentar el rendimiento de CPU de una instancia t2 en caso de necesidad puntual, las instancias t2 también llamadas de performance burstable o de ráfaga disponen de un rendimiento definido fijo como el que podemos ver en la siguiente tabla y de una capacidad  temporal extra limitada por los CPU Credits definidos.

Esto significa que al contratar una instancia EC2 de tipo t2 aceptamos que no tenga un rendimiento fijo en el tiempo y que pueda variar según si los créditos de CPU han sido alcanzados o no para conseguir el 100% de rendimiento de CPU.

AWS CPUCredit_0

La instancia arranca con un balance de créditos de CPU suficiente para que el performance sea bueno, mientras la instancia este en modo idle (o sin llegar a usar su baseline performance) los CPU Credits se acumulan según la tabla anterior CPU Credits / Hour, hasta llegar a 24 horas, donde si no se han gastado no se seguirán acumulando.

En el caso que una instancia requiera de un nivel de CPU superior a su Baseline Performance en momentos puntuales (ráfagas) usará los créditos disponibles acumulados hasta terminarlos y seguirá con el rendimiento marcado en su baseline performance

No hay diferenciación de uso entre instancias Windows o Linux.

AWS CPU Credit

Los créditos de CPU pueden ser monitorizados gracias al servicio CloudWatch para detectar si necesitamos aumentar el tipo de instancia t2 y disponer de más créditos de CPU o ir pensando en pasar a una instancia de performance fijo como las instancias m3, c3, r3 …

Vamos a poner un ejemplo para que quede más claro.

Supongamos que tenemos una instancia t2.micro encendida usando un 10% de CPU continuo (Su máximo permitido), en este caso se van acumulando a razón de 6 Créditos de CPU cada hora. Transcurridas 2 horas dispondremos de 12 minutos completos (2 horas x 6 créditos) en los que podremos usar el 100% de performance de un core de CPU a máximo rendimiento, transcurridos estos 12 minutos el sistema bajará su performance hasta un 10% de la potencia del core de CPU que es el asignado en su baseline.

NOTA: El sistema operativo seguirá indicando que está al 100% de CPU si el proceso no ha finalizado, pero irá un 90% más lento que en los 12 minutos anteriores donde pudimos disfrutar de la máxima potencia del core físico asignado a la máquina virtual.

En el caso de una instancia t2.large dispondremos siempre de un 60% del core de CPU para nuestro uso y disfrute, en el caso puntual que necesitemos superar este rendimiento, el sistema cogerá de su reserva de CPU Crédits lo acumulado a razón de 36 créditos por hora el establecido en la primera imagen del artículo.

Si el uso de CPU de la instancia t2.large fuera inferior a un 60% de CPU durante 24 horas, dispondríamos de 14 horas o 864 minutos de uso del sistema al 100% de su capacidad de procesamiento (24 horas *36 créditos), transcurrido este tiempo volveríamos a disponer de un 60% de rendimiento del core.

Recordad que el performance interno del sistema operativo nunca mostrará el uso real de CPU de la instancia ya que el porcentaje de uso de CPU es relativo al uso de los CPU credits y del base performance de cada instancia.

Como sé que lo vais a preguntar os lo respondo ya directamente.

En el caso de las instancias t2 medium y large que disponen de 2 vCPU significa que tienen el doble de capacidad de proceso? Pues no. En el caso de t2 medium tiene como base un 40% de un núcleo disponible para un único proceso (1 vCPU) pero si utiliza multiproceso (2 vCPU) dispondrá de un 20% por cada proceso. en el caso de t2.large lo mismo pero con un 60% de una vCPU y de un 30% si es multiproceso.

Como es un tema bastante complicado de entender, os dejo el apartado de comentarios para que podáis opinar y presentar vuestras aportaciones que siempre son bienvenidas.

Un saludo MegaCracks.

Tags: , , ,
Posteado por Amazon AWS | No Comments »

Como cancelar tareas de importacion en Amazon AWS

Posteado por Xavier Xaus Nadal on 18th mayo 2014

Como hablamos en el artículo anterior podemos migrar entornos virtuales hacia Amazon AWS de una forma bastante sencilla, pero hay ocasiones en que la tarea de migración hacia AWS falla y se crean diferentes instancias en nuestro entorno Amazon EC2 que no podemos eliminar. El error que aparece al eliminar una instancia EC2 es parecido al siguiente.

Error terminating instances

 

Operation TerminateInstances is denied for the instance(s): i-0321dc43 (Instance is being used by VM Import task import-i-ffx1u0r0. No charges are incurred by stopped instances.)

Para cancelar tareas de importacion en Amazon AWS y no esperar al tiempo de expiración de la tarea (que habitualmente son 7 dias) deberemos acceder a la linea de comandos de nuestro cliente AWS y ejecutar varios comandos que os voy a explicar a continuación para parar las tareas de migración y poder terminar la instancia EC2 con normalidad.

Lo primero es conocer la region desde donde hemos realizado el trabajo de importacion o exportación, os recuerdo que con el comando ec2-describe-regions o el comando corto ec2dre podremos ver la siguiente lista y asegurar un poco más la nomenclatura de cada region

REGION  us-east-1       ec2.us-east-1.amazonaws.com
REGION  eu-west-1       ec2.eu-west-1.amazonaws.com
REGION  sa-east-1       ec2.sa-east-1.amazonaws.com
REGION  ap-northeast-1  ec2.ap-northeast-1.amazonaws.com
REGION  us-west-2       ec2.us-west-2.amazonaws.com
REGION  us-west-1       ec2.us-west-1.amazonaws.com
REGION  ap-southeast-1  ec2.ap-southeast-1.amazonaws.com

En nuestro caso la región donde tenemos los servidores de prueba que usamos para hacer la migración desde el entorno virtual con VMware es Irlanda y vamos a buscar allí si encontramos algun trabajo pendiente de finalizar para poder eliminar instancias EC2 bloqueadas por trabajos de importacion

Ejecutamos el comando ec2-describe-conversion-tasks o el nombre corto ec2-dct

C:\AWS\CLI\bin>ec2dct -region eu-west-1
TaskType        IMPORTINSTANCE  TaskId  import-i-fflbhk06       ExpirationTime
2014-05-24T18:09:03Z    Status  active  StatusMessage   Pending InstanceID
i-5d33ce1d
DISKIMAGE       DiskImageFormat VMDK    DiskImageSize   6436109312      VolumeSi
ze      30      AvailabilityZone        eu-west-1c      ApproximateBytesConverte
d       0       Status  active  StatusMessage   Pending : Downloaded 650117120
TaskType        IMPORTINSTANCE  TaskId  import-i-fh5aml6s       ExpirationTime
2014-05-24T19:22:39Z    Status  active  StatusMessage   Pending InstanceID
i-2e21dc6e
DISKIMAGE       DiskImageFormat VMDK    DiskImageSize   6436109312      VolumeSi
ze      30      AvailabilityZone        eu-west-1c      ApproximateBytesConverte
d       0       Status  active  StatusMessage   Pending : Downloaded 0
TaskType        IMPORTINSTANCE  TaskId  import-i-ffx1u0r0       ExpirationTime
2014-05-24T19:24:04Z    Status  active  StatusMessage   Pending InstanceID
i-0321dc43
DISKIMAGE       DiskImageFormat VMDK    DiskImageSize   6436109312      VolumeSi
ze      30      AvailabilityZone        eu-west-1c      ApproximateBytesConverte
d       0       Status  active  StatusMessage   Pending : Downloaded 0
TaskType        IMPORTINSTANCE  TaskId  import-i-fg2jd969       ExpirationTime
2014-05-24T19:27:35Z    Status  completed       InstanceID      i-5021dc10
DISKIMAGE       DiskImageFormat VMDK    DiskImageSize   6436109312      VolumeId
        vol-abba0bac    VolumeSize      30      AvailabilityZone        eu-west-
1c      ApproximateBytesConverted       6436102752      Status  completed

Podemos observar que tenemos multitud de tareas con estado active y el mensaje del estado es Pending (Esto quiere decir que está el trabajo colgado)

Ahora conociendo cual de estas tareas de migración queremos eliminar usamos el comando ec2-cancel-conversion-task o el nombre corto ec2cct y el nombre del TaskId juntamente con la región.

El comando se usa de la siguiente forma:

ec2cct –region <region> TaskID

 

Vamos a ver su resultado.

 

C:\AWS\CLI\bin>ec2cct -region eu-west-1 import-i-fflbhk06

CONVERSION-TASK import-i-fflbhk06

 

Si volvemos a comprobar el estado de las migraciones con ec2dct –region eu-west-1 podremos ver que el estado en lugar de active pone cancelling y al cabo del rato cancelled.

Hacemos el mismo procedimiento con todas las tareas de migración pendientes y ya podremos eliminar con tranquilidad las instancias EC2 pendientes.

Espero que os haya sido útil el artículo.

Saludos y hasta la próxima.

Tags: , , , ,
Posteado por Amazon AWS | No Comments »

Migrar servidor virtual hacia el Cloud con Amazon AWS

Posteado por Xavier Xaus Nadal on 17th mayo 2014

Realizar un converter de una máquina virtual de físico a virtual o de virtual a virtual es muy sencillo con Vmware Converter, ya hemos hablado de ello en otros artículos, pero ahora que muchos de vosotros estáis realizando el paso hacia el Cloud hemos de mostraros otras técnicas para poder migrar servidor virtual hacia el Cloud y viceversa, desde el Cloud hacia vuestros entornos on premise.

Pero no todos los sistemas operativos pueden ser migrados y deberemos cumplir unos prerequisitos que veremos en el siguiente enlace: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/VMImportPrerequisites.html

En este post vamos a mostraros como migrar un servidor ubicado en una infraestructura virtual (On premise) es decir en nuestra infraestructura hacia un entorno en la nube (El cloud que hemos escogido es Amazon ya que nos gusta bastante y a alguno teníamos que ir). Cuando tengamos mucha experiencia en Amazon veremos otras opciones como Azure o volveremos a entornos on premise y seguramente nos quedaremos con Amazon, pero todo se verá con el tiempo y el dinero dirá en definitiva qué entorno es el que podremos pagar y mantener (Que hay que pensar en todo, aires acondicionados, cpd, pintura, limpieza, luz…), el servidor que vamos a migrar estará en un entorno virtual basado en Vmware pero también sirve con Citrix o Microsoft Hyper-V.

Las bondades que actualmente tienen los entornos Cloud como Amazon son que se pagan por meses y por uso, si tienes un servidor apagado no pagas por él (Bueno,.. más o menos (hay que tener en cuenta las Elastic IP, discos EBS, snapshots en S3, VPC, ….) Ya os lo explicaré más adelante como funcionan estos productos o mientras vayáis preguntando con comentarios o mediante correos os iremos solventado vuestras dudas. Otra de las bondades de estos sistemas en Cloud es que son altamente escalables, si necesitamos más recursos únicamente ampliamos el servidor y ya está en minutos tenemos más CPU, más RAM, más disco, incluso discos SSD, o incluso más IOPS en un disco específico, si por ejemplo queremos montar un sistema de video en streaming o un juego para móvil (app) y no sabemos la cantidad de usuarios que vamos a tener en el sistema y no podemos preveerlo podremos usar métodos como Auto-Scaling que arrancará instancias EC2 (Servidores) de las mismas características que harán Load Balancing entre ellos y tendremos recursos ilimitados para proveer a nuestros clientes del servicio deseado, pero lo mejor de todo es que cuando los clientes dejen de usar la aplicación, juego, o dejen de visionar el partido de futbol en streaming estos servidores se irán apagando / eliminando y el coste del producto será únicamente el usado.

Pero dejemonos de tanto texto y vamos a lo que realmente hemos venido a hacer.

Sigue leyendo MegaCrack »

Tags: , , , , ,
Posteado por Amazon AWS | 1 Comment »

Como apagar y arrancar instancia EC2 en Amazon AWS

Posteado por Xavier Xaus Nadal on 14th enero 2014

Os vamos a mostrar como apagar una instancia EC2 de forma automática para conseguir un ahorro de costes en Amazon y como arrancar instancia EC2 en Amazon desde linea de comandos de Windows. De esta forma conseguimos liberar de costes los servidores que de noche no se estén usando.

El comando para apagar una instancia EC2 es el siguiente:

ec2-stop-instances <id_instancia> –region <region>

El comando para encender una instancia EC2 es el siguiente:

ec2-start-instances <id_instancia> –region <region>

Pero necesitamos hacer unas pequeñas configuraciones antes, para ello necesitamos disponer de un CLI de EC2.

1.- Descargar cliente EC2: http://aws.amazon.com/developertools/351

Ahora vamos a definir la variable de entorno JAVA_HOME con el siguiente proceso:

Pulsar sobre Inicio –> Botón derecho sobre Computer y pulsar sobre Propiedades

Pulsar sobre Configuración avanzada del sistema.

Pulsar sobre Variables de entorno

En el apartado Variables de sistema pulsar sobre Nueva.

Nombre del variable: JAVA_HOME

Valor de la variable: C:\Program Files\Java\jre7

Pulsar sobre Aceptar.

 

Sigue leyendo MegaCrack »

Tags: , , ,
Posteado por Amazon AWS | 2 Comments »