miércoles, 25 de noviembre de 2020

Arquitectura del Big Data y Cloud Computing en Azure


Conversatorio: "Arquitectura del Big Data y Cloud Computing en Azure", tenemos como invitado a Victor Vargas Arce y los panelistas serán el Ing. José Andrés Fernández y la Ing. Maybbel Richards. Conversatorio organizado por la Comisión de Big Data

Actualización del tamaño del disco existente en google cloud con un Grupo de Instancias

 Talvez estés trabajando con un grupo de instancias de google cloud y necesites aumentar el tamaño del disco de tus instancias....

Si es tu caso te vas a dar cuenta que no se puede aumentar el tamaño del disco porque lo gestiona un grupo... en este blog te voy a dar una forma de hacerlo sencillo y rápido, para comenzar adjunto un arquitectura utilizada donde me sucedió el error:


Como pueden ver la arquitectura es bastante sencilla, tenemos la petición y la recibimos en nuestro DNS, en el record type A se tiene la ip estatica del Frontend y tiene un servicio de Backend https que apunta al grupo de instancias creado atreves de nuestra plantilla de instancias con linux.

Todo marchaba bien hasta que se nos lleno el disco... y se cayo la instancia... cuando intentas aumentar el disco del grupo de instancias sale inhabilitado:


A la instancia en este caso no se le puede hacer nada porque la gestiona un grupo se soluciona con varios pasos que resumo:

  • Crear una instantánea (snapshot) de nuestro disco:

  • Es importante mencionar que se tiene un grupo de instancias creado con una plantilla de instancias por lo que hay que hacer varios pasos extras.
  • Ahora se debe crear un Disco nuevo:

