De la imagen de Docker a la nube en segundos
La infraestructura se ha complicada innecesariamente. Las soluciones tradicionales de implementación de contenedores como Kubernetes y ECS esencialmente lo dejan con contenedores que requieren su propio aprovisionamiento, escala y red mientras se ejecuta en un grupo de máquinas virtuales que también tienen su propio aprovisionamiento, escala y redes separados. Esta capa heredada de indirección ha surgido del hecho de que las máquinas virtuales han sido históricamente mucho más difícil de aprovisionar que los contenedores.
No más. Con las imágenes VMIFY VM se crean en segundos con un solo comando, lo que le permite eliminar esta indirección heredada, al mismo tiempo que hace que su infraestructura sea más simple, más confiable y más segura.
VMify toma sus imágenes de Docker y las compila en AWS mínimos, seguros y completamente horneados en segundos en segundos.
Todo lo que se necesita es un comando simple:
$ vmify hello-world

Luego puede integrar este AMI en su infraestructura existente como procesos de implementación de código utilizando CloudFormation y Terraform. O simplemente puede lanzar instancias basadas en él utilizando grupos de autoscalización de AWS, la API EC2 RunInStances o la consola AWS.
VMify compila su imagen Docker en una imagen de la máquina combinándola con VMify Nanoos, un sistema operativo Linux ultra minimal Linux. Esto permite que su imagen Docker se inicie directamente en el hardware virtual EC2.
VMify Nanoos consta de solo un kernel de Linux y un sistema init ultra minimal en memoria que pesa solo 1 MB. Todo lo que hace es cargar los controladores requeridos para la máquina actual, configurar un demonio ACPI para reaccionar para reiniciar y encender los eventos y habilitar la sincronización del reloj basada en NTP para evitar la deriva del reloj. Después de eso, pasa el control a la imagen de su contenedor cargándola desde una partición de disco de solo lectura y lanzando su punto de entrada y CMD en un entorno de chroot confinado.
No hay aprovisionamiento de tiempo de ejecución ni Docker Daemon a bordo, ya que la imagen ya está completamente respaldada. Las instancias inician al instante y se garantiza que serán 100% idénticas cada vez.
Todo el sistema tiene muchas menos partes móviles. Todo el acceso al disco es de solo lectura, asegurando que el volumen nunca se modifique. Las escrituras son manejadas por una superposición de TMPFS con una cantidad configurable de espacio de intercambio, que vive en un volumen efímero separado limpiado en cada arranque.
Para comenzar, todo lo nuevo que necesita es un usuario de IAM con la siguiente política:
{
"Version" : " 2012-10-17 " ,
"Statement" : [
{
"Sid" : " vmify " ,
"Effect" : " Allow " ,
"Action" : [
" ebs:StartSnapshot " ,
" ebs:PutSnapshotBlock " ,
" ebs:CompleteSnapshot " ,
" ec2:DescribeSnapshots " ,
" ec2:RegisterImage "
],
"Resource" : " * "
}
]
} Agregue las credenciales de los usuarios a una nueva sección [vmify] en ~/.aws/credentials (el mismo archivo utilizado por la AWS CLI)::
[vmify]
aws_access_key_id = AKIAXXXXXXXXXXXXXXXX
aws_secret_access_key = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxFinalmente, asegúrate de tener
VMify 0.0.2 Pre-release
From Docker Image to Cloud in Seconds
Usage:
vmify [args] image
AWS credentials are retrieved from the [vmify] profile in ~/.aws/credentials
Examples:
vmify nginx
vmify -d -r=us-east-1 -s:dev.hpet.max-user-freq=64 -s:vm.panic_on_oom=0 nginx:latest
Params:
image The Docker image to compile into an AMI
Args:
-q Quiet mode: only print AWS AMI id upon completion
-t Timings displayed in output
-d Debug output turned on during boot
-b reBoot instead of terminating upon entrypoint exit
-a=arch Arch for the image (x64 or arm64, default: current cpu arch)
-r=region Region in AWS to use (default: us-east-1)
-w=number sWap size (in GiB) to use, 0 to disable swap (default: 1)
-k=args Kernel arguments
-s:key=val Sysctl to set with this value
-h or -? Show this help message
VMify funciona con las siguientes regiones de AWS:
af-south-1 , AP ap-east-1 , ap-northeast-1 , ap-northeast-2 , ap-northeast-3 , ap-south-1 ,
ap-southeast-1 , ap-southeast-2 , ap-southeast-3 , ca-central-1 , eu-central-1 ,
eu-north-1 , eu-south-1 , eu-west-1 , eu-west-2 , eu-west-3 , me-south-1 , sa-east-1 ,
us-east-1 , us-east-2 , us-west-1 , us-west-2
Los AMI creados por VMify son compatibles con los siguientes tipos de instancias:
t3 , t3a , m6i , m5 , m5a , m5n , m5zn , c6i , c6a , c5 , c5a , c5n , r5 , r5b , r5a , r5n
t4g , m6g , c6g , c6gn , r6g