Azure Fundamentals 2da Sesion:
Servicios principales de Azure
Henry Garcia
Presales Engineer | Azure Sales Enablement
[Link]
Recursos de aprendizaje
LATAM PARTNER UNIVERSITY ([Link])
Learning and Development Services ([Link])
Microsoft Events Catalog
LATAM Partner One ([Link])
Exploración de los servicios de computo en
Azure
• Introducción a los servicios de Azure Compute
• Decisión de cuándo usar Azure Virtual Machines
• Decisión de cuándo usar Azure App Service
• Decisión de cuándo usar Azure Container Instances o
Azure Kubernetes Service
• Decisión de cuándo usar Azure Functions
• Decisión de cuándo usar Azure Virtual Desktop
Introducción a los servicios de computo en Azure
El computo en Azure son servicios de informática a petición para ejecutar aplicaciones basadas en
la nube. Se proporcionan recursos informáticos como discos, procesadores, memoria, redes y
sistemas operativos. Los recursos están disponibles a petición y normalmente pueden estar
disponibles en minutos o incluso en segundos. Solo se paga por los recursos que se usan y solo
durante el tiempo que se usan.
Azure admite una amplia gama de soluciones informáticas para el desarrollo y las pruebas, la
ejecución de aplicaciones y la ampliación del centro de datos. El servicio es compatible con Linux,
Windows Server, SQL Server, Oracle, IBM y SAP. Azure también tiene muchos servicios que pueden
ejecutar máquinas virtuales (VM). Cada servicio proporciona opciones distintas en función de los
requisitos. Algunos de los servicios más destacados son los siguientes:
- Azure Virtual Machines
- Azure Container Instances
- Azure App Service
- Azure Functions
Virtual Machines
Las máquinas virtuales son emulaciones de software de equipos
físicos. Incluyen un procesador virtual, memoria, almacenamiento y
recursos de red. Hospedan un sistema operativo, y se puede
instalar y ejecutar software, al igual que en un equipo físico. Al
utilizar un cliente de escritorio remoto, puede usar y controlar la
máquina virtual como si se estuviera sentado delante de ella.
Gracias a Azure Virtual Machines, puede crear y utilizar máquinas
virtuales en la nube. Virtual Machines proporciona infraestructura
como servicio (IaaS) y se puede usar de maneras diferentes.
Cuando necesite un control total sobre el entorno y el sistema
operativo, las máquinas virtuales son la opción idónea. Al igual que
sucede en un equipo físico, se puede personalizar todo el software
que se ejecuta en la máquina virtual. Esta capacidad resulta útil
cuando se ejecuta software personalizado o configuraciones de
hospedaje personalizadas.
Virtual Machine Scale Sets
Los conjuntos de escalado de máquinas virtuales son un
recurso de Azure Compute que puede usar para
implementar y administrar un conjunto de máquinas
virtuales idénticas. Con todas las máquinas virtuales
configuradas de la misma manera, los conjuntos de
escalado de máquinas virtuales están diseñados para
admitir el escalado automático verdadero. No es
necesario el aprovisionamiento previo de las máquinas
virtuales. Por este motivo, es más sencillo compilar
servicios a gran escala cuyo destino sean las cargas de
trabajo en contenedores, de macroproceso y macrodatos.
A medida que la demanda aumente, se pueden agregar
más instancias de máquina virtual. A medida que la
demanda disminuya, se pueden quitar más instancias de
máquina virtual. El proceso puede ser manual,
automatizado o una combinación de ambos.
Containers y Kubernetes
Container Instances y Azure Kubernetes Service son
recursos de Azure Compute que puede usar para
implementar contenedores y administrarlos. Los
contenedores son entornos de aplicación ligeros y
virtualizados. Están diseñados para crearse, escalarse
horizontalmente y detenerse dinámicamente de forma
rápida. Puede ejecutar varias instancias de una aplicación
en contenedores en un único equipo host.
App Service
Con Azure App Service puede compilar,
implementar y escalar de forma rápida aplicaciones
de API, móviles y web de nivel empresarial que se
pueden ejecutar en cualquier plataforma. Puede
satisfacer los exigentes requisitos de rendimiento,
escalabilidad, seguridad y cumplimiento mientras
usa una plataforma totalmente administrada para
realizar el mantenimiento de la infraestructura. App
Service es una oferta de plataforma como servicio
(PaaS)
Azure Functions
Functions es una opción ideal si le preocupa solo el código
que ejecuta el servicio y no la infraestructura o la
plataforma subyacente. Se usan normalmente cuando se
debe realizar un trabajo en respuesta a un evento (a
menudo a través de una solicitud REST), un temporizador
o un mensaje de otro servicio de Azure, y cuando ese
trabajo puede completarse rápidamente, en segundos o
en menos tiempo.
Decisión de cuándo usar Azure Virtual Machines
Gracias a Azure Virtual Machines, puede crear y utilizar máquinas virtuales en la nube. Estas
máquinas virtuales proporcionan una infraestructura como servicio (IaaS) en forma de un
servidor virtualizado y se pueden usar de muchas formas. Al igual que sucede en un equipo
físico, se puede personalizar todo el software que se ejecuta en la máquina virtual. Las
máquinas virtuales son una opción ideal cuando se necesita lo siguiente:
• Control total sobre el sistema operativo (SO).
• Capacidad de ejecutar software personalizado.
• Usar configuraciones de hospedaje personalizadas.
Decisión de cuándo usar Azure App Service
Con App Service, puede hospedar la mayoría de los estilos de servicio de aplicación más comunes,
como los siguientes:
• Aplicaciones web
• Aplicaciones de API
• Trabajos web
• Aplicaciones móviles
App Service controla la mayoría de las decisiones sobre la infraestructura que se tratan en el
hospedaje de aplicaciones accesibles desde la web:
• La implementación y administración se integran en la plataforma.
• Los puntos de conexión se pueden proteger.
• Los sitios se pueden escalar rápidamente para controlar cargas de tráfico elevado.
• El equilibrio de carga integrado y el administrador de tráfico proporcionan alta disponibilidad.
Decisión de cuándo usar Azure Container Instances o Azure Kubernetes
Service
Azure Container Instances ofrece la forma más rápida y sencilla de ejecutar un contenedor en
Azure, sin tener que administrar ninguna máquina virtual o adoptar ningún servicio adicional.
Es una oferta de plataforma como servicio (PaaS) que permite cargar los contenedores, que se
ejecutan automáticamente.
La tarea de automatizar y administrar una gran cantidad de contenedores (y de interactuar
con ellos) se conoce como orquestación. Azure Kubernetes Service es un servicio completo de
orquestación para contenedores con arquitecturas distribuidas y grandes volúmenes de
contenedores.
Decisión de cuándo usar Azure Functions
la informática tradicional factura para un bloque de tiempo, como el pago de una tarifa
mensual o anual, para el hospedaje de sitios web. Este método de facturación es práctico, pero
no siempre es rentable. Incluso si el sitio web de un cliente solo recibe una visita al día, este
sigue pagando por tenerlo disponible durante todo el día. Con la informática sin servidor, solo
se paga por el tiempo durante el que se ejecuta el código. Si no se produce ninguna ejecución
de función activa, no se cobra al cliente. Por ejemplo, si el código se ejecuta una vez al día
durante dos minutos, se le cobrará por una ejecución y por dos minutos de tiempo de
proceso.
Decisión de cuándo usar Azure Virtual Desktop
Supongamos se le ha pedido que reúna un nuevo equipo de desarrollo de trabajadores remotos.
Esta tarea normalmente requeriría la configuración de varios equipos PC nuevos con todas las
herramientas de desarrollo necesarias para el nuevo equipo. Después, tendría que enviarlos a los
desarrolladores correspondientes. El tiempo de adquisición, configuración y envío de cada uno de
estos equipos sería costoso. Además, los nuevos desarrolladores tienen sus propios dispositivos
informáticos que ejecutan una combinación de sistemas operativos Windows, Android y macOS.
Quiere encontrar una manera de acelerar el proceso de implementación para los trabajadores
remotos. También quiere mantener los costos de administración al mínimo. Teniendo esto en
cuenta, quiere ver cómo Azure Virtual Desktop puede ayudar a su organización.
Exploración de los servicios de red de Azure
• Aspectos básicos de Azure Virtual Network
• Configuración de Azure Virtual Network
• Aspectos básicos de Azure VPN Gateway
• Aspectos básicos de Azure ExpressRoute
Aspectos básicos de Azure Virtual Network
Las redes virtuales de Azure permiten a los recursos de Azure, como las máquinas virtuales, las
aplicaciones web y las bases de datos, comunicarse entre sí, con los usuarios de Internet y con los equipos
cliente en el entorno local. Se puede pensar en una red de Azure como en un conjunto de recursos que se
vincula a otros recursos de Azure.
Las redes virtuales de Azure proporcionan las importantes funcionalidades de red siguientes:
• Aislamiento y segmentación
• Comunicación con Internet
• Comunicación entre recursos de Azure
• Comunicación con los recursos locales
• Enrutamiento del tráfico de red
• Filtrado del tráfico de red
• Conexión de redes virtuales
Configuración de Azure Virtual Network
Aspectos básicos de Azure VPN Gateway
Una puerta de enlace de VPN es un tipo de puerta de enlace de red virtual. Las instancias de Azure
VPN Gateway se implementan en instancias de Azure Virtual Network y habilitan la conectividad
siguiente:
• Conectar los centros de datos locales a redes virtuales a través de una conexión de sitio a sitio.
• Conectar los dispositivos individuales a redes virtuales a través de una conexión de punto a sitio.
• Conectar las redes virtuales a otras redes virtuales a través de una conexión entre redes.
Aspectos básicos de Azure ExpressRoute
ExpressRoute le permite ampliar las redes locales a la nube de Microsoft mediante una conexión
privada con la ayuda de un proveedor de conectividad. Con ExpressRoute, puede establecer
conexiones con servicios en la nube de Microsoft, como Microsoft Azure y Microsoft 365.
La conectividad puede ser desde una red de
conectividad universal (IP VPN), una red
Ethernet de punto a punto o una conexión
cruzada virtual a través de un proveedor de
conectividad en una instalación de ubicación
compartida. Las conexiones de ExpressRoute
no pasan por la red pública de Internet. Esto
permite a las conexiones de ExpressRoute
ofrecer más confiabilidad, más velocidad,
latencia coherentes y mayor seguridad que las
conexiones normales a través de Internet. Para
información sobre cómo conectar la red a
Microsoft mediante ExpressRoute, consulte
ExpressRoute connectivity models (Modelos de
conectividad de ExpressRoute).
Exploración de los servicios de Azure
Storage
• Aspectos básicos de la cuenta de Azure Storage
• Aspectos básicos de Disk Storage
• Aspectos básicos de Azure Blob Storage
• Aspectos básicos de Azure Files
• Descripción de los niveles de acceso de blobs
Aspectos básicos de la cuenta de Azure Storage
Una cuenta de almacenamiento proporciona un espacio de nombres único para los datos de
Azure Storage, al que se puede acceder desde cualquier lugar del mundo a través de HTTP o
HTTPS. Los datos de esta cuenta son seguros, de alta disponibilidad, duraderos y escalables de
forma masiva.
Aspectos básicos de Disk Storage
Disk Storage proporciona discos para Azure Virtual
Machines. Las aplicaciones y otros servicios pueden
acceder a estos discos y usarlos cuando sea necesario,
igual que se haría en escenarios locales. Disk Storage
permite que los datos se almacenen de forma persistente
y que se acceda a ellos desde un disco duro virtual
conectado.
Aspectos básicos de Azure Blob Storage
Los blobs no están limitados a formatos de archivo
comunes. Un blob podría contener gigabytes de datos
binarios transmitidos desde un instrumento científico, un
mensaje cifrado para otra aplicación o datos en un
formato personalizado para una aplicación que se está
desarrollando. Una ventaja del almacenamiento en blobs
con respecto al almacenamiento en disco es que no
requiere que los desarrolladores piensen en discos o los
administren; los datos se cargan como blobs y Azure se
encarga de las necesidades de almacenamiento físico.
Aspectos básicos de Azure Files
Azure Files ofrece recursos compartidos de archivos
totalmente administrados en la nube a los que se puede
acceder mediante los protocolos del Bloque de mensajes
del servidor y Network File System (versión preliminar).
Los recursos compartidos de Azure se pueden montar
simultáneamente en implementaciones de Windows, Linux
y macOS en la nube o locales. Las aplicaciones que se
ejecutan en máquinas virtuales o servicios en la nube de
Azure pueden montar un recurso compartido de
almacenamiento de archivos para acceder a datos de
archivos, del mismo modo que una aplicación de escritorio
montaría un recurso compartido SMB normal. Cualquier
número de roles o máquinas virtuales de Azure puede
montar y acceder simultáneamente al recurso compartido
de almacenamiento de archivos. Los escenarios de uso
típicos serían el uso compartido de archivos en cualquier
lugar del mundo, los datos de diagnóstico o el uso
compartido de datos de aplicación.
Descripción de los niveles de acceso de blobs
Azure Storage ofrece diferentes niveles de acceso para el
almacenamiento de blobs, lo que le ayuda a almacenar
datos de objetos de la manera más rentable. Entre los
niveles de acceso disponibles se incluyen:
•Nivel de acceso frecuente: optimizado para almacenar
datos a los que se accede con frecuencia (por ejemplo,
imágenes para el sitio web).
•Nivel de acceso esporádico: optimizado para datos a los
que se accede con poca frecuencia y que se almacenan al
menos durante 30 días (por ejemplo, las facturas de los
clientes).
•Nivel de acceso de archivo: conveniente para datos a los
que raramente se accede y que se almacenan durante al
menos 180 días con requisitos de latencia flexibles (por
ejemplo, copias de seguridad a largo plazo).
Exploración de los servicios de análisis y
bases de datos de Azure
•Exploración de Azure Cosmos DB
•Exploración de Azure SQL Database
•Ejercicio: Creación de una base de datos SQL
•Exploración de Azure Database for MySQL
•Exploración de Azure Database for PostgreSQL
•Exploración de Azure SQL Managed Instance
•Exploración de análisis y macrodatos
Exploración de Azure Cosmos DB
Azure Cosmos DB es compatible con los datos sin
esquema, lo que le permite compilar aplicaciones "Always
On" con una gran capacidad de respuesta para admitir
datos en continuo cambio. Puede usar esta característica
para almacenar datos actualizados y mantenidos por
usuarios de todo el mundo.
Azure Cosmos DB es flexible. En el nivel más bajo, Azure
Cosmos DB almacena los datos en formato de secuencia
de registro de átomos (ARS). Después, los datos se
abstraen y se proyectan como una API, que se especifica al
crear la base de datos. Entre las opciones se incluyen SQL,
MongoDB, Cassandra, Tables y Gremlin. Este nivel de
flexibilidad implica que, al migrar las bases de datos de la
empresa a Azure Cosmos DB, los desarrolladores pueden
seguir con la API con la que se encuentren más cómodos.
Exploración de Azure SQL Database
Azure SQL Database es una base de datos relacional basada en la
última versión estable del motor de base de datos de
Microsoft SQL Server. SQL Database es una base de datos de alto
rendimiento, confiable, totalmente administrada y segura. Puede usarla
para compilar aplicaciones y sitios web controlados por datos en el
lenguaje de programación que prefiera sin necesidad de administrar
infraestructura.
Azure SQL Database es un motor de base de datos de plataforma como servicio (PaaS). Controla
la mayoría de las funciones de administración de bases de datos, como las actualizaciones, las
aplicaciones de revisiones, las copias de seguridad y la supervisión, sin intervención del usuario.
SQL Database proporciona disponibilidad del 99,99 %. Las capacidades de PaaS que están
integradas en SQL Database permiten centrarse en las actividades de administración y
optimización de bases de datos específicas del dominio que son críticas para el negocio. SQL
Database es un servicio totalmente administrado que ofrece alta disponibilidad, copias de
seguridad y otras operaciones de mantenimiento comunes. Microsoft controla todas las
actualizaciones del código del sistema operativo y SQL. No hace falta administrar la infraestructura
subyacente.
Puede migrar las bases de datos existentes de SQL Server
con un tiempo de inactividad mínimo mediante Azure
Database Migration Service. Microsoft Data Migration
Assistant puede generar informes de evaluación que
proporcionan recomendaciones para ayudarlo a través de
los cambios necesarios anteriores a la ejecución de una
migración. Después de evaluar y resolver cualquier
corrección necesaria, está listo para comenzar el proceso
de migración. Azure Database Migration Service realiza
todos los pasos necesarios. El usuario solo tiene que
cambiar la cadena de conexión en las aplicaciones.
Exploración de Azure Database for MySQL
Azure Database for MySQL es un servicio de bases de datos relacionales en la nube, y se basa en el
motor de base de datos de MySQL Community Edition, versiones 5.6, 5.7 y 8.0. Con él, tiene un
contrato de nivel de servicio de disponibilidad del 99,99 % de Azure, con la tecnología de una red
global de centros de recursos administrados por Microsoft. Esto ayuda a mantener la aplicación
ejecutándose de forma ininterrumpida. Con cada servidor de Azure Database for MySQL, se saca
provecho de las ventajas de la seguridad integrada, la tolerancia a errores y la protección de datos,
algo que de lo contrario tendría que adquirir o diseñar, compilar y administrar. Con Azure Database
for MySQL puede usar la restauración a un momento dado para recuperar un servidor a un estado
anterior, con un plazo máximo de 35 días.
Exploración de Azure Database for PostgreSQL
Azure Database for PostgreSQL está disponible en dos opciones de implementación: Servidor
único e Hiperescala (Citus).
Servidor único Hiperescala (Citus)
• La opción de implementación Un solo servidor La opción de Hiperescala (Citus) escala
ofrece: horizontalmente las consultas entre
• Alta disponibilidad integrada sin coste adicional varias máquinas mediante el
(contrato de nivel de servicio del 99,99 %). particionamiento. Su motor de
• Rendimiento predecible y precios de pago por consultas paraleliza las consultas SQL
uso inclusivos. entrantes en estos servidores para
• Escalado vertical según sea necesario, en cuestión agilizar las respuestas en conjuntos de
de segundos. datos grandes. Proporciona servicios a
• Supervisión y alertas para evaluar el servidor. las aplicaciones que requieren mayor
• Seguridad y cumplimiento de nivel empresarial. escala y mejor rendimiento, por lo
• Capacidad de protección de información general las cargas de trabajo que se
confidencial en reposo y en movimiento. aproximan a los 100 GB de datos (o
• Copias de seguridad automáticas y restauración a que ya los superan).
un momento dado durante un máximo de 35
días.
Exploración de Azure SQL Managed Instance
Azure SQL Managed Instance facilita la migración de los datos locales en SQL Server a la nube
con Azure Database Migration Service (DMS) o copias de seguridad y restauración nativas. Una
vez que haya descubierto todas las características que usa la empresa, deberá evaluar qué
instancias locales de SQL Server puede migrar a Azure SQL Managed Instance para ver si tiene
algún problema de bloqueo. Una vez resueltas las incidencias, puede migrar los datos y,
después, realizar la transferencia desde el servidor SQL Server local a la instancia de Azure
SQL Managed Instance cambiando la cadena de conexión en las aplicaciones.
Exploración de análisis y macrodatos
La forma y el formato de los datos son muy variados. Cuando hablamos sobre macrodatos, nos
referimos a grandes volúmenes de datos. En este escenario de Tailwind Traders, los datos se
recopilan de los sensores GPS, que incluyen información de ubicación, datos de los sistemas del
tiempo y muchos otros orígenes que generan grandes cantidades de datos. Con tal cantidad de
datos, es cada vez más difícil comprenderlos y tomar decisiones basándose en ellos. Estos
volúmenes son tan grandes que las formas de procesamiento y análisis tradicionales ya no son
adecuadas.
A lo largo del tiempo, se han desarrollado tecnologías de clúster de código abierto para tratar con
estos grandes conjuntos de datos. Microsoft Azure admite una amplia gama de tecnologías y
servicios para proporcionar soluciones de macrodatos y análisis, como Azure Synapse Analytics,
Azure HDInsight, Azure Databricks y Azure Data Lake Analytics.
Azure Synapse Analytics
Azure Synapse Analytics (anteriormente Azure SQL Data
Warehouse) es un servicio de análisis ilimitado que reúne
el almacenamiento de datos empresariales y el análisis de
macrodatos. Puede consultar los datos como prefiera
mediante recursos sin servidor o aprovisionados a escala.
Tiene una experiencia unificada para ingerir, preparar,
administrar y servir datos para las necesidades inmediatas
de inteligencia empresarial y aprendizaje automático.
Azure HDInsight
Azure HDInsight es un servicio de análisis de código
abierto totalmente administrado para empresas. Es un
servicio en la nube que hace que sea más fácil, rápido y
rentable procesar grandes cantidades de datos. Puede
ejecutar marcos de código abierto populares y crear tipos
de clúster, como Apache Spark, Apache Hadoop, Apache
Kafka, Apache HBase, Apache Storm y Machine Learning
Services. HDInsight también admite una amplia gama de
escenarios, como la extracción, la transformación y la
carga de datos (ETL), el almacenamiento de datos, el
aprendizaje automático e IoT.
Azure Databricks
Azure Databricks le ayuda a descubrir información de
todos los datos y a crear soluciones de inteligencia
artificial. Puede configurar el entorno de Apache Spark en
minutos y, después, escalar automáticamente y colaborar
en proyectos compartidos en un área de trabajo
interactiva. Azure Databricks admite Python, Scala, R, Java
y SQL, así como marcos y bibliotecas de ciencia de datos,
como TensorFlow, PyTorch y Scikit-learn.
Data Lake Analytics
Azure Data Lake Analytics es un servicio de trabajos de
análisis a petición que simplifica los macrodatos. En lugar
de implementar, configurar y ajustar el hardware, escribirá
consultas para transformar los datos y extraer ideas
valiosas. El servicio de análisis puede administrar trabajos
de cualquier escala al instante, simplemente estableciendo
el ajuste adecuado. Solo paga por su trabajo cuando se
está ejecutando, lo que hace que sea más rentable.