Mi material del DevDays 2016

Como lo prometido es deuda, comparto con ustedes lo presentado en el DevDays 2016

Presentación Azure Openess

Demo Script

#primer paso, crear grupo de recursos
azure group create AInterop "East US"
#crear cuenta de storage
azure storage account create demoperu0003
#plus, como crear un file share SMB 3.0
azure storage account connectionstring show demoperu0003

export AZURE_STORAGE_ACCOUNT=<account_name>
export AZURE_STORAGE_ACCESS_KEY=<key>
export AZURE_STORAGE_CONNECTION_STRING="<connection_string>"

azure storage share create sharedemo
azure storage directory create sharedemo prueba

#como automatizarlo en python
nano demo.py
#dentro de nano escribir
regiones = "East US"
grupo = "AInterop"
aplicacion = "demoperu00009"

from subprocess import call
call('azure storage account create '+aplicacion+' -l "'+regiones+'" -g "'+grupo+'"', shell=True)
#ctrl+x y luego Y
##########################
#containers, conectarse a la vm por ssh
ssh nomvm.cloudapp.net -l eladmin
#buscar repos
docker search debian
#correr un contenedor con debian
docker run -i -t debian /bin/bash
apt-get install zip
zip
exit
zip
#correr un contenedor con XAMPP
docker run -p 41061:22 -p 41062:80 -d -v ~/my_web_pages/my_testing_page1:/www tomsik68/xampp
#conectarse y modificar el index
ssh root@localhost -p 41061
cd /www
nano index.php



docker run -p 41072:22 -p 41078:80 -d -v ~/my_web_pages/my_testing_page1:/www tomsik68/xampp


 

Presentación de 0 a 100 en Azure ARM

Url usadas:

#Abrir la pagina de templates
https://github.com/Azure/azure-quickstart-templates/ 
#Navegar a la creacion de 2 vm con LB
https://github.com/Azure/azure-quickstart-templates/tree/master/201-2-vms-internal-load-balancer 

 

Exportando plantillas ARM de Grupos de Recursos

Con el nuevo modelo de Azure ARM podemos crear Grupos de Recursos y agrupar recursos de computo, redes y almacenamiento de forma que:

  • Se garantiza la granularidad de accesos a los grupos y componentes.
  • Se pueden asignar etiquetas a los recursos para facilitar la gestión.
  • Y lo más importante, se pueden aprovisionar recursos desde plantillas en JSON.
  • Hace unas semanas anunciamos la posibilidad de exportar plantillas desde un Grupo de Recursos a JSON de tal forma que la arquitectura pueda ser reutilizada.

Vamos manos a la obra:

Entramos a Azure y busquemos un grupo de recursos creado previamente y podremos ver que se ha habilitado una nueva opción ¨Export Template¨

Al hacer clic podremos ver que se generó, le damos clic en Download, y nos descargará un archivo Zip, luego podemos ir a http://armviz.io/ y vamos a darle clic en Open from file, a lo cual veremos que se generó automáticamente la arquitectura

Resultado final

 

Crear un Container en Docker con XAMPP

Hola Muertos vivientes, hoy les eseñaré como crear contenedores en Docker con XAMPP y luego publicar un sitio web en el. Comencemos, para este how-to necesitamos:

  • Una cuenta de Azure
  • Putty, Terminal o Bash

Como primer paso vamos a ir a Azure y crear Docker Ubuntu, simplemente ingresamos a https://portal.azure.com y los loqueamos, una vez ahi, vamos a dar clic en el botón marketplace

En el marketplace vamos a buscar Docker on Ubuntu Server y le damos clic

Seguimos el wizard y configuramos que el método de autenticación es Password y no SSH Key.

Ahora nos vamos al Terminal y escribimos:

ssh nomvm.cloudapp.net -l eladmin

Eso nos conectará vía SSH al servidor de Docker, ahora crearemos el contenedor:

docker run -p 41061:22 -p 41062:80 -d -v ~/my_web_pages/my_testing_page1:/www tomsik68/xampp

En donde el puerto 41061 apunta al puerto 22 para SSH y el puerto 41062 apunta al puerto 80 para HTTP, para validar que el contenedor se haya creado correctamente, podemos usar el siguiente comando:

docker ps

Y veremos que nuestro contenedor se lista. Ahora que ya tenemos el contenedor funcionando, vamos a conectarnos vía SSH al contenedor para comenzar a crear código:

ssh root@localhost -p 41061
cd /www
nano index.php

En el nano escribiremos un clásico Hola Mundo:

<?php

echo 'Hola Mundo ', $_GET['nombre'];

?>

Ahora vamos al portal de Azure nuevamente y creamos una regla de entrada en el Network Security Group de la maquina virtual:

Con eso deberíamos poder ingresar a nuestro sitio Web sin problemas!