Se debe crear un nuevo disco: Compute> Compute Engine> Disks - nuevo disco, seleccione de la instantánea en el paso 1> a continuación, puede especificar el nuevo tamaño en GB.

  • Debemos crear una imagen con el disco creado:


  • En este paso agregamos la imagen creada en el punto anterior y aumentamos el tamaño que era lo que se buscábamos: (puse 10 gb porque así sale ustedes aumenten el tamaño)

  • Nota: hasta aquí creo que todos pueden llegar, luego sigue crear un grupo de instancias... si aun tienes la cuenta gratuita vas a tener un problema que solo puedes crear una instancia a la vez... entonces deberías de borrar la existente y crear la nueva mas grande...
    • Debemos crear una plantilla de instancia nueva con la imagen creada en el paso anterior
    Le damos a Change y seleccionamos la imagen creada anteriormente


    • Como ultimo paso procedemos a crear nuestro grupo de instancias nuevo con la nueva plantilla de instancias creado anteriormente
    • recordemos que la cuenta gratuita solo soporta una instancia:




    • Y listo tenemos nuestro grupo de instancias con mayor tamaño recordemos que si es la cuenta gratis solo puedes tener una instancia entonces debes especificarlo en la configuración o te dará un error de cuotas:




    Saludos a todos 

    sábado, 31 de agosto de 2019

    ¿Qué es BlockChain?






    ¿Qué es blockchain ?

    Es una Tecnología que permite realizar transacciones financieras entre dos participantes de manera segura, fiable e irreversible sin pasar por ningún intermediario 

    Es una estructura de datos en la que la información contenida se agrupa en conjuntos (bloques) a los que se les añade metainformaciones relativas a otro bloque de la cadena anterior en una línea temporal, de manera que gracias a técnicas criptográficas, la información contenida en un bloque solo puede ser cambiar o editada modificando todos los bloques posteriores. blockchain puede ejercer de base de datos pública no relacional que contenga un histórico irrefutable de información.

    Es permitido, gracias a la criptografía asimétrica y las funciones de resumen o hash, la implementación de un registro contable (ledger) distribuido que permite soportar y garantizar la seguridad de dinero digital. 

    La integridad de los datos es validada por cada participante de la red sin necesidad de recurrir a una entidad de confianza que centralice la información. Por ello se considera una tecnología en la que la "verdad" (estado confiable del sistema) es construida, alcanzada y fortalecida por los propios miembros. 

    La tecnología blockchain es especialmente adecuada para escenarios en los que se requiera almacenar de forma creciente datos ordenados en el tiempo, sin posibilidad de modificación ni revisión y cuya confianza pretenda ser distribuida en lugar de residir en una entidad certificadora. 









    ¿Qué es un bloque?

    Un bloque es donde se guardan las información de las transacciones hechas en la red de Bitcoin. Cada bloque contiene registro de alguna o todas las últimas transacciones y una referencia al bloque anterior. También contiene las respuestas a un complicado acertijo matemático donde las respuestas son únicas por bloque. Los nuevos bloques no se pueden agregar en la red (Blockchain) si no contienen la solución correcta, los mineros compiten para encontrar la respuesta para resolver el bloque





    Historia

    La idea detrás de la tecnología blockchain se describió en 1991, cuando los científicos de investigación Stuart Haber y W. Scott Stornetta introdujeron una solución computacionalmente práctica para los documentos digitales con sello de tiempo para que no pudieran ser modificados o manipulados.

    El sistema usó una cadena de bloques con seguridad criptográfica para almacenar los documentos con sello de tiempo y en 1992 se incorporaron al diseño los árboles Merkle, lo que lo hizo más eficiente al permitir que varios documentos se reunieran en un solo bloque. Sin embargo, esta tecnología no se utilizó y la patente caducó en 2004, cuatro años antes del inicio de Bitcoin.


    Prueba de Trabajo reutilizable

    En 2004, el informático y activista criptográfico Hal Finney (Harold Thomas Finney II) introdujo un sistema llamado RPoW, Reusable Proof Of Work (Prueba de Trabajo reutilizable). El sistema funcionó al recibir un token de prueba de trabajo no intercambiable o no fungible basado en Hashcash y, a cambio, creó un token firmado por RSA que luego podría transferirse de una persona a otra.

    RPoW resolvió el problema del doble gasto manteniendo la propiedad de los tokens registrados en un servidor confiable que fue diseñado para permitir a los usuarios de todo el mundo verificar su exactitud e integridad en tiempo real.

    RPoW se puede considerar como un prototipo temprano y un paso inicial importante en la historia de las criptomonedas.

    Resultado de imagen para Prueba de Trabajo reutilizable bitcoin

    Red Bitcoin

    A finales de 2008, una persona o un grupo con el seudónimo Satoshi Nakamoto publicó en una lista de correo de criptografía un libro blanco que introdujo un sistema de efectivo electrónico descentralizado entre pares (llamado Bitcoin).

    Basado en el algoritmo de Prueba de Trabajo de Hashcash, pero en lugar de utilizar una función de computación confiable de hardware como el RPoW, la doble protección contra gastos en Bitcoin fue proporcionada por un protocolo descentralizado de igual a igual para el seguimiento y la verificación de las transacciones. En resumen, los mineros individuales "minan" bitcoin para obtener una recompensa utilizando el mecanismo de prueba de trabajo y luego lo verifican los nodos descentralizados en la red.

    El 3 de enero de 2009, Bitcoin nació cuando el primer bloque de bitcoin fue minado por Satoshi Nakamoto, que tuvo una recompensa de 50 bitcoins. El primer receptor de Bitcoin fue Hal Finney, recibió 10 bitcoins de Satoshi Nakamoto en la primera transacción de bitcoin del mundo el 12 de enero de 2009.
    Resultado de imagen para Prueba de Trabajo reutilizable bitcoin

    martes, 9 de enero de 2018

    Configuración de Putty para utilizarlo con google Cloud

    ¿Qué es PuTTY y para qué sirve?

    como ya explique hay varia formas de trabajar con terminal en este caso vamos a utilizar para este servidor Putty en el  siguiente tutorial lo vamos a configurar y con esto vamos a administrar nuestro nuevo servidor 
    PuTTY es un cliente SSH y Telnet con el que podemos conectarnos a servidores remotos iniciando una sesión en ellos que nos permite ejecutar comandos. El ejemplo más claro es cuando empleamos PuTTY para ejecutar comandos en un servidor VPS y así poder instalar algún programa o configurar alguna parte del servidor.
    La parte de cliente Telnet es más desconocida para mi, pero el ejemplo más claro de uso es conectarse a nuestro router domestico para configurarlo a través de Telnet y abrir puertos, etc.
    Resumiendo, con PuTTY conseguimos abrir una sesión de línea de comandos en el servidor remoto para administrarlo.
    1-  Lo primero  que vamos a hacer es descargar nuestro putty para ello vamos al link
    le damos en saltar publicidad una vez adentro le damos en el link here
    nos abre la pagina de descarga seleccionamos la opción que mas nos sirve en mi caso es Windows de 64 bits (el MSI es el instalador de Windows)

    le damos en guardar archivo y lo ponemos donde queremos

    una vez descargado vamos a la carpeta de descarga y lo ejecutamos como administrador
    le damos en next
    seleccionamos donde lo queremos instalar en mi caso lo deje por defecto le damos en next
    aquí yo active la opción de crear icono en el escritorio no es obligatorio e instalamos
    una vez finalizado ya tendremos nuestro Putty instalado 

    Para continuar con la configuración debemos abrir el Putty gen que se instalo en nuestra computadora podemos buscar en la barra de navegación 
    lo abrimos 

    una vez abierto el PuttyGen se nos va a abrir un programa así el cual nos sirve para crear las llaves publicas y privadas que se necesitan para conectar el ssh las vamos a guardar en nuestra pc así como en los meta datos de nuestro servidor 
    para ello le damos en generate y movemos el mouse dentro del programa en el área blanca para que se cargue
    Nos va a generar algo así 

    Nota el espacio Key comment: es el usuario de ingreso si los dejan asi con ese nombre de usuario es el que van a ingresar pueden cambiar y poner lo que ustedes quieran (es recomendable es colocar el usuario que te aparece cuando conectas a la VM por el navegador)yo lo voy a hacer con esa.
    guardamos las llaves la publica y la privada en nuestra pc dando click en sve public key y en save private key y escogemos la ubicación deseada en mi caso en mis documentos claves ssh deben ponerle a la publica publica y a la privada privada porque se pone el mismo nombre y le cae encima 

    voy selecciono y copio la clave generada y la pego en los metadatos de nuestro servidor 
    para ello vamos a nuestra consola 

    vamos al menu y buscamos Compute Engine y buscamos la opción de metadatos
    una vez ahí le damos en la opción Claves SSH y nos abre esta ventana

    donde vamos a agregar nuevo elemento en el botón de abajo nos abre un input donde copiamos nuestra clave generada (La clave que genero el Puttygen en el "textarea") y automaticamente crea el usuario de ingreso que es lo que colocamos en nuestro (Key comment) a la hora de generar las claves

    Una agregada nuestra clave esta listo nuestro servidor ahora solo nos queda una configuración en nuestro putty para que nos guarde todo para ello nos vamos al Putty
    vamos al menu lateral buscamos la Opción SSH expandimos luego seleccionamos Auth  
    Una vez ahí buscamos nuestra clave privada (la que termina en .ppk que anteriormente guardamos, y generamos con el puttygen)que ya habíamos guardado en nuestra pc cuando la generamos con el puttygen
    una vez cargada nuestra llave privada solo nos vamos en el menu lateral a la opción Session osea a la primera opción
    nos vamos a nuestro panel del servidor y buscamos instancias de vm
    una vez ahi vamos a copiar nuestra ip externa para pegarla en nuestro Putty
    en el primer cuadro pegamos la ip externa del servidor 
    en la segunda le ponemos un nombre
    y la tercera es para guardar nuestra configuración si la guardamos con el nombre ya podemos cargarla las veces que queramos solo load y open 
    el ultimo es para abrir nuestra terminal ya configurada   
    abrimos con doble click o en open 
    nos va a decir loggin as: ves donde debemos colocar nuestro usuario lo que guardamos en key comment a la hora de generar las llaves en mi caso era (rsa-key-20180109) y listo estamos en nuestro servidor


    Nota: Si pusiste el nombre que aparece cuando te conectas a la VM por el navegador igual al del  "Key comment" podes conectarte "tuusuario@tuip" y no te pide el usuario cada vez que te conectas.


    Configuracion de GOOGLE CLOUD SDK

    Google Cloud SDK


    Una vez que se tiene una cuenta activa en Google Cloud, es posible administrar los recursos que ofrece la plataforma desde una terminal remota, para ello es necesario instalar Google Cloud SDK que contiene un conjunto de herramientas y librerías para gestionar la consola de Google Cloud SDK.


    1.- La instalación de Google Cloud SDK es sencilla, hay que descargar la última versión desde Pagina Oficial de Descarga


    2.- Una vez descargado el archivo ejecutable, hay que hacer clic o doble clic para iniciar la instalación, durante la instalación es probable que solicite descargar e instalar otras herramientas como Python para su correcto funcionamiento, para esto es necesario que el equipo tenga Internet.
    Ejecutamos como administrador el archivo descargado y se nos va a abrir el instalador

    le damos en siguiente aceptamos los términos en el check
    Aceptamos los términos y condiciones 
    seleccionamos todos los usuarios

    seleccionamos las carpeta donde lo deseamos instalar puede ser la ruta que ustedes quieran yo dejo la que esta...


    Lo dejamos así como se ve los primeros tres checks marcados y el ultimo sin marcar y le damos instalar 

    esperamos a que descargue algunas dependencias
    Al finalizar la instalación se muestra la siguiente ventana, donde se muestra que ya está instalado Google Cloud SDK Shell y Google App Engine Launcher, que es un acceso directo a aplicaciones en la nube.

    Al abrir el Google Cloud SDK Shell se muestra una consola de comando como se muestra en la siguiente imagen.
    Al escribir el comando gcloud se pueden ver los parámetros adicionales para realizar la conexión con la cuenta de Google Cloud.



    Arquitectura del Big Data y Cloud Computing en Azure

    Conversatorio: "Arquitectura del Big Data y Cloud Computing en Azure", tenemos como invitado a Victor Vargas Arce y los panelistas...