Professional Documents
Culture Documents
Microsoft Azure For Dummies 2020
Microsoft Azure For Dummies 2020
Azur ®
por TimothyWarner
Microsoft ® Azur ® Para Dummies ®
Publicado por: John Wiley & Sons, Inc., 111 River Street, Hoboken, Nueva Jersey 07030-5774, www.wiley.com
Copyright © 2020 por John Wiley & Sons, Inc., Hoboken, Nueva Jersey
Ninguna parte de esta publicación puede ser reproducida, almacenada en un sistema de recuperación o transmitida en cualquier
forma o por cualquier medio, electrónico, mecánico, fotocopiado, grabación, escaneo o de otro tipo, excepto según lo permitido por
las Secciones 107 o 108 de los Derechos de Autor de los Estados Unidos de 1976. Actuar, sin el permiso previo por escrito del Editor.
Las solicitudes de permiso al Editor deben dirigirse al Departamento de Permisos, John Wiley & Sons, Inc., 111 River Street, Hoboken,
NJ 07030, (201) 748-6011, fax (201) 748-6008, o en línea al http://www.wiley.com/go/permissions.
Marcas comerciales: Wiley, For Dummies, el logotipo de Dummies Man, Dummies.com, Making Everything Easier y la imagen comercial
relacionada son marcas comerciales o marcas comerciales registradas de John Wiley & Sons, Inc. y no pueden usarse sin permiso por escrito.
Microsoft y Azure son marcas comerciales registradas de Microsoft Corporation. Todas las demás marcas comerciales son propiedad de sus
respectivos dueños. John Wiley & Sons, Inc. no está asociado con ningún producto o proveedor mencionado en este libro.
LÍMITE DE RESPONSABILIDAD / RENUNCIA DE GARANTÍA: EL EDITOR Y EL AUTOR NO HACEN REPRESENTACIONES NI GARANTÍAS CON RESPECTO A LA
EXACTITUD O INTEGRIDAD DEL CONTENIDO DE ESTE DOCUMENTO Y ESPECÍFICAMENTE RENUNCIA DE GARANTÍAS, INCLUYENDO SIN LIMITACIÓN DE
GARANTÍA. NINGUNA GARANTÍA PUEDE SER CREADA O AMPLIADA POR VENTAS O MATERIALES PROMOCIONALES. LOS CONSEJOS Y ESTRATEGIAS
CONTENIDOS EN ESTE DOCUMENTO PUEDEN NO SER ADECUADOS PARA CADA SITUACIÓN. ESTA OBRA SE VENDE CON EL ENTENDIMIENTO DE QUE
EL EDITOR NO ESTÁ ENCARGADO DE PRESTAR SERVICIOS LEGALES, CONTABLES U OTROS SERVICIOS PROFESIONALES. SI SE REQUIERE ASISTENCIA
PROFESIONAL, SE DEBERÁN SOLICITAR LOS SERVICIOS DE UNA PERSONA PROFESIONAL COMPETENTE. NI EL EDITOR NI EL AUTOR SERÁN
RESPONSABLES DE LOS DAÑOS QUE SURJAN AQUÍ. EL HECHO DE QUE UNA ORGANIZACIÓN O SITIO WEB SE REFIERA EN ESTE TRABAJO COMO UNA
CITA Y / O UNA FUENTE POTENCIAL DE INFORMACIÓN ADICIONAL NO SIGNIFICA QUE EL AUTOR O EL EDITOR APRUEBA LA INFORMACIÓN QUE LA
ORGANIZACIÓN O EL SITIO WEB PUEDE PROPORCIONAR O RECOMENDACIONES QUE PUEDA HACER. ADEMÁS, LOS LECTORES DEBEN TENER EN
CUENTA QUE LOS SITIOS WEB DE INTERNET INCLUIDOS EN ESTE TRABAJO PUEDEN HABER CAMBIADO O DESAPARECER ENTRE CUANDO ESTE
TRABAJO FUE ESCRITO Y CUANDO SE LEE.
Para obtener información general sobre nuestros otros productos y servicios, comuníquese con nuestro Departamento de Atención al Cliente
dentro de los EE. UU. Al 877-762-2974, fuera de los EE. UU. Al 317-572-3993 o por fax al 317-572-4002. Para obtener soporte técnico, visite
https://hub.wiley.com/community/support/dummies.
Wiley publica en una variedad de formatos impresos y electrónicos y por impresión bajo demanda. Es posible que parte del material incluido
con las versiones impresas estándar de este libro no se incluya en los libros electrónicos o en la impresión bajo demanda. Si este libro hace
referencia a medios como un CD o DVD que no está incluido en la versión que compró, puede descargar este material en
http://booksupport.wiley.com. Para obtener más información sobre los productos Wiley, visite www.wiley.com.
10 9 8 7 6 5 4 3 2 1
Contenido de un vistazo
Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
CAPÍTULO 11: Administrar la identidad y el acceso con Azure Active Directory. . . . . . . . . . 229
CAPITULO 12: Implementación de Azure Governance. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
Tabla de contenido v
Presentamos las herramientas de administración de Azure. . . . . . . . . . . . . . . . . . . . . . .36
Portal de Azure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36
Azure PowerShell. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38 CLI
de Azure / Azure Cloud Shell. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .39
SDK de Azure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41
API ARM REST. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42
Azure. . . . . . . . . . . . . . . . . . . . . .. 122
Implementación de una instancia de contenedor de Azure . . . . . . . . . . . . . . . . . . . . .. 123
Verificación y eliminación del contenedor Almacenamiento de ejemplo . . . . . . . . . . . .. 124
imágenes en Azure Container Registry ........ . . . . . . . . . . . .. 126
Implementación de un registro de contenedores. . . . . . . . . . . . . . . . . . . . . . . . . . . .. 126
Enviar una imagen a un nuevo registro de contenedores. . . . . . . . . . . . . . .. 127
Extrayendo la imagen del repositorio a través de ACI. . . . . . . . . . . . . . . . . . . . . . .. 128
. Presentamos el servicio Azure Kubernetes. . . . . . . . . . . . . . . . . . . . . . . . .. 131
Arquitectura AKS. . . . . . . . . . . . . . . . . . . . . . . . . . . . Notas . . . . . . . . . . . .. 131
de administración de AKS. . . . . . . . . . . . . . . . . . . . . Uso de . . . . . . . . . . . .. 132
contenedores con Azure App Service. . . . . . . . . . . . . . . . . . . . . .. 133
CAPÍTULO 10: Realización de copias de seguridad y restauración de sus datos de Azure. . . . . . . 211
Tabla de contenido ix
CAPITULO 12: Implementación de Azure Governance. . . . . . . . . . . . . . . . . . . 251
Implementación de etiquetas taxonómicas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251
Aplicar etiquetas a recursos y grupos de recursos. . . . . . . . . . . . . .252 Generación de
informes mediante etiquetas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .257
Implementación de la política de Azure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .259
Estructura de definición de políticas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .259
Ciclo de vida de la póliza. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .261
ÍNDICE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . .. . 339
Tabla de contenido xi
Introducción
METRO vicios de Microsoft que se ejecutan en los centros de datos de Microsoft. Solo paga por los
recursos que utiliza durante el transcurso
icrosoft Azure es un serviciode
desu período
nube deelfacturación.
pública en que alquila servicios informáticos
Escribí este libro para brindarle una introducción suave pero completa a Microsoft Azure,
mostrándole cómo funciona y por qué puede querer usarlo para ahorrar dinero, tiempo,
esfuerzo y cordura a su empresa.
He trabajado con Azure durante varios años y tengo contacto regular con los miembros del equipo de
Azure en Microsoft, a quienes les resulta tan intensivo en tiempo y esfuerzo mantenerse al día con las
tecnologías como lo hacen los usuarios.
Por eso, escribí este libro con la intención de ayudarte con lo siguiente:
Introducción 1
» Sentirse cómodo con las herramientas y mantenerse actualizado: Puedes esperar el
Azure Portal para cambiar de manera que lo que ve en su pantalla no coincida con lo que
está en este libro. ¡Eso es de esperar! En la última sección del libro, "La parte de los diez",
le doy las habilidades para mantenerse actualizado por su cuenta y no sentirse
sorprendido cuando Azure se ve diferente hoy de como se veía ayer.
Incluyo muchas direcciones web, también llamadas URL, a lo largo de este libro. Si Microsoft cambia la
dirección de una página y el enlace que proporciono ya no funciona, ¡no se preocupe! Simplemente ejecute
una búsqueda en Google del título del artículo y encontrará la dirección de la página actualizada casi al
instante.
A lo largo de este libro, encontrará docenas de procedimientos paso a paso. Quiero que tenga
en cuenta los siguientes puntos a medida que los trabaja:
» Necesita una suscripción a Azure para seguir los pasos. Si no lo has hecho ya
hecho así, puede crear una cuenta gratuita de Azure ( https://azure.microsoft.
com / free) eso le da 30 días para gastar $ 200 USD en cualquier servicio de Azure. Esta
cuota debería ayudarlo a completar el material de este libro siempre que elimine sus
implementaciones cuando termine de usarlas.
» A menudo proporciono valores de muestra que funcionan en mi entorno, pero es posible que no funcionen.
en tus. Debe personalizar estos procedimientos para adaptarlos a sus necesidades.
Supongo que tiene una conexión a Internet; de lo contrario, no podrá acceder a Azure (a menos
que esté usando Azure Stack, pero ese es un tema de otro libro).
Por último, la mayoría de las herramientas de administración y desarrollo de Azure están disponibles
para Windows, macOS y Linux. (Usé una estación de trabajo con Windows 10).
Supuestos tontos
Escribí este libro pensando en varios tipos de lectores. Vea si puede ubicarse de manera
aproximada o exacta en cualquiera de las siguientes descripciones:
» Ya está utilizando Azure, pero desea completar sus lagunas de conocimientos o habilidades.
Si ha leído un Para Dummies libro antes, entonces probablemente esté familiarizado con los íconos. Si
no es así, o si quieres una descripción formal de cada uno, ¡sigue leyendo!
El icono Sugerencia marca sugerencias (¡obvio!) Y accesos directos que puede usar para facilitar el
trabajo con Azure.
Recuerde que los iconos marcan información especialmente importante. Para extraer la
información más importante de cada capítulo, hojee los párrafos que tienen estos íconos.
El icono de Material técnico marca información de naturaleza muy técnica que puede omitir.
El icono de advertencia le indica que tenga cuidado. Marca información importante que puede
ahorrarle dolores de cabeza.
Introducción 3
Más allá del libro
Más allá de lo que se incluye entre las portadas de este libro, he creado una hoja de referencia
que incluye consejos, trucos y accesos directos para los servicios de Azure que usa a lo largo del
libro. Puede encontrar la hoja de referencia y otra información relacionada con este libro (como
erratas) visitando https://www.dummies.com y escribiendo
Azure para tontos en el cuadro de búsqueda.
nube
» Introduciendo la nube
Capítulo 1
Presentamos Microsoft
Azur
W Estoy seguro de lo que ocurrió en su vida profesional o personal que lo llevó a leer
este libro, pero
¡Bienvenido a la me alegra queen
computación esté aquí conmigo.
la nube En este
y bienvenido capítulo,Azure!
a Microsoft
terminología básica, comenzando precisamente con las palabras de moda la nube y
cubrono soy
Al final de este capítulo, tendrá su propia suscripción de Azure ejecutándose en el nivel gratuito.
¿Estás emocionado? ¡Eso espero!
Mi hija Zoey, de 9 años, sabe qué es la nube. “Es donde se almacenan las aplicaciones de mi
iPad”, dice. "Si elimino una aplicación de mi iPad, puedo volver a descargarla desde la nube". No
puedo discutir con eso.
Mi madre de 75 años me dijo que, hasta donde ella sabe, la nube es "una parte de Internet
donde puedes guardar tus cosas". Suficientemente cierto.
¿Utiliza una empresa de alojamiento web para alojar su sitio web personal? ¿Dónde está el
servidor físico que alberga su sitio web?
Estos escenarios son ejemplos de computación en la nube, en los que simplemente alquila
recursos en la infraestructura de otra organización.
Los recursos que alquila constan de los siguientes componentes de hardware y software:
» Almacenamiento: Almacenamiento persistente significa que tiene un lugar en los servidores de Microsoft para
almacenar sus archivos y otros datos. Cuando guarda un archivo en un almacenamiento alojado en la nube
cuenta, el archivo debe permanecer en su lugar para siempre, o al menos hasta que lo mueva o
elimine.
» La red: Azure proporciona una infraestructura de red definida por software en la que
puede alojar sus máquinas virtuales y otros servicios de Azure. Porque el
la nube casi siempre implica una conexión a Internet, en línea y nube son esencialmente
sinónimos. Digo “casi siempre” porque una empresa puede crear una nube privada que
comparta la mayoría de los atributos de una nube pública pero que sea local para su
entorno de red privada. Microsoft también vende una versión portátil y privada de Azure
llamada Azure Stack.
Las empresas están interesadas en usar la nube porque les permite descargar una gran
cantidad de lo que les asusta, les molesta y / o les cuesta mantener un centro de datos local,
como los siguientes:
resultar caro.
Definición de NIST
El Instituto Nacional de Estándares y Tecnología (NIST, pronunciado nihst), un laboratorio de
investigación en los Estados Unidos, desarrolló la definición estándar de computación en la
nube. Según NIST, las cinco características esenciales de la computación en nube son
» En demanda auto servicio: Un cliente de la nube puede suministrar servicios en cualquier momento
y se le cobra solo por los recursos que consume.
» Amplio acceso a la red: Los servicios en la nube se ofrecen normalmente a nivel mundial, y el
Se anima al cliente a colocar los servicios tan geográficamente cerca de su consumo.
ers como sea posible.
» Puesta en común de recursos: Los servicios en la nube son multiarrendatario, lo que significa que diferente
los entornos de los clientes están aislados. Nunca, nunca deberías ver a otro
Datos del cliente de Azure y viceversa.
Si desea leer el material fuente, consulte la Publicación especial 800-145 del NIST,
La definición de NIST de Cloud Computing, que puedes descargar desde https: //
csrc.nist.gov/publications/detail/sp/800-145/final.
La rápida escalabilidad y elasticidad de la nube son capacidades que solo las empresas más
grandes del mundo pueden permitirse administrar por sí mismas. Microsoft Azure permite a las
empresas y a las personas más pequeñas replicar una base de datos SQL entre regiones
geográficas con un par de clics del mouse. (Consulte la Figura 1-1.) Hacer que la alta
disponibilidad sea accesible para los clientes es un beneficio enorme de la computación en la
nube.
FIGURA 1-1:
En Azure, puede crear
una base de datos
geográficamente
disponible con
solo un par de
clics.
• IBMCloud
• Oracle Cloud
• Fuerza de ventas
Economías de escala
El termino economías de escala significa que una empresa que compra sus recursos internos
en un volumen mayor puede transferir ahorros a sus clientes.
En el momento de redactar este documento, Microsoft tiene su cartera de productos Azure distribuida
en 54 regiones de todo el mundo. Dentro de cada región hay dos o más centros de datos físicos.
Dentro de cada centro de datos hay un número incalculable de racks de servidores, servidores blade,
matrices de almacenamiento, enrutadores, conmutadores, etc., una inmensa capacidad física. Creo
que podemos suponer razonablemente que Microsoft obtiene un descuento de los fabricantes de
equipos originales (OEM) porque compra un volumen tan grande. Los descuentos de compra de
Microsoft significan que la empresa, a su vez, extiende los ahorros a sus clientes de Azure. Es tan
simple como eso.
Nube pública
Microsoft Azure es una nube pública porque el público en general puede acceder a la
estructura de su centro de datos global. Microsoft se toma muy en serio la naturaleza
multiusuario de Azure; por lo tanto, agrega capa tras capa de seguridad física y lógica para
garantizar que los datos de cada cliente sean privados. De hecho, en muchos casos, incluso
Microsoft no tiene acceso a las claves de cifrado de datos de los clientes.
Otros importantes proveedores de servicios en la nube, incluidos AWS, GCP, Oracle e IBM (consulte la
barra lateral cercana "Otros proveedores de nube"), también se consideran plataformas de nube
pública.
Microsoft tiene tres nubes Azure separadas adicionales para uso gubernamental exclusivo. Por
lo tanto, la literatura de Microsoft contiene referencias a Azure Cloud, que se refiere a su nube
pública, y a Azure Government Cloud, que se refiere a sus nubes soberanas de acceso especial.
Ningún miembro del público en general puede acceder a Azure Government Cloud sin estar
asociado con un organismo gubernamental que lo emplee.
Nube privada
Como mencioné anteriormente, muy, muy pocas empresas tienen suficientes recursos financieros,
humanos y de capital para albergar sus propios entornos de nube. Por lo general, solo las
organizaciones empresariales más grandes pueden permitirse tener su propia infraestructura de
nube privada con centros de datos, almacenamiento, redes y computación redundantes, pero pueden
tener prohibiciones de seguridad contra el almacenamiento de datos en los centros de datos físicos de
Microsoft (o de cualquier otro proveedor de nube).
Microsoft vende una versión portátil de la nube de Azure: Azure Stack, que consiste en un rack
de servidores que una empresa alquila o compra a un proveedor de servicios o hardware
afiliado a Microsoft.
La idea es que pueda llevar los sellos distintivos de la computación en la nube (autoservicio a
pedido, agrupación de recursos, elasticidad, etc.) a su entorno local sin involucrar ni a Internet
ni a un proveedor de nube externo a menos que lo desee.
Nube híbrida
Cuando combina lo mejor de los entornos locales y en la nube, tiene una nube híbrida.
Observe la Figura 1-2. En esta topología, la red local se extiende a una red virtual que se ejecuta
en Azure. Aquí puede realizar todo tipo de gestión de servicios ingeniosa, incluida la
» Unir las máquinas virtuales (VM) de Azure a su dominio local de Active Directory.
» Administrar sus servidores locales mediante las herramientas de administración de Azure.
» Proporcionar recuperación ante desastres (DR) de conmutación por error casi instantánea mediante el uso de Azure como DR
sitio. La conmutación por error se refiere a tener una copia de seguridad replicada de sus servidores de producción
disponible en otro lugar para que pueda pasar de su entorno primario fallido a su entorno de copia de seguridad
en cuestión de minutos. La conmutación por error es fundamental para las empresas que no pueden permitirse el
tiempo de inactividad que implica la restauración de copias de seguridad desde un archivo de copia de seguridad.
FIGURA 1-2:
Una nube híbrida en
que la
En las instalaciones
corporativo
la red se extiende
a Azure.
» En el lado izquierdo hay una red comercial local que se conecta a Internet a través de una
puerta de enlace de red privada virtual (VPN).
» En el lado derecho (Azure) hay una implementación de tres máquinas virtuales en una red virtual. A
La VPN de sitio a sitio conecta el entorno local a la red virtual. Finalmente,
un equilibrador de carga de Azure distribuye el tráfico entrante por igual entre los tres servidores web
configurados de forma idéntica en la subred del nivel web. Como resultado, el personal interno de la
empresa puede acceder a la aplicación web basada en Azure a través de un túnel VPN seguro y
obtener una conexión de baja latencia, confiable y siempre activa para arrancar.
En este libro, me refiero a un entorno de red física local como un entorno local. En la
naturaleza, verá referencias extraviadas a "en las instalaciones", lamentablemente, incluso en la
documentación de Azure de Microsoft. No cometa este error. A premisa es una idea; local se
refiere a una ubicación.
En mi experiencia, solo las pequeñas empresas son lo suficientemente ágiles para hacer todo
su trabajo en la nube de Azure. Dicho esto, es posible que después de que su organización se
ponga en marcha con Azure y comience a apreciar su disponibilidad, rendimiento, escalabilidad
y posibilidades de seguridad, estará trabajando para migrar más infraestructura local a Azure, y
En primer lugar, dirija más aplicaciones de su línea de negocio (LOB) a la nube.
Considere una empresa que ejecuta una aplicación web local de tres niveles con VM. La organización
desea trasladar esta carga de trabajo de la aplicación a Azure para aprovechar los beneficios de la
computación en la nube. Dado que la organización siempre ha hecho negocios mediante el uso de
máquinas virtuales, asume que la carga de trabajo debe, por definición, ejecutarse en máquinas
virtuales en Azure.
No tan rapido. Supongamos que la carga de trabajo consistiera en una aplicación de pila de
Microsoft. Quizás la empresa debería considerar el uso de productos PaaS como Azure App
Service y Azure SQL Database para aprovechar la escala automática y la georreplicación de
botones.
Hablaré de Azure App Service y Azure SQL Database más adelante en la Parte 3. Por ahora,
comprenda que la georreplicación significa colocar copias sincronizadas de su servicio en otras
regiones geográficas para tolerancia a fallas y colocar esos servicios más cerca de sus usuarios.
Con PaaS, Microsoft asume mucha más responsabilidad por el entorno de alojamiento. No es
100 por ciento responsable de sus máquinas virtuales porque los productos PaaS le quitan
todos los gastos administrativos y de plomería.
La idea es que los productos PaaS le permitan centrarse en sus aplicaciones y, en última
instancia, en las personas que las utilizan. Si PaaS tiene una compensación, es que renunciar al
control de pila completa es un ajuste para muchos sistemas antiguos y administradores de red.
Para resumir la principal distinción entre IaaS y PaaS, IaaS le brinda un control total del
entorno, pero sacrifica la escalabilidad y la agilidad. PaaS le brinda total escalabilidad y agilidad,
pero sacrifica algo de control.
Sin duda, la literatura sobre computación en la nube contiene referencias a otros modelos de
implementación en la nube, como la nube comunitaria. También verá referencias a modelos de
entrega adicionales, como Almacenamiento como servicio (STaaS) e Identidad como servicio
(IDaaS). Este capítulo se centra en los modelos de implementación y entrega en la nube más
utilizados.
En gran parte, IaaS es donde el cliente aloja una o más VM en una nube. Los clientes siguen
siendo responsables del ciclo de vida completo de la máquina virtual, incluido
» Configuración
» Protección de Datos
» La optimización del rendimiento
» Seguridad
Al hospedar sus máquinas virtuales en Azure en lugar de en su entorno local, ahorra dinero
porque no tiene que aprovisionar los recursos físicos y lógicos localmente. Tampoco tiene que
pagar por las capas de redundancia geográfica, física y lógica incluidas en Azure de forma
inmediata.
La computación en la nube en general, y Microsoft Azure en particular, utilizan lo que se llama modelo
de responsabilidad compartida. En este modelo, la responsabilidad de Microsoft es proporcionar las
herramientas que necesita para que sus implementaciones en la nube sean exitosas: los centros de
datos de Microsoft, el servidor, el hardware de almacenamiento y redes, etc. Su responsabilidad es
utilizar esas herramientas para asegurar, optimizar y proteger sus implementaciones. Microsoft no
configurará, respaldará y protegerá sus máquinas virtuales automáticamente; esas tareas son su
responsabilidad.
Historia de Azure
En octubre de 2008, Microsoft anunció Windows Azure en su Conferencia de Desarrolladores
Profesionales. Mucha gente siente que este producto fue una respuesta directa a Amazon, que
ya había comenzado a presentar AWS al público en general.
El primer servicio alojado en Azure fue SQL Azure Relational Database, anunciado en marzo de
2009. Luego vino el soporte para sitios web PaaS y máquinas virtuales IaaS en junio de 2012. La
Figura 1-4 muestra cómo era el portal de Windows Azure durante ese tiempo.
No puedo exagerar lo importante que fue y es ese simple cambio de nombre. En la actualidad,
Microsoft Azure brinda soporte de primera clase para máquinas virtuales basadas en Linux y
aplicaciones y servicios web que no son de Microsoft, lo cual es un gran negocio.
La API de ARM se basa en la API de AWS (ya conoce la antigua expresión "La imitación es la
forma más sincera de adulación"), con conceptos arquitectónicos centrales como grupos de
recursos y controles de acceso basados en roles que eran análogos directos de las
características de AWS. nube.
Para brindar soporte a clientes antiguos con implementaciones antiguas, ARM aún ofrece soporte
limitado para implementaciones de ASM en Azure Portal (consulte el Capítulo 2). Estos recursos están
etiquetados con el sufijo Classic. Sin embargo, este libro está comprometido con la API ARM, por lo
que no abordaré los productos ASM IaaS.
Puede migrar sus máquinas físicas y virtuales locales a Azure, por supuesto, así como crear
imágenes de VM personalizadas. Llegaré a esos temas a tiempo; Prometo.
Productos PaaS
La cartera de productos de Azure está repleta de ofertas de PaaS potentes y económicas. A
continuación, se muestran algunos de los productos Azure PaaS más destacados:
» Servicio de aplicaciones: Aplicaciones web, aplicaciones móviles, aplicaciones API, aplicaciones lógicas y
Aplicaciones de función
» Bases de datos: Cosmos DB, Azure SQL Database, Azure Database for MySQL y
Azure Cache para Redis
Muchas personas sienten cierta inquietud por registrarse en un servicio de nube pública, incluso si se
promete que será gratuito, por razones como las siguientes:
Puedo abordar estas y otras preocupaciones perfectamente razonables, comenzando por explicar
cómo funcionan las suscripciones de Azure.
En su lugar, se detiene cualquier servicio en ejecución que tenga y, para reiniciar sus servicios,
debe convertir su cuenta de prueba manualmente en una cuenta PAYG u otra oferta de
suscripción en el portal de Azure.
» 750 horas de máquinas virtuales de uso general B1S que ejecutan Windows Server o Linux
» 5 GB de almacenamiento blob de nivel activo con redundancia local
Puede ver una lista completa de los servicios de nivel gratuito de Azure buscando la hoja Servicios gratuitos en
el portal de Azure o visitando la página de preguntas frecuentes de la cuenta gratuita de Azure en
https://azure.microsoft.com/en-us/free/free-account-faq.
"Blade" es el término que utiliza Microsoft para describir cualquier página web específica en
Azure Portal. Utilizo mucho la palabra en este libro y la verá todo el tiempo en la
documentación de Azure.
Además, varios servicios de Azure se ejecutan en un nivel siempre gratuito; tendrás que comprobar https://azure.micr
para más detalles. Sin embargo, recuerde que los servicios de nivel gratuito no están disponibles para
ejecutar cargas de trabajo de producción. El nivel existe para brindarle la oportunidad de probar Azure
para ver si se ajusta a sus necesidades profesionales o personales.
Pay-As-You-Go (PAYG para abreviar) es la oferta de suscripción estándar más común. Cada mes,
recibe una factura que indica los cargos por los recursos de Azure que consume fuera de los
servicios de nivel gratuito de Azure.
El Enterprise Agreement (EA) es un contrato de propósito especial destinado a empresas más grandes
que estén dispuestas a comprometerse con una suscripción de Azure por tres años. Microsoft ofrece a
los clientes de EA descuentos especiales en los servicios de Azure y les proporciona un portal de
administración especial para analizar los gastos, crear presupuestos, hacer un seguimiento del uso,
etc.
Con EA, usted paga su tarifa anual por adelantado y debe usarla o perderla. Si se compromete
con $ 12,000 durante el primer año y gasta solo $ 9,000 antes del 31 de diciembre, por ejemplo,
pierde los $ 3,000 restantes. Sin embargo, al final de cada año de contrato, puede ajustar su
tarifa para el próximo año para que coincida mejor con su uso y expectativas.
» Estudio visual: Dado a aquellos que tienen una suscripción a Visual Studio Online
» Paquete de acción: Entregado a los miembros de Microsoft Partner Network
» Azure para estudiantes: Un crédito gratuito ($ 100) durante 12 meses para estudiantes con
dirección de correo electrónico académica verificada
Le sugiero que realice este procedimiento (y todos los procedimientos de este libro) en una computadora de
escritorio o portátil en lugar de una tableta o teléfono inteligente. Microsoft hace que el portal de Azure sea lo
más compatible con dispositivos móviles posible, pero dada la cantidad de escritura que tendrá que escribir, le
recomiendo usar una computadora más grande.
Microsoft cambia el sitio web de Azure con regularidad, así que dudo en pedirle que busque en
un lugar en particular el enlace o un botón. En algún lugar de la página, encontrará el enlace o
botón para hacer clic.
3. En la sección Acerca de usted, proporcione sus datos de contacto y haga clic en Siguiente.
Microsoft necesita esta información para configurar su suscripción de Azure. También utiliza su
número de teléfono, dirección de correo electrónico y detalles de pago para verificar su identidad.
Tenga en cuenta que no puede utilizar una tarjeta de crédito prepaga ni una tarjeta de regalo; la tarjeta
debe ser una tarjeta de crédito o débito legítima con su nombre y facturada a su dirección. Microsoft no
cobrará a su cuenta a menos que actualice a una oferta de suscripción paga. Dicho esto, Microsoft puede
poner una retención de verificación de $ 1 en su cuenta de tarjeta de crédito; esta retención se levanta en
Solo puede tener una cuenta gratuita de Azure y Microsoft realiza la verificación de
identidad en parte para evitar el fraude.
6. En la página Está listo para comenzar con Azure que aparece, haga clic en Ir a
el portal.
Ahora debería ver el portal de Azure, junto con un mensaje de bienvenida a Microsoft Azure,
como se muestra en la Figura 1-6.
FIGURA 1-6:
Iniciar sesión en
Azure Portal para
la primera vez.
Haga clic en Iniciar recorrido para dar una vuelta por Azure Portal. En el fondo de la Figura 1-6,
verá el Centro de inicio rápido; puede volver a esta hoja en cualquier momento escribiendo centro
de inicio rápido en el cuadro de búsqueda en la barra de navegación superior. El Centro de
inicio rápido contiene enlaces a la documentación y a Microsoft Learn, el portal educativo
gratuito de Azure de Microsoft.
metadatos.
• MI: El botón Administrar lo lleva al Centro de cuentas de Azure, donde puede imprimir
facturas de servicios anteriores, establecer alertas de facturación y cambiar la cuenta.
que posee la suscripción.
hora. Al momento de escribir este artículo, Microsoft cobra $ 1,000 por mes por este plan de soporte.
» Plan Premier: Este nivel de soporte está dirigido a empresas que no solo desean
soporte técnico ultrarrápido, pero también orientación arquitectónica de Microsoft
Expertos en soluciones Azure. Debe comunicarse con Microsoft para obtener una cotización del precio del plan
Premier.
A menos que tenga un EA con Microsoft, puede cancelar su suscripción a Azure en cualquier
momento. Sin embargo, tenga en cuenta que debe eliminar todos sus recursos antes de que
Microsoft le permita cancelar la suscripción.
Capítulo 2
ExplorandoAzure
Administrador de recursos
I aEn
loseste
servicios de back-end
capítulo, que
les doy un componen
vistazo detrás la
denube pública
la cortina de Microsoft
proverbial Azure.
mientras presento
A primera vista, es posible que las próximas discusiones sobre las API REST sean un poco
(quizás más que un poco) desarrolladas y fuera de su zona de confort profesional. ¡Quédate
conmigo, por favor! Sostengo que cualquier profesional de Azure, independientemente de su
especialización, debe tener un conocimiento sólido de la arquitectura de Azure Resource
Manager; después de todo, subyace a todos los servicios basados en Azure.
"¿Qué es una API REST, Tim?" preguntas con razón. Respondo esa pregunta a continuación.
La transferencia de estado representacional (REST) es una metodología de desarrollo de software que define
cómo las API basadas en web pueden comunicarse mediante el protocolo de transferencia de hipertexto
(HTTP).
HTTP tiene cinco métodos principales (también llamados operaciones o verbos) que puede realizar una
llamada a la API REST:
Cuatro de los métodos HTTP mencionados anteriormente se ocupan de las cuatro operaciones de datos
principales en la tecnología de la información: crear, leer, actualizar y eliminar. Debido a que en TI nos gustan
los juegos de palabras y el humor juvenil, llamamos a estas operaciones CRUD para abreviar.
Oye, en este punto no te atasques con los verbos HTTP. Los describo aquí solo para darte un
contexto más completo.
Ahora relacionaré estas cosas de la API REST con Microsoft Azure. La API REST de ARM define
fundamentalmente los productos y servicios de Azure y especifica cómo puede usarlos dentro
de sus suscripciones.
Cada artefacto individual que implemente en Azure representa un recurso. Por lo tanto, las máquinas virtuales
(VM), las aplicaciones web, las bases de datos, las cuentas de almacenamiento y las bóvedas de claves se
definen en la API ARM REST como tipos de recursos discretos.
Proveedores de recursos
En la definición de la API ARM REST, un proveedor de recursos es un servicio que ofrece un producto
de Azure específico. El espacio de nombres del proveedor de recursos de Azure está organizado
jerárquicamente.
/ subscriptions / 2fbf906e-1101-4bc0-b64f-adc44e462fff /
resourceGroups / twtech / proveedores / Microsoft.Storage /
storageAccounts / tlwstor270
En primer lugar, observe las barras diagonales y la forma en que la ruta de recursos se asemeja a un
Identificador uniforme de recursos (URI). Eso es intencional porque todas las API REST están basadas
en la web y usan HTTP o HTTPS URI exclusivamente. Puede leer el ID de recurso de la cuenta de
almacenamiento de izquierda a derecha para recorrer el espacio de nombres de la API ARM REST:
» suscripciones: El nodo debajo de la barra oblicua (/), que es la raíz de nivel superior del
Jerarquía ARM REST API.
Si ha trabajado con API REST, es posible que desee utilizar un producto de terceros como
Postman ( https://www.getpostman.com) para interactuar con la API ARM REST. Si no lo ha
hecho, apunte su navegador a https://resources.azure.com, inicie sesión con su cuenta de
propietario de suscripción y explore la API ARM REST y sus recursos de suscripción de Azure
gráficamente. La Figura 2-1 muestra la interfaz.
Como mencioné anteriormente, tengo una cuenta de almacenamiento llamada tlwstor270 ubicada en un
grupo de recursos llamado twtech. A continuación, se explica cómo "recorrer el árbol" mediante el Explorador
de recursos de Azure:
referencias a los verbos HTTP en la parte superior de la pantalla: OBTENER, PONER, PUBLICAR,
y ELIMINAR.
Aunque Azure Resource Explorer lo pone en modo de solo lectura de forma predeterminada, observe
el botón Solo lectura en la parte superior de la interfaz. Si tiene suficientes privilegios, podría ir más
allá de lo simple OBTENER solicitudes y realizar PONER s, CORREO arena ELIMINAR s en sus
recursos de Azure, ¡así que tenga cuidado!
JSON
Las API RESTful usan JSON (normalmente pronunciado jay-sahn) formato de datos para codificar todos los
datos de solicitud y respuesta, lo que ciertamente es cierto en ARM.
Si es un profesional de Azure, le recomiendo que utilice Visual Studio Code como editor de
texto.
Los elementos JSON consisten en una lista separada por comas de pares clave / valor. Consulte este
fragmento de JSON de la cuenta de almacenamiento de Azure que mencioné anteriormente. Preste
atención a cuánto puede aprender sobre este recurso viendo una pequeña cantidad de código. No se
preocupe por entenderlo todavía, ¡recién está comenzando!
"sku": {
"nombre": "Standard_LRS",
"tier": "Estándar"
},
"kind": "StorageV2",
"id": "/ subscriptions / 2fbf906e-1101 / resourceGroups / twtech /
proveedores / Microsoft.Storage /
storageAccounts / tlwstor270 ",
"nombre": "tlwstor270",
"type": "Microsoft.Storage/storageAccounts",
"ubicación": "northcentralus",
Todas las implementaciones en Azure se registran en formato JSON. Estas plantillas ARM, como
se las conoce, facilitan la creación de entornos Azure fiables y repetibles.
En Azure Portal en la Figura 2-2, por ejemplo, puede ver la confiable cuenta de almacenamiento
tlwstor270 que creé en mi entorno de prueba. Luego selecciono la configuración Exportar plantilla y
hago clic en Descargar para capturar la definición de la plantilla ARM de la cuenta de almacenamiento.
Puede ver este proceso en acción en la Figura 2-2.
No puedo exagerar lo importante que es sentirse cómodo con JSON en general y las plantillas
ARM en particular. La buena noticia es que a lo largo de este libro, obtendrá mucha experiencia
práctica con ambos.
Los ámbitos de herencia y multicapa funcionan de la misma manera en Azure. Todos sus
grupos de recursos están incluidos en una suscripción de Azure y puede acumular una o más
suscripciones en un grupo de administración. Estos ámbitos de gestión (consulte la Figura 2-3)
simplifican la concesión de políticas de gobernanza y asignaciones de autorización de control
de acceso basadas en roles a sus recursos y, en última instancia, a sus usuarios.
FIGURA 2-3:
Azur
administración
ámbitos.
Suponga que un administrador debe asegurarse de que las máquinas virtuales implementadas
por otros administradores de Azure se produzcan solo en las regiones corporativas autorizadas.
Pero voy a complicar este escenario diciendo que las VM de la organización están distribuidas
en 44 grupos de recursos en 6 suscripciones. ¡Guau! Incluso con la herencia, los gastos
generales de gestión aquí serían significativos.
Pero la situación no es tan mala como parece al principio. El administrador crea un único grupo
de administración que incluye las seis suscripciones corporativas. Luego, crea una única política
de Azure que define la regla de implementación de recursos y asocia la política con el grupo de
administración. La política de Azure fluye por herencia a través de sus suscripciones adjuntas y
grupos de recursos a las máquinas virtuales existentes y futuras, que es una administración
poderosa y eficiente.
Esta red mundial (por así decirlo) de centros de datos de Azure significa que puede colocar sus
recursos en la nube geográficamente cerca de sus clientes, brindándoles así conexiones de baja
latencia y alto rendimiento a sus aplicaciones. En el momento de escribir este artículo,
Microsoft tiene 54 regiones repartidas en 140 países. Cada región consta de uno o más centros
de datos físicos discretos con interconectividad de red redundante de alta velocidad.
Zonas de disponibilidad
Cuando hospeda servicios orientados al cliente en Azure, la alta disponibilidad debe ser lo más
importante en su mente. ¿Qué planes tiene si ocurre una falla en el centro de datos de su
región local?
FIGURA 2-4:
Proporcionando alto
disponibilidad para
réplicas de máquinas virtuales por
colocándolos en
zonas de disponibilidad.
Geografias
Microsoft organiza sus regiones en geografías para respaldar el cumplimiento corporativo y los
requisitos de residencia de datos.
Regiones especiales
Azure se denomina servicio de nube pública porque la mayoría de sus regiones y servicios están
disponibles para su compra por parte del público en general. Dicho esto, Microsoft aloja regiones
especiales llamadas nubes gubernamentales o nubes soberanas para uso exclusivo de organismos
gubernamentales particulares en todo el mundo (consulte el Capítulo 1).
En mi carrera, puedo contar con las dos manos el número de empleados de Microsoft que he
conocido que han visitado un centro de datos de Azure. La guía práctica es que debe colocar sus
recursos de Azure en las regiones físicamente más cercanas a sus clientes. Además, para lograr
una alta disponibilidad y llegar a diferentes audiencias, puede alojar recursos de forma
redundante en varias regiones.
Si desea obtener más información, consulte el video del director técnico de Azure,
Mark Russinovich, sobre seguridad operativa en https://azure.microsoft.com/
es-es / resources / videos / build-2019-inside-azure-data
centro-arquitectura-con-mark-russinovich.
Las regiones de Azure Government son inaccesibles (invisibles) para los empleados no gubernamentales. En el
momento de redactar este documento, Microsoft mantiene regiones, zonas de disponibilidad y centros de
datos independientes para los gobiernos de Estados Unidos, China y Alemania.
Regiones emparejadas
Anteriormente en este capítulo, mencioné que puede colocar copias redundantes de sus servicios de
Azure en más de una región para la redundancia de conmutación por error. Cuando lo haga, primero
debe determinar la región emparejada designada por Microsoft para garantizar una latencia mínima.
Microsoft crea conectividad de red de alta velocidad adicional entre regiones emparejadas, lo
que asegura a los clientes que sus implementaciones multirregionales no sufrirán una latencia
indebida.
Disponibilidad de funciones
Los equipos de productos de Azure implementan gradualmente nuevas características en el mapa de la región, por lo
que es posible que algunos productos no estén disponibles en este momento en su región de origen.
Por esta razón, es importante estar atento a los Productos disponibles por
Página de la región en https://azure.microsoft.com/en-us/global-infrastructure/
servicios/. La misma guía se aplica a las regiones de Azure Government. La mayoría de las
veces, encuentro que las nuevas características comienzan su ciclo de vida en la nube pública
de Azure y solo mucho más tarde llegan a las nubes soberanas.
Es hora de familiarizarse con las herramientas de administración de Azure más comunes. Todos
los procedimientos paso a paso que describo en este libro asumen que está trabajando en una
estación de trabajo con Windows 10, pero puede realizar casi todas las tareas de este libro en
un sistema macOS o Linux.
Portal de Azure
El portal de Azure ( https://portal.azure.com) es una aplicación web receptiva que forma la
plataforma de administración gráfica básica en Azure. La figura 2-5 muestra el portal de Azure.
» Encabezado de página (A): La barra de navegación superior a veces se llama navegación global
porque estos controles están disponibles en todas partes del portal de Azure. Abre el
Menú de favoritos.
» Búsqueda global (B): Busque cualquier recurso de Azure. Los resultados de la búsqueda incluyen
enlaces de documentación.
» Cloud Shell (C): Abra Azure Cloud Shell para ejecutar la línea de comandos de Azure
trabaja.
» Hoja de configuración (I): Espada se refiere a las pantallas de detalle en las que
su trabajo de Azure. La barra de desplazamiento horizontal le ayuda a moverse de un lado a otro.
Siga estos pasos para instalar los módulos Az en su estación de trabajo con Windows 10:
La - ErrorAction SilentlyContinue bit suprime cualquier error o falla que pueda ocurrir
durante la descarga del archivo de ayuda. Por una variedad de razones, debería esperar ver
un error ocasional al ejecutar Actualización-Ayuda. ( Alguien del equipo de PowerShell
puede haber olvidado crear un artículo de ayuda para un comando, por ejemplo).
Connect-AzAccount
Deberá seguir los pasos antes mencionados cada vez que desee administrar Azure con PowerShell. Sin
embargo, puede automatizar el inicio de sesión de Azure PowerShell mediante una cuenta especial de
Azure Active Directory denominada entidad de servicio. Para obtener más información, consulte el
artículo de la documentación de Azure "Crear una entidad de servicio de Azure con
Azure PowerShell ”en https://docs.microsoft.com/en-us/powershell/azure/
create-azure-service-principal-azureps? view = azps-3.2.0.
En este libro, trabajará con la CLI de Azure desde Azure Cloud Shell. Cloud Shell es un entorno
de línea de comandos basado en navegador que le brinda acceso a PowerShell, la CLI de Azure
y un montón de otras herramientas administrativas y de desarrollo.
Siga estos pasos para comenzar a familiarizarse con Azure Cloud Shell y la CLI de Azure:
Haga clic en Mostrar configuración avanzada si desea utilizar una cuenta de almacenamiento existente o
Debe especificar si desea comenzar con Bash o PowerShell. Te sugiero que vayas con
PowerShell.
Puede iniciar su sesión de Cloud Shell desde una sesión de PowerShell o una sesión de
bash shell. Estos pasos se encuentran en el entorno de PowerShell.
designada.
Tenga paciencia la primera vez que inicie el entorno interactivo de la CLI de Azure.
Normalmente se tarda un minuto o más en inicializar por completo.
A medida que escribe, preste atención a los siguientes comportamientos en la CLI de Azure, que creo que
escribe.
• La CLI de Azure proporciona salida JSON de forma predeterminada, pero en este caso, especifique el formato
tabular en su lugar. Entonces corre az configure para especificar tabla u otra predeterminada
Cloud Shell es tan rápido porque Microsoft coloca los contenedores Docker en su red global de
entrega de contenido. Azure usa la dirección IP y la geolocalización de su cliente para
conectarlo al contenedor de Cloud Shell más cercano, que ofrece la conexión más rápida.
SDK de Azure
Como se discutió anteriormente en este capítulo, una API REST es una interfaz basada en HTTP
que permite que dos sistemas de software se comuniquen, y Azure Portal, PowerShell y la CLI
de Azure son formas de resumen ( ocultar los detalles de) la API ARM REST subyacente.
Para los desarrolladores de software, los kits de desarrollo de software (SDK) representan otra capa de
abstracción de API. En el momento de escribir este artículo, en realidad, los SDK de Azure están disponibles
para los siguientes marcos y lenguajes de programación:
» Androide » PHP
» Ir » Pitón
» iOS » Rubí
» Java » Rápido
». NETO » Ventanas
» Node.js » Xamarin
Un SDK de Azure proporciona las plantillas de proyecto y las bibliotecas de código que necesita para
interactuar con los servicios de Azure. En este libro, uso Visual Studio 2019 para trabajar con los SDK de Azure.
Como se muestra en la Figura 2-6, todo lo que tiene que hacer es habilitar la carga de trabajo de desarrollo de
Azure; Visual Studio se encarga del resto de la configuración.
Si es nuevo en Visual Studio, es posible que desee obtener instrucciones más detalladas sobre cómo modificar
las cargas de trabajo instaladas. Consulte el artículo de documentación de Microsoft "Modificar
Visual Studio ”en https://docs.microsoft.com/en-us/visualstudio/install/
modificar-visual-studio? view = vs-2019.
Por cierto, si estás pensando, “Oye, no soy un desarrollador; ¡No quiero pagar por Visual Studio!
" espera un segundo. Microsoft hace Visual Studio 2019 Community Edition de forma gratuita
para pruebas y desarrollo. Están disponibles las versiones de Windows y macOS.
Estudio visual
2019.
API DE APOYABRAZOS
Puede llegar al "metal básico" de la API ARM REST si lo desea. La figura 2-7 muestra el
Explorador de recursos de Azure ( https://resources.azure.com), una interfaz basada en
navegador para la API ARM REST.
» MI: Realice operaciones de la API REST de ARM utilizando los verbos HTTPS OBTENER, PONER, PUBLICAR,
y ELIMINAR.
Como muchas personas, incluidas las personas de la comunidad de código abierto, suelen decir: "Un
gran poder conlleva una gran responsabilidad".
Quizás se pregunte cuándo y por qué necesitaría interactuar con Azure en el nivel básico de la
API REST. Sin embargo, este tipo de interacción es más común de lo que cree. Tal vez esté
solucionando problemas de comportamiento de los recursos y no pueda alcanzar el control que
necesita en Azure Portal u otra capa de abstracción. O quizás esté escribiendo su propia API y
necesite saber cómo estructurar las llamadas a la API ARM REST para su propio uso.
Capítulo 3
Gestión de almacenamiento
inAzure
S nube. Independientemente del tipo de carga de trabajo que esté ejecutando (máquinas virtuales,
torage de
servicio es aplicaciones,
un ejemplofunciones,
de un servicio
almacenamiento de objetos persistentes.
prácticamente
aprendizaje automáticouniversal en es
o lo que sea), Microsoft
probable Azure
que necesite
Al final de este capítulo, tendrá un conocimiento sólido de la cuenta de almacenamiento de Azure: qué
es, cómo funciona, cómo implementarla y cómo almacenar y recuperar diferentes tipos de datos.
son objetos de almacenamiento de archivos que pueden tener cualquier formato y contenido en particular.
Aunque el término gota abarcó la palabra grande, un objeto blob es un archivo de cualquier tamaño, ya sea
un archivo de texto de 1 KB o un archivo de disco duro virtual de 120 GB.
Datos semiestructurados
Datos semiestructurados no tiene la disposición columna-fila que tienen los datos relacionales, pero
no es tan libre como los datos binarios no estructurados puros. El servicio de tabla en la cuenta de
almacenamiento de Azure está semiestructurado en forma de pares de datos clave / valor.
Las bases de datos NoSQL son un ejemplo de datos semiestructurados. Como explico en el Capítulo 9, Cosmos
DB es el principal producto de base de datos NoSQL de Azure.
Datos estructurados
Si ha trabajado con cualquier sistema de base de datos relacional, comprende datos estructurados -
datos que se descomponen en una o más tablas en las que cada columna está vinculada por un tipo
de datos en particular.
Hasta ahora, he explicado que una cuenta de almacenamiento de Azure almacena datos no estructurados y
semiestructurados. Pero, ¿qué pasa con los datos estructurados?
Los ejemplos de bases de datos estructuradas en el ecosistema de Azure incluyen Azure SQL
Database y Azure Database for MySQL Servers.
En este punto, comprende que un servicio de blob de cuentas de almacenamiento de Azure para datos
no estructurados y un servicio de tablas para datos semiestructurados. Pero debe tener en cuenta dos
servicios de cuenta de almacenamiento adicionales:
» Archivo: Crea el bloque de mensajes del servidor (SMB) y el sistema de archivos de red (NFS) -
recursos compartidos de archivos compatibles y accede a ellos desde dentro o fuera de Azure.
Antes de crear su primera cuenta de almacenamiento, debe comprender algunos datos clave.
Primero, debe determinar qué tipo de cuenta de almacenamiento necesita. Estas son sus
opciones:
» V2 de uso general: A menos que tenga una razón convincente para elegir
de lo contrario, debe elegir este tipo con mayor frecuencia porque es el más completo
opción destacada. Incluye los cuatro servicios de cuentas de almacenamiento: blob, tabla,
cola y archivo.
» V1 de uso general: Esta opción existe principalmente para admitir Azure clásico.
implementaciones y tiene menos funciones que v2.
» Almacenamiento de blobs: Esta cuenta de almacenamiento solo admite el servicio BLOB. De acuerdo
tiempo, necesitaba este tipo para especificar niveles de acceso, pero ahora no es necesario
elija este tipo de cuenta de almacenamiento para nuevas implementaciones.
El hecho de que desee pagar dinero extra por una cuenta de almacenamiento más rápida depende de los
datos que planea almacenar. Si planea colocar los datos de la base de datos y los archivos de registro en una
cuenta de almacenamiento, probablemente necesite el rendimiento sólido y predecible del almacenamiento
premium. Para la mayoría de los demás datos, el nivel de rendimiento estándar debería estar bien.
» Almacenamiento con redundancia de zona (ZRS): Las tres copias de la cuenta de almacenamiento se distribuyen
entre los diferentes centros de datos de su región de origen.
» Almacenamiento georedundante con acceso de lectura (RA-GRS): Esta opción es GRS, pero
obtenga acceso de solo lectura al contenido de su cuenta de almacenamiento secundaria.
El almacenamiento de Azure proporciona alta disponibilidad, lo que significa que sus datos son duraderos y no son
susceptibles de pérdida o eliminación. Sin embargo, aún debe realizar una copia de seguridad de los datos de su
cuenta de almacenamiento. Microsoft no hace eso por ti. El hecho de que las cuentas de almacenamiento de Azure
tengan una alta disponibilidad no significa que sean altamente recuperables de forma predeterminada.
Decidí no hablar sobre los precios de los recursos de Azure porque ese tema está más allá del alcance
del libro y porque los precios pueden cambiar incluso más a menudo que los productos.
hacer. Para obtener información sobre precios, visite https://azure.microsoft.com/en-us/pricing.
La Tabla 3-1 resume la protección que ofrece cada opción de replicación de cuentas de
almacenamiento.
Cuando sepa qué tipo de cuenta de almacenamiento necesita, puede crear una nueva cuenta
de almacenamiento en Azure Portal. Ir https://portal.azure.com, inicie sesión con su cuenta
de propietario de suscripción y luego siga estos pasos:
4. Complete los siguientes detalles de la instancia (consulte la Figura 3-1) y haga clic en Siguiente.
continuar.
FIGURA 3-1:
Creando un
propósito general
cuenta de almacenamiento.
• Nombre de la cuenta de almacenamiento: Este nombre debe ser único a nivel mundial
y contener solo letras y números en minúscula. La longitud máxima es
24 caracteres.
• Localización: Coloque la cuenta de almacenamiento más cercana a los usuarios que necesitan sus
recursos.
redundancia local (LRS) es una buena opción de inicio. Siempre puedes cambiar
(Nivel caliente) o con poca frecuencia (nivel frío). Hablo más sobre los niveles más adelante en este
capítulo.
FIGURA 3-2:
Configurando
almacenamiento avanzado
opciones de cuenta.
• Se requiere transferencia segura: Deje esta opción configurada en Habilitada para asegurarse de
que usa HTTPS encriptado, no HTTP sin encriptar, para acceder a su almacenamiento
datos de la cuenta.
• Permitir acceso desde: Deje esta opción configurada en Todas las redes. Opcionalmente, puede
utilizar puntos finales de servicio para integrar una cuenta de almacenamiento en una red virtual.
• Espacio de nombres jerárquico: Deje esta opción configurada como Desactivada. (Hablo de Azure
Data Lake Storage en el Capítulo 4.)
No se asuste si los procedimientos que proporciono no coinciden con lo que ve en Azure Portal.
La razón es simple: Microsoft está continuamente jugando con el portal, actualizando la interfaz
de usuario y agregando o modificando servicios y configuraciones. Lo importante es
comprender lo que está configurando.
FIGURA 3-3:
Viendo un
Microsoft Azure
despliegue.
» Abra el menú Notificación (A) para comprobar el estado de los datos actuales y recientes.
despliegues.
» El botón Volver a implementar (C) es útil si falla una implementación; puedes arreglar los errores
en la plantilla ARM y retomar la implementación donde la dejó. Esto
importante característica ARM se llama idempotencia.
» Este es un libro para principiantes, y los otros tres servicios están destinados a una mayor
audiencia avanzada.
» El servicio de blob es el servicio de cuentas de almacenamiento de Azure que se usa con más frecuencia.
Ir https://azure.microsoft.com/en-us/features/storage-explorer ( o
buscar Explorador de Azure Storage en su motor de búsqueda favorito), descargue el programa
e instálelo en su computadora. Siga estos pasos para configurar el Explorador de Storage:
Si el cuadro de diálogo no aparece la primera vez que inicia el Explorador de Storage, haga clic
en el botón Agregar cuenta en la barra lateral del Explorador de Storage. (El icono del botón
parece un enchufe eléctrico).
Administro varias suscripciones, por lo que me gusta concentrarme solo en la (s) con la que
estoy trabajando.
» Haga clic en el botón Explorador (A) para explorar su (s) cuenta (s) de almacenamiento.
» Haga clic en el botón Administrar cuentas (B) para filtrar las suscripciones que Storage
Explorer se muestra en la vista Explorer.
» Haga clic en el botón Agregar cuenta (C) para iniciar sesión con más de un Azure AD.
cuenta simultáneamente.
» Expanda las cuentas de almacenamiento de uso general para ver sus servicios (D). La
la navegación funciona como una aplicación cliente de Protocolo de transferencia de archivos.
» Ver las propiedades de la selección actual (E). De forma predeterminada, las cuentas de almacenamiento
utilice los siguientes puntos finales públicos para cada servicio:
» Cada servicio tiene su propia barra de herramientas (F). La barra de herramientas del servicio BLOB que se muestra en
La Figura 3-4 se utiliza para contenedores y cargas / descargas de archivos, mientras que
La barra de herramientas del servicio de tabla se utiliza para la importación / exportación de datos y las consultas.
» Este panel (G) le brinda una interacción granular con su cuenta de almacenamiento.
» El panel Actividades (H) muestra mensajes de error, advertencia e información de
Explorador de almacenamiento.
Explorador.
Storage Explorer también está disponible en Azure Portal. Busque su cuenta de almacenamiento y seleccione
la configuración del Explorador de almacenamiento.
Subiendo blobs
Ahora es el momento de crear un contenedor de blobs y cargar algunos archivos en Azure. Sigue estos
pasos:
1. Expanda su cuenta de almacenamiento, haga clic con el botón derecho en el nodo Blob Container y
elija Crear contenedor de blobs en el menú contextual.
haga clic en su nuevo contenedor y luego haga clic en Cargar en la barra de herramientas. A continuación,
FIGURA 3-5:
Intente hacer clic derecho
todo en
Almacenamiento de Azure
Esta sección vuelve a Azure Portal para que pueda modificar el nivel de acceso de un objeto de blob.
En primer lugar, es instructivo comprender cómo valora Microsoft las cuentas de almacenamiento de
nivel estándar. Se le cobra por
Dependiendo del esquema de precios, puede tener sentido que cambie el nivel de acceso para
blobs que tienen diferentes escenarios de uso. Tiene tres opciones de niveles:
» Nivel caliente: Optimizado para datos a los que se accede con frecuencia. Obtienes un descuento en
precio de transacción.
» Nivel fresco: Optimizado para que los datos a los que se accede con poca frecuencia se almacenen durante al menos
30 dias. Obtienes un descuento en la huella de almacenamiento.
» Nivel de archivo: Optimizado para datos a los que se accede con poca frecuencia (180 días o más). Obtienes un
descuento tanto en la huella de almacenamiento como en los costos de transacción.
Para modificar el nivel de acceso de uno de los blobs que cargó en el contenedor de blobs de
archivos, siga estos pasos:
2. Busque el contenedor de archivos, seleccione uno de sus blobs y haga clic en Cambiar
Nivel de la barra de herramientas.
Cuando selecciona un blob, Azure le muestra todos los metadatos del blob.
Los blobs archivados son inaccesibles a menos que los saque del nivel de Archivo. Este es un
proceso que Microsoft llama "rehidratación". Para rehidratar un blob archivado, repita estos
pasos, pero elija Frío o Caliente como nuevo nivel de acceso del blob.
almacenamiento de Azure.
Servicio de archivos
Considero que el servicio Azure Files es una especie de navaja suiza que tiene numerosos casos
de uso. Por un lado, almacena el entorno de la carpeta de inicio de Cloud Shell en un recurso
compartido de archivos. Para comenzar con Cloud Shell, siga estos pasos:
No dude en reutilizar su cuenta de almacenamiento existente. Cree un recurso compartido de archivos con un
nombre intuitivo, como unidad en la nube. ( Nota: No se permiten espacios en los nombres de archivos
compartidos).
7. En la barra de herramientas de Cloud Shell, haga clic en el botón Cargar / Descargar archivos y
elija Administrar archivos compartidos en la lista desplegable.
Haga clic en el botón Cargar (consulte la Figura 3-7) para cargar archivos de script, páginas web y otros
artefactos del proyecto y luego acceder a ellos desde cualquier lugar del mundo a través de Cloud Shell.
FIGURA 3-7:
Nube Azure
Shell y tu
nube personal
Cuota.
Servicio de mesa
Servicio de cola
Si no es un desarrollador de software, el concepto de cola de mensajes puede parecerle
extraño. La idea es que si ha separado su aplicación en servicios modulares (los llamados microservicios
arquitectura de software), necesita un mecanismo que permita a estos servicios enviar y recibir
datos de mensajes de forma asincrónica.
» La combinación de VHD con otros randomblobs hizo que la organización fuera más difícil.
» Un administrador podría eliminar fácilmente los discos de VM por accidente mientras limpia
contenedores de almacenamiento de blobs.
» Las cuentas de almacenamiento tienen una tasa de solicitud fija de 20.000 operaciones de entrada / salida
por segundo. Si coloca demasiados VHD en una sola cuenta de almacenamiento, su VM
el rendimiento está paralizado.
Con Managed Disks, Microsoft almacena y mantiene su sistema operativo VM y sus discos de
datos. Puede hacer lo que quiera con sus VHD, pero no tiene que lidiar con los dolores de
cabeza relacionados con el almacenamiento basado en cuentas.
Para ilustrar cómo trabajar con Managed Disks, siga estos pasos para usar Azure Cloud Shell y la CLI
de Azure para crear un grupo de recursos y una máquina virtual. No se preocupe por los detalles de la
VM aquí; En este libro, en el Capítulo 5, profundizo en el cuidado y la alimentación de la VM.
2. Use la interfaz de línea de comandos (CLI) de Azure para crear un nuevo recurso
grupo.
No tienes que usar el mismo nombre y región que yo. Ser creativo. No se preocupe
por el costo, porque está configurando este entorno solo para practicar. Cuando
termine de usarlo, puede eliminarlo. Aquí está el código:
Correr az configure para cambiar los valores predeterminados de la CLI de Azure, incluida la especificación de la tabla
como formato de salida predeterminado.
az vm create \
- - grupo de recursos SimpleVM \
- - nombre WindowsVM \
Para la mayoría de las actividades de disco de VM, la VM asociada debe detenerse y desasignarse.
Tenga en cuenta este requisito si necesita realizar la configuración de VHD en una máquina virtual de
producción.
FIGURA 3-8:
Usar administrado
Almacenamiento en disco para
Azur.
Capítulo 4
Planificación de su virtual
Topología de la red
PAG solicitud de soporte número uno en Azure. Esto tiene sentido para mí por al menos un
par de razones:
La gente de Microsoft me dijo hace un par de años que la creación de redes era la
» Las redes definidas por software en la nube de Azure son muy diferentes de
redes de hardware locales.
» Los costos y las consecuencias de cometer un error con las redes de Azure son
elevado.
En este capítulo, sentarán las bases para las redes de Azure. Hablo de la red virtual, que forma
el límite en el que coloca su máquina virtual (VM) y potencialmente otros servicios de Azure.
¡No es verdad! Aunque las máquinas virtuales dentro de una única red virtual pueden comunicarse bien de
forma predeterminada (salvo las reglas de denegación del firewall, naturalmente), no es posible la
comunicación directa entre redes virtuales sin intervención administrativa adicional.
Por ahora, comenzaré la discusión sobre la red virtual explicando los diversos componentes de
dicha red.
Espacio de dirección
Todas las comunicaciones de red dentro de una red virtual tienen lugar solo en Azure; por lo tanto, su
espacio de direcciones debe provenir de los rangos de direcciones IPv4 privados y no enrutables
definidos en la Solicitud de comentarios (RFC) 1918:
» 10.0.0.0–10.255.255.255 (prefijo / 8)
» 172.16.0.0–172.31.255.255 (prefijo / 12)
» 192.168.0.0– 92.168.255.255 (prefijo / 16)
Para obtener más información sobre los rangos de direcciones IP privadas, lea el documento fuente de RFC 1918.
ment en https://tools.ietf.org/html/rfc1918.
Subredes
Su espacio de direcciones de VNet no tiene valor a menos que y hasta que defina una o más
subredes. Lo bueno de las subredes es que el enrutamiento del sistema de Azure se encarga de
dirigir el tráfico entre las subredes de una sola red virtual. No se requiere enrutador.
abreviar. El espacio de direcciones IPv4 públicas se ha agotado hace mucho tiempo, y el mundo ha ido adoptando
lentamente IPv6. La mayoría de las empresas que utilizan IPv6 lo hacen en lo que se denomina doble pila configuración,
En resumen, las redes virtuales de Azure son compatibles con IPv6, pero en el momento de escribir este artículo, la función
está en versión preliminar pública. Debido a que las funciones de vista previa pública no tienen un acuerdo de nivel de
servicio ni garantía de soporte, no debe usar IPv6 en redes virtuales en producción en este momento. Por el contrario, IPv6
para el equilibrador de carga público de Azure se encuentra en estado de disponibilidad general; por lo tanto, le
El patrón arquitectónico más común coloca cada nivel de aplicación en su propia subred, tal vez
una subred para el nivel de front-end web, una para el nivel de lógica empresarial y otra para el
nivel de datos. De esta manera, puede esculpir sus reglas de tráfico más fácilmente porque las
VM en cada subred tienen los mismos requisitos de tráfico de red.
Azure siempre reserva cinco direcciones IP de cada subred para su propio uso. Suponga que
crea una subred que usa la dirección 192.168.10.0/24. Esto es lo que sucede:
Azure es un servicio medido y cada servicio tiene un límite de capacidad predefinido. En una
sola suscripción en una sola región, puede definir hasta 1,000 redes virtuales y 3,000 subredes
por red virtual. Esas capacidades parecen ser absurdamente altas a primera vista. Sin embargo,
llegará el día en que se encontrará con uno de estos límites de servicio y no quiero que se
sorprenda. Para obtener más detalles, visite el artículo de documentos de Azure "Límites,
cuotas y restricciones de suscripción y servicio de Azure" en https: //
docs.microsoft.com/en-us/azure/azure-subscription-service-limits.
FIGURA 4-1:
El virtual de Azure
la red
infraestructura
usado en esto
capítulo.
» La red virtual se divide en dos subredes para reflejar niveles de aplicación comunes.
» Cada red virtual está protegida por un único grupo de seguridad de red (NSG).
» Un extremo de servicio vincula una cuenta de almacenamiento a una red virtual.
• Nombre: VNet1
• Suscripción: [ su suscripción]
• Localización: Cualquiera que sea la región de Azure más cercana a usted. (Estos ejemplos usan
East US 2.)
• Cortafuegos: Discapacitado
Después de que Azure implemente la nueva red virtual, debe volver a visitar sus valores de
configuración para definir la segunda subred. Siga estos pasos para lograr ese objetivo:
• Nombre: app1
Las redes definidas por software pueden volverse abstractas y difíciles de imaginar. En la lista
Configuración de VNet1, haga clic en Diagrama, como se muestra en la Figura 4-3. Azure crea un
diagrama vectorial que representa su red virtual; al hacer clic en un elemento del gráfico, accederá a la
configuración de ese recurso.
Encuentro estos diagramas invaluables para descubrir cómo se distribuyen mis redes virtuales. Lo que
es aún más genial es que puedes
» Como mencioné anteriormente, haga clic en cualquiera de las formas de diagrama en Azure Portal para
vaya a sus blades de configuración.
» Haga clic en Descargar topología para descargar un formato de gráficos vectoriales escalables (SVG)
imagen para usar en su documentación arquitectónica.
Si no posee una licencia de Microsoft Visio, considere la posibilidad de obtener una. Visio simplifica la creación
de diagramas de Azure. Recomiendo encarecidamente que cualquier persona con un trabajo que involucre a
Azure invierta en Visio para que pueda facilitar la visualización de los recursos basados en la nube.
Específicamente, importe la imagen de topología de VNet en Visio, haga clic con el botón
derecho y elija Agrupar ➪ Desagrupar del menú contextual de Visio. Ahora tienes acceso a todas
las formas. También debe descargar las plantillas de Azure Visio en https: // www.
microsoft.com/en-us/download/details.aspx?id=41937.
1. En Azure Portal, haga clic en Cloud Shell para abrir una sesión de Cloud Shell.
Si la sesión se abre en Bash, use el menú desplegable de Cloud Shell para cambiar
a PowerShell.
Si tiene varias suscripciones, es posible que deba ejecutar Set-AzContext para asegurarte
de que estás concentrado en el correcto. Si solo tiene una suscripción, puede continuar
directamente.
New-AzVirtualNetwork ̀
- ResourceGroupName Wiley ̀
- Ubicación EastUS2 ̀
- Nombre VNet2 ̀
- AddressPrefix 10.3.0.0/16
Tenga en cuenta los caracteres de tilde invertida () en mi código. No se trata de las comillas
simples, sino de la tecla situada encima de la tecla Tab del teclado. En PowerShell, usa la comilla
invertida para continuar una línea de código a la siguiente línea. Lo hago aquí solo para
mantener el código legible en la página; Puede omitirlos si no le importa que las líneas de código
se ejecuten durante mucho tiempo en Cloud Shell.
Las variables en PowerShell comienzan con un signo de dólar. Aquí está el código:
$ subnetConfig1 = Agregar-AzVirtualNetworkSubnetConfig ̀
- Nombre web2 ̀
- AddressPrefix 10.3.1.0/24 ̀
- VirtualNetwork 'VNet2'
$ subnetConfig2 = Agregar-AzVirtualNetworkSubnetConfig ̀
- Nombre app2 ̀
- AddressPrefix 10.3.2.0/24 ̀
- VirtualNetwork 'VNet2'
$ subnetConfig1 | Set-AzVirtualNetwork
$ subnetConfig2 | Set-AzVirtualNetwork
Una razón por la que realizar implementaciones de Azure mediante programación se considera
más eficiente que hacerlo en Azure Portal es que puede especificar todos los aspectos de la
implementación. En el ejemplo anterior, ambas subredes se definen simultáneamente. El
formulario de Azure Portal le permite especificar solo su primera subred.
La resolución de nombres proporcionada por Azure, habilitada de forma predeterminada en sus redes virtuales,
garantiza que sus máquinas virtuales puedan comunicarse a través de un nombre de host corto, así como por una
dirección IP. Sin embargo, el problema que tienen algunas empresas es que quieren que sus máquinas virtuales en la
Si necesita VM en diferentes VNets para resolver los nombres de host de los demás, o si desea utilizar
un nombre de dominio totalmente calificado personalizado para sus VM en la nube, entonces debe
configurar la resolución de nombres personalizada. Por ejemplo, puede realizar una de las siguientes
acciones:
» Implemente una zona privada del Sistema de nombres de dominio (DNS) de Azure y vincule la zona a
ambas subredes.
» Implemente máquinas virtuales de servidor DNS en cada red virtual y configúrelas para reenviar el nombre
resolución de consultas entre sí.
En sus redes virtuales, busque la configuración de los servidores DNS. Debería ver la configuración
predeterminada (proporcionada por Azure). Si necesita anular el DNS, seleccione Personalizado y luego
proporcione una o más direcciones IPv4 de servidor DNS personalizadas. Estas direcciones pueden apuntar a
168.63.129.16 es una buena dirección IP que debe conocer, porque es posible que desee que sus máquinas
virtuales recurran a un DNS proporcionado por Azure si falla una búsqueda de nombre recursiva con la lista
prescrita de servidores DNS personalizados.
Nunca intente configurar las propiedades de TCP / IP desde una máquina virtual en Azure. Si lo
hace, perderá inmediatamente la conexión de red a su máquina virtual. Recuerde que aquí se
trata de redes definidas por software basadas en la nube, no de sus servidores físicos o
virtuales locales. Debe realizar toda la configuración de red de su máquina virtual en Azure
Resource Manager (ARM), ya sea que use Azure Portal, PowerShell o la interfaz de línea de
comandos (CLI) de Azure.
Un NSG consta de una o más reglas de acceso que tienen las siguientes propiedades:
» Prioridad: Los valores de menor prioridad se evalúan primero. A medida que agrega reglas, asegúrese
dejar espacio entre ellos para permitir el crecimiento futuro.
» Nombre: Le sugiero que nombre sus reglas de NSG de la manera más descriptiva posible
(como HTTP-in-Allow).
Un NSG ejecuta cada flujo de tráfico a través de su lista de reglas de entrada o salida, según la
dirección del tráfico. La primera regla que se aplica se convierte en la regla efectiva. A menos
que tenga una regla general para denegar todo el tráfico no clasificado, abre la posibilidad de
tipos de conexión que no desea y eso podría comprometer la seguridad de su máquina virtual.
Las tablas 4-1 y 4-2 resumen las reglas de entrada y salida predeterminadas para NSG.
Regla Descripción
Regla Descripción
AllowVnetOutBound Permite el tráfico saliente desde esta red virtual y hacia cualquier red
virtual emparejada
AllowInternetBound Permite que las máquinas virtuales accedan a la Internet pública desde dentro de la red virtual.
DenyAllInBound Regla general que garantiza que se deniegue el tráfico saliente que no
haya sido detectado por una regla anterior
Aunque Microsoft creó las reglas de seguridad NSG entrantes y salientes predeterminadas para
su conveniencia, no está obligado a usarlas. Siento que son demasiado permisivos, así que creo
el DenyAllInbound y DenyAllOutBound reglas manualmente y no use las otras reglas
predeterminadas.
La red virtual que se muestra en la Figura 4-1 anteriormente en este capítulo incluye NSG1 para filtrar
el tráfico y contiene las reglas de entrada y salida predeterminadas.
Debido a que tiene los mismos requisitos de acceso en VNet2, asocia NSG1 con ambas
subredes.
Para crear el NSG y permitir el tráfico HTTP entrante (puerto TCP 80), siga estos pasos:
1. Utilice la búsqueda global de Azure Portal para encontrar los grupos de seguridad de red
espada; luego haga clic en Agregar en la barra de herramientas.
• Nombre: NSG1
• Suscripción: [ su suscripción]
• Localización: Este de EE. UU. 2 (use su región de origen; estos ejemplos usan la mía)
Tenga en cuenta que existen configuraciones separadas para las reglas de seguridad entrantes y
salientes. El botón Reglas predeterminadas cambia su estado. Deje ambas configuraciones habilitadas
De forma predeterminada, Azure lo coloca en la vista Avanzada, que es donde desea estar. (Si lo
desea, haga clic en Básico para ver la vista simplificada).
Su fuente puede ser una lista separada por comas de direcciones IP o rangos de direcciones,
una etiqueta de servicio o un grupo de seguridad de la aplicación. Por ahora, comprenda que
esta regla se aplica al tráfico entrante que se origina en la Internet pública.
• Protocolo: TCP
• Acción: Permitir
• Prioridad: 100
• Nombre: HTTP-In-Allow
6. Cree una nueva regla de seguridad saliente (repito: saliente) para NSG1.
Esta regla permite el tráfico desde la subred web1 a la cuenta de almacenamiento que
colocará en la subred app1.
• Protocolo: Alguna
• Acción: Permitir
• Prioridad: 100
La Figura 4-4 muestra mi configuración de NSG1 completa en la página Descripción general de MSG1.
Etiquetas de servicio son etiquetas que agregan grupos de prefijos de direcciones IP y hacen que la elaboración de
reglas NSG precisas sea mucho más fácil. Algunas etiquetas de servicio comunes son
» Red virtual: Todos los espacios de direcciones de red virtual, tanto para local como para
redes virtuales emparejadas
» Internet: Todas las direcciones IP públicas, tanto de propiedad de Azure como públicas
» AzureLoadBalancer: Las direcciones IP virtuales de su carga de Azure implementada
equilibradores
Los grupos de seguridad de aplicaciones (ASG) son, en efecto, etiquetas de servicio creadas por el usuario.
Con ellos, puede agrupar recursos de una manera definida por el administrador para facilitar la asignación de
reglas de NSG. Puede crear un ASG llamado servidores web que se aplique a las máquinas virtuales del
servidor web en su implementación, por ejemplo.
Para obtener más información sobre los ASG, lea el artículo de documentos de Azure "Grupos de seguridad" en
https://docs.microsoft.com/en-us/azure/virtual-network/securityoverview.
Debe completar este procedimiento dos veces: una para VNet1 / web1 y una vez para
VNet2 / web2.
Otros productos de Azure que se pueden vincular a redes virtuales a través de puntos de conexión de servicio
incluyen SQL Database, Cosmos DB, Key Vault y App Service.
Esta sección le guía a través de la configuración. Para crear un punto final de servicio de
almacenamiento de Microsoft en la subred de la aplicación 1 de Vnet1, siga estos pasos:
1. En Azure Portal, busque VNet1 y seleccione los puntos de conexión del servicio.
configuración.
En este caso, ignora las políticas de punto final de servicio porque, en el momento de escribir este
artículo, es una función de vista previa pública sin ningún acuerdo de nivel de servicio (SLA) asociado. Las
políticas de punto final de servicio le permiten filtrar de forma más granular el tráfico de VNet a los
servicios de Azure.
Si creó una cuenta de almacenamiento en el Capítulo 3, puede usar esa cuenta de almacenamiento.
Debería poder acceder al contenedor de blobs de los archivos y a los blobs que contiene.
FIGURA 4-5:
En el azur
portal, la mayoría
los recursos tienen un
Menú de contexto
de donde tu
puede seleccionar
configuración
opciones.
adicionales una vez que haya habilitado los puntos finales de servicio:
• Permita que los servicios de confianza de Microsoft accedan a esta cuenta de almacenamiento: Habilite
esta opción para garantizar que otros servicios de Azure (como Key Vault, Azure AD, etc.
FIGURA 4-6:
Puntos finales de servicio
seguro Azure
recursos para un
particular virtual
la red.
» Redes virtuales de producción / desarrollo que admiten la comunicación entre redes virtuales
» Arquitecturas de red virtual de radios de concentrador en las que la red virtual de concentrador tiene un vínculo al
entorno local
Azure nos ofrece dos opciones para vincular redes virtuales, que describo a continuación.
El emparejamiento de redes virtuales es una forma de conectar sin problemas dos redes virtuales de Azure.
Hasta finales de 2018, se necesitaban puertas de enlace de red virtual y una red privada virtual (VPN) de VNet
a VNet para conectar redes virtuales ubicadas en diferentes regiones. Hoy en día, se pueden emparejar redes
virtuales en diferentes regiones e incluso en diferentes suscripciones de Azure.
El tráfico de red a través de un emparejamiento de redes virtuales es privado, se produce a través de la red troncal de
Azure y utiliza direcciones IP privadas. No se requieren gastos ni gastos generales de VPN para realizar el
emparejamiento, aunque puede implementar una VPN de red virtual a red virtual si sus necesidades de seguridad lo
exigen. Sin embargo, puede configurar ambos lados de un emparejamiento desde la perspectiva de una sola red
virtual.
Siga estos pasos para configurar un emparejamiento de VNet entre sus redes virtuales VNet1 y
VNet2:
• Suscripción: [ su suscripción]
Cuando selecciona un emparejamiento en Azure Portal, puede personalizar la relación de emparejamiento para lograr
los objetivos de enrutamiento. Por ejemplo, puede tener una red virtual radial que debe llegar a su entorno local
Es importante que sepa que los emparejamientos de redes virtuales no son transitivos. En la figura 4-7 se muestra una
FIGURA 4-7:
Un hub y radios
red virtual
topología.
En la figura, la red virtual Hub sirve como punto de tránsito entre Azure y el entorno de red
local de la empresa. (Me refiero a las VPN y la nube híbrida en el Capítulo 13.)
acciones:
¿Ves de lo que estoy hablando aquí? Muchas empresas requieren más de una red virtual en
Azure y, a menudo, es necesario configurar la conectividad entre ellas. Por ejemplo, una
empresa puede usar peering para vincular redes virtuales de desarrollo y producción.
Otro caso de uso es colocar un dispositivo virtual de red, como un firewall empresarial, en la
red Hub y "compartir" ese dispositivo para el tráfico en otras redes virtuales vinculadas.
Estrictamente hablando, esto es lo que Microsoft quiere decir con el término "encadenamiento
de servicios".
Una tabla de enrutamiento es necesaria en Azure cuando necesita controlar cómo fluye el
tráfico dentro y entre redes virtuales. La tabla de rutas define una o más direcciones IP de
destino del “siguiente salto”; Si ha trabajado con enrutamiento IP estático en su entorno local,
entonces la tabla de enrutamiento de Azure debería ser fácil de captar.
Siga estos pasos para crear una tabla de rutas de muestra, asumiendo que el NVA escucha el
tráfico en la dirección IP privada 10.1.1.100:
1. Use la búsqueda global en Azure Portal para encontrar la hoja Route Tables.
2. En la hoja Tablas de ruta, haga clic en Agregar.
3. Complete el formulario de la hoja Crear tabla de rutas y luego haga clic en
Crear.
• Nombre: nva-siguiente-salto
• Suscripción, grupo de recursos, ubicación: Use los valores que ha estado usando hasta
ahora
Para los emparejamientos Spoke 1 y Spoke 2, habilite la opción Usar puertas de enlace remotas para indicar a
Azure que permita el tráfico desde los radios a través de la puerta de enlace VPN en Hub. Tenga en cuenta que
configura la configuración en el radio en lugar de en los lados del concentrador de los emparejamientos.
En las propiedades de emparejamiento de Hub VNet, habilite la opción AllowGateway Transit. Esta opción indica a
Azure que permita que las redes virtuales emparejadas usen la puerta de enlace VPN de esta red virtual. También
habilite la opción Permitir tráfico reenviado para Spoke 1 y Spoke 2 para que los radios puedan comunicarse a
"¿En teoría, Tim?" usted pregunta. "¿Qué diablos significa eso?" Bueno, para admitir la comunicación
transitiva de VNet completa, debe usar encadenamiento de servicios, en el que implementa un
dispositivo virtual de red en su Hub VNet e implementa rutas definidas por el usuario.
La figura muestra una máquina virtual NVA configurada como un enrutador que puede reenviar tráfico IP desde
otras redes virtuales. Usted asocia una ruta definida por el usuario (también conocida como tabla de rutas de
Azure) con cada Spoke VNet para proporcionar una dirección de enrutamiento del siguiente salto de 10.1.1.100:
el dispositivo virtual de red. Al hacerlo, anula las rutas del sistema de Azure con sus propias rutas personalizadas.
fundamentalmente diferente al de la mayoría de las máquinas virtuales. Normalmente, una NVA tiene más de una
tarjeta de interfaz de red virtual conectada a varias subredes dentro de una red virtual; está configurado para el
reenvío de IP; y ejecuta una aplicación de gestión de tráfico de red empresarial de terceros.
Los principales proveedores de equilibradores de carga empresariales, firewalls, servidores proxy y otros
dispositivos publican NVA preconfigurados en Azure Marketplace, por ejemplo. Estas máquinas virtuales
normalmente ejecutan una versión de Linux delgada y especializada y se configuran a través de una interfaz web.
Para explorar las NVA en Azure Marketplace, visite https://azure.microsoft.com/
es-es / soluciones / dispositivos-de-red.
5. Complete el formulario de la hoja Agregar ruta y luego haga clic en Aceptar para enviar su
configuración.
Este rango especial de direcciones IP, conocido como Ruta por defecto, se aplica a cada
bit de tráfico saliente de las subredes con las que está asociada esta tabla de
enrutamiento.
Las otras opciones son Red virtual, Internet y Puerta de enlace de red virtual.
¿Recuerda cuando aprendió sobre etiquetas de servicio y grupos de seguridad de
red? Eso es lo que también son estos identificadores.
Una nota de ARM le recuerda que habilite el reenvío de IP en el NVA. Usted configura este
reenvío como una propiedad de la configuración de la tarjeta de interfaz de red del NVA.
No se olvide de sus NSG y sus reglas de entrada y salida. Cuando crea topologías de redes virtuales
más complejas, como el emparejamiento y el encadenamiento de servicios, lo más probable es que
necesite modificar las reglas de NSG existentes o crear otras nuevas para adaptarse a los nuevos flujos
de tráfico.
» Planificación de la implementación de su VM en
Azur
» Conectarse y configurar su
Máquinas virtuales de Azure
Capítulo 5
Despliegue y
Configuración de Azure
Maquinas virtuales
I naturalmente, piense
n mi experiencia como en las máquinas
arquitecto virtuales
de soluciones de (VM) enencuentro
Azure, dos situaciones:
que la mayoría de mis clientes
Una de mis alegrías como consultor en la nube es mostrarles a los clientes que no tienen que usar
máquinas virtuales de Azure. Azure incluye muchas opciones maravillosas de Plataforma como
servicio (PaaS), como Azure App Service y Azure SQL Database, que pueden proporcionar geoescalado
y agilidad rápida.
Si necesita un control total de la pila de su entorno, Azure es totalmente compatible con las máquinas
virtuales. En este capítulo, explico las diversas opciones de máquina virtual de Azure y cómo implementar y
configurar máquinas virtuales de Windows Server y Linux en Azure.
Quizás recuerde el aforismo del carpintero “Mida dos veces, corte una vez”, que enfatiza la
importancia de planificar antes de lanzarse a un proyecto. Con la implementación de Azure VM,
debe pensar detenidamente para tomar las decisiones correctas la primera vez; de lo contrario,
corre el riesgo de tener que eliminar y volver a crear su máquina virtual.
Sin embargo, antes de planificar su implementación, debe comprender cómo funcionan las máquinas
virtuales en Azure.
Entendiendo las VM
Una máquina virtual es una representación de software de una computadora. Cada región de Azure consta de
varios centros de datos; cada centro de datos consta de miles de servidores blade de hardware. Las máquinas
virtuales se ejecutan dentro de esta estructura informática masiva.
A cada máquina virtual se le asignan recursos de hardware virtual desde su host de hardware principal:
» La red
Los servidores del centro de datos de Microsoft ejecutan una versión especializada de Windows Server
Core y sus máquinas virtuales residen en hosts de Microsoft Hyper-V. Por el contrario, Amazon Web
Services (AWS) ejecuta sus instancias de VM de Elastic Compute Cloud bajo el hipervisor Xen de código
abierto.
En el momento de redactar este documento, el servicio de máquinas virtuales de Microsoft Azure admite las siguientes versiones
de 64 bits:
» Windows 7
» Windows 8.1
» Windows 10
» Windows Server 2008 R2
» Windows Server 2012 R2
» Windows Server 2016
» Windows Server 2019
» CentOS
» CoreOS
» Debian
» OpenSUSE
» Oracle Linux
» Red Hat Enterprise Linux
» SUSE Enterprise Linux
» Ubuntu
Las instrucciones que proporciono aquí son ilustrativas, no completas. Consulte la documentación de
Azure para obtener una guía completa y paso a paso sobre cómo preparar sus máquinas virtuales
Linux y Windows Server en las instalaciones para cargarlas en Azure.
Para convertir un. vhdx disco virtual a un tamaño fijo. vhd, puede ejecutar el
cmdlet ConvertVHD PowerShell en su host Hyper-V local así:
pronuncian comando-permite.
Tenga en cuenta también que su sistema operativo VHD debe ser generalizado. La generalización
elimina toda la información única de la imagen de VMdisk, incluidos los identificadores de seguridad, la
dirección IP estática, el nombre de host, etc. En Windows Server, puede utilizar la utilidad Sysprep
incorporada.
Consulte el Capítulo 3 para obtener más información sobre el uso de cuentas de almacenamiento y la herramienta
$ vmName = "vm1"
$ rgName = "myResourceGroup"
$ ubicación = "EastUS"
$ imageName = "myImage"
$ osVhdUri = "https://mystorageaccount.blob.core.windows.
net / vhds / vm1-gen1.vhd "
En un nivel superior de abstracción, una máquina virtual de Azure es un recurso en la nube que
consta de los siguientes tres subsistemas:
» Calcular
» Almacenamiento
» La red
Antes de explicar cómo implementar y configurar una máquina virtual, repasaré cómo las máquinas virtuales de Azure
Los tamaños de instancias de VM disponibles se dividen en familias. La Tabla 5-1 enumera los tamaños
de VM de Windows Server y la carga de trabajo prevista para cada tamaño, lo que lo ayudará a tener
una idea de la diferencia entre las familias de tamaños de VM. Puede encontrar los tamaños de
máquina virtual Linux asociados en la documentación de Azure ( https://docs.microsoft.com/
en-us / azure / virtual-machines / linux / tamaños).
Propósito general B, Dsv3, Dv3, Dasv3, Dav3, DSv2, Dv2, Av2, DC Pruebas y desarrollo
Optimizado para memoria Esv3, Ev3, Easv3, Eav3, Mv2, M, DSv2, Dv2 Servidores de bases de datos
GPU NC, NCv2, NCv3, ND, NDv2, NV, NVv3 Trabajos pesados de renderizado gráfico
Si no está vinculado a una región de Azure en particular por motivos de cumplimiento, considere comparar
antes de implementar sus máquinas virtuales, ya que ejecutar máquinas virtuales en diferentes regiones crea
costos significativamente diferentes. Las diferencias de precio se deben a los costos de la electricidad, los
costos de la planta física y similares, que varían según las regiones en las que residen los centros de datos de
Azure.
Con el tiempo, llegará a reconocer de qué familia proviene un tamaño de máquina virtual en particular al
inspeccionar su etiqueta de identificación. Las máquinas virtuales de la serie D, por ejemplo, son de uso
general y, por lo tanto, los clientes de Azure las utilizan con mayor frecuencia. Tenga en cuenta que estos
tamaños están versionados; puede esperar que una imagen v3 tenga características que las imágenes v2 no
tienen, por ejemplo.
No se preocupe si implementa una máquina virtual en un tamaño que resulta insuficiente para sus necesidades desde
una perspectiva de costo o rendimiento. Puede cambiar el tamaño de las máquinas virtuales de forma dinámica para
Azure usa una característica llamada Managed Disks para almacenar su sistema operativo y VHD de datos. Lo
bueno de Managed Disks es que no es necesario que administre la infraestructura de la cuenta de
almacenamiento subyacente, como antes era el caso.
La gran pregunta sobre el almacenamiento en disco de su máquina virtual se relaciona con el rendimiento. Aquí tienes tus
opciones:
» Almacenamiento HDD estándar: Disco mecánico de menor velocidad y precio más bajo
almacenamiento. Ofrece un máximo de 2000 operaciones de entrada / salida por segundo (IOPS).
» Almacenamiento SSD premium: Almacenamiento en disco de estado sólido de alta velocidad pero de mayor precio.
Ofrece 20.000 IOPS máximas.
» Almacenamiento en disco ultra: Almacenamiento en disco de estado sólido de alta velocidad y precio más alto.
Ofrece 160.000 IOPS máximas.
El nivel de almacenamiento adecuado para la carga de trabajo de su máquina virtual depende de su necesidad de
velocidad y alta disponibilidad. Por ejemplo, una máquina virtual de prueba / desarrollo normalmente requiere
almacenamiento HDD estándar. Por otro lado, una máquina virtual de servidor de base de datos de producción puede
La red
La idea principal que quiero llevar a casa aquí es que la configuración de red de su máquina virtual es
independiente del recurso de la máquina virtual en sí. Comprenda que la pila de redes de una
máquina virtual consta de los siguientes componentes:
» Recurso de VM
» Recurso de interfaz de red virtual
»( opcional) Recurso de dirección IP pública
»( opcional) Recurso de grupo de seguridad de red
Las propiedades del protocolo TCP / IP se configuran en la tarjeta de interfaz de red virtual
(vNIC) en lugar de en la VM. Esta capacidad es genial por muchas razones, una de las cuales es
que puede desconectar una vNIC de una máquina virtual y conectarla a otra. ¡Portabilidad!
Alta disponibilidad
No desea tener un solo punto de falla en la implementación de su máquina virtual. Si su carga de
trabajo tiene un nivel web de front-end, probablemente desee al menos dos instancias de VM
configuradas de manera idéntica para que su servicio permanezca en línea si un nodo se desconecta
(de forma esperada o inesperada).
Microsoft ofrece un acuerdo de nivel de servicio (SLA) de alta disponibilidad del 99,99 por ciento
cuando coloca dos o más nodos de VM coincidentes en zonas de disponibilidad independientes. El SLA
es del 99,95 por ciento cuando coloca dos o más instancias de VM idénticas en un conjunto de
disponibilidad. Por último, el SLA es del 99,9 por ciento si tiene una sola instancia de VM que utiliza
almacenamiento premium.
Eche un vistazo a la Figura 5-2 para conocer la diferencia entre conjuntos de disponibilidad y
zonas de disponibilidad.
FIGURA 5-2:
Conjunto de disponibilidad
a la izquierda;
zonas de disponibilidad
a la derecha.
Por el contrario, zonas de disponibilidad protéjase contra fallas del centro de datos completo en su
región de origen. Coloca sus máquinas virtuales en centros de datos separados en la región. No tiene
que preocuparse por la latencia, porque Microsoft tiene enlaces de red, refrigeración y energía
redundantes entre los clústeres de centros de datos regionales.
Si olvida colocar una máquina virtual en una zona de disponibilidad o un conjunto de disponibilidad durante la
implementación, debe volver a implementar para realizar este cambio. Sí, es una molestia, así que asegúrese de hacer
"Entonces, ¿por qué no elegirías siempre las zonas de disponibilidad?" Tu puedes preguntar. La respuesta es
simple: Microsoft aún no ha habilitado las zonas de disponibilidad para todas las regiones públicas, por lo que
es posible que esa opción no esté disponible en su región. Con el tiempo, estoy seguro de que las zonas de
disponibilidad se ofrecerán en todas las regiones.
Por lo tanto, la guía de Microsoft es que si su región de Azure admite zonas de disponibilidad, debe
usarlas. De lo contrario, use conjuntos de disponibilidad para proporcionar alta disponibilidad para
sus máquinas virtuales de Azure.
Escalabilidad
Escalabilidad se refiere a su capacidad para cambiar el tamaño de su máquina virtual. También significa que
puede escalar su VM mediante la implementación de instancias adicionales. Un servicio PaaS como Azure App
Service puede manejar el escalado automático por usted; esta característica es un poderoso diferenciador
entre PaaS e IaaS.
Por ahora, lo más parecido que tienen las máquinas virtuales de Azure al ajuste de escala automático horizontal son los conjuntos
de escalado de máquinas virtuales (VMSS). Con VMSS, puede crear un clúster de máquinas virtuales e indicarle a Azure que realice
una escala automática en función de sus especificaciones de carga de CPU, programación de tiempo, etc.
desde AzureMarketplace
Tengo la sensación de que ha estado esperando esta parte del capítulo, en la que explico cómo
trabajar con la tecnología Azure directamente. Gracias por su paciencia.
Comenzaré con Linux porque nunca dejo de disfrutar del hecho de que Microsoft admite Linux
de forma nativa en Azure. Soy especialista en Microsoft desde 1997, y hasta hace unos años era
inconcebible que pudiéramos ejecutar máquinas virtuales que no fueran de Windows mediante
el uso de tecnologías de Microsoft.
En esta sección, explico cómo implementar un servidor web Linux simple en una nueva red
virtual, usando una imagen de VM Ubuntu Linux 18.04 Long-Term Support (LTS) de Azure
Marketplace.
Alternativamente, puede navegar hasta la hoja Máquinas virtuales y hacer clic en Agregar para
• Nombre de la máquina virtual: El nombre debe ser único solo dentro de su grupo de
recursos. Preste atención a los ayudantes de validación que aparecen cuando
coloca el cursor en un campo.
• Tamaño: Por ahora, acepte el tamaño de máquina virtual predeterminado recomendado por Microsoft.
• Tipo de autenticación: Las máquinas virtuales de Linux son diferentes de las de Windows porque puede
utilizar la autenticación basada en claves Secure Shell (SSH) o la autenticación basada en contraseñas.
• Puertos públicos de entrada: Para fines de prueba, asocie una dirección IP pública
con esta VM y conéctese a la instancia a través de SSH.
Más adelante, reforzará la seguridad del grupo de seguridad de la red para evitar intentos de acceso no
virtual. Elija HDD estándar para ahorrar dinero. (Consulte "Almacenamiento" anteriormente en este capítulo para
La cantidad de discos de datos que puede crear depende del tamaño de la instancia de VM elegida.
Siempre puede agregar discos de datos más tarde, así que, por ahora, continúe con la siguiente hoja.
Tenga en cuenta que el número predeterminado de discos de datos que Azure proporciona a la nueva
máquina virtual es cero; depende de usted, como administrador, decidir si desea utilizarlos.
• Red virtual: La plantilla implementa una nueva red virtual de forma predeterminada. Eso
es lo que quieres aquí, así que deja esta configuración en paz.
Si coloca su máquina virtual en la red virtual incorrecta, deberá volver a implementarla para
moverla, lo cual es una molestia, así que intente tomar la decisión correcta la primera vez.
• IP pública: Deje esta configuración en su valor predeterminado. De hecho, desea una dirección IP
• Redes aceleradas: No todas las plantillas de VM admiten esta opción. Para las
plantillas de VM que admiten esta función, la red acelerada brinda a las VM
un aumento de la velocidad de la red al permitir que la máquina virtual utilice la red troncal de
requiere Boot Diagnostics para usar la consola en serie de VM, por lo que siempre es una buena idea
Las etiquetas taxonómicas son una forma de realizar un seguimiento de los recursos entre las suscripciones con
fines contables.
Conectando a la VM
Use Azure Cloud Shell para realizar una conexión SSH a su máquina virtual. Sigue estos pasos:
1. En Azure Portal, busque la hoja de información general de su máquina virtual recién creada,
y anote la dirección IP pública.
ssh tim@13.68.104.88
Tipo sí para aceptar la clave pública de la VM y luego ingrese su contraseña para ingresar a la sesión
Puede obtener ayuda para cualquier comando de Linux escribiendo man <nombre-comando>.
Desplácese por el documento de ayuda con las teclas de flecha y presione Q para salir.
En esta sección, explico cómo crear una máquina virtual de Windows Server utilizando Visual
Studio 2019 Community Edition y una plantilla ARM.
SSH (con o
sin nube
Shell) para administrar
VM Linux en
Azur.
Aunque utilizo Windows como sistema operativo de la estación de trabajo en este libro, Microsoft hace
una versión de Visual Studio para macOS. Visita https://visualstudio.microsoft.com/
vs / mac para detalles.
Este procedimiento es especialmente importante para que lo comprenda por dos razones:
» Las plantillas ARM forman una base para la automatización administrativa, el desarrollo y
operaciones.
» Usarás plantillas ARM para completar tareas que cubriré más adelante en el libro.
La Figura 5-5 ilustra la interfaz de usuario. Puede dejar los componentes de carga de trabajo de Azure
FIGURA 5-5:
Instalando el
SDK de Azure
en Visual
Estudio 2019.
Cuando inicie Visual Studio 2019, verá una página de introducción. Haga clic en
Continuar sin código; luego abra la extensión Cloud Explorer eligiendo Ver ➪
Explorador de la nube. Autentíquese en Azure Active Directory y seleccione las suscripciones
de Azure con las que desea trabajar.
Implementar la VM
Suponiendo que tiene Visual Studio abierto y ha iniciado sesión en su suscripción de Azure, está
listo para rockear. En esta sección, está implementando una máquina virtual de Windows
Server desde la galería de plantillas de inicio rápido de Azure, que puede encontrar en
FIGURA 5-6:
Creando un
grupo de recursos
despliegue
proyecto en Visual
Estudio 2019.
implementación.
• variables: Estos valores representan datos fijos o dinámicos a los que se hace referencia
internamente dentro de la plantilla.
7. En el Explorador de soluciones, haga clic con el botón derecho en el proyecto y elija Validar en el
Menú breve.
FIGURA 5-8:
Validando nuestro
Plantilla ARM.
9. Haga clic en Validar y observe la ventana Salida para ver los mensajes de estado.
Asegúrese de mirar detrás de su aplicación de Visual Studio; Azure genera una sesión de
consola de PowerShell para solicitarle que confirme la contraseña de administrador.
La plantilla es válida.
Si la plantilla falla en la validación, Visual Studio es bastante bueno para indicarle las líneas de
código de la plantilla en las que encontró un problema. Puede depurar y volver a intentar la
validación tantas veces como sea necesario hasta que se apruebe la plantilla.
Primero, el código declarativo describe cómo desea que se vea el estado final. El código de la
plantilla deja el cómo de la implementación en ARMplatform. El código declarativo es
fundamentalmente diferente del código imperativo como C #, en el que el programador debe
instruir al marco .NET con precisión qué hacer y cuándo (y cómo) hacerlo.
De forma predeterminada, las implementaciones de ARM se ejecutan en modo incremental, en el que ARM opera
bajo esta suposición: "Asegúrese de que el grupo de recursos contenga todos los recursos de la plantilla, pero no
También puede ejecutar implementaciones en modo Completo. En este modo, ARM opera bajo
este supuesto: "Los únicos recursos que este grupo de recursos debe contener son los definidos
en la plantilla". En este caso, se eliminan todos los recursos existentes no referenciados.
10. Implemente la VM haciendo clic con el botón derecho en el proyecto en el Explorador de soluciones y
eligiendo Implementar en el menú de acceso directo.
11. Supervise el progreso y verifique que la máquina virtual existe en Azure Portal.
Sabrá que la implementación se completó correctamente cuando vea la
siguiente línea de estado en la ventana Salida:
Conectando a la VM
Normalmente, usa el Protocolo de escritorio remoto para administrar servidores Windows de forma
remota en las instalaciones, y Azure no es diferente. Busque la hoja Descripción general de su nueva
máquina virtual y haga clic en Conectar. Se abre el cuadro de diálogo Conexión a escritorio remoto
(consulte la Figura 5-9). Puede descargar el. rdp archivo de conexión y ábralo desde aquí.
Como se muestra en la Figura 5-9, los pasos para realizar una conexión RDP son
como lo hace
VM locales.
Microsoft crea un cliente nativo de Protocolo de escritorio remoto para macOS; está disponible
en la Mac App Store.
Primero, explico cómo ajustar las redes, el subsistema de una VM de importancia crucial y
potencialmente vulnerable.
• Red virtual
• Dirección IP pública
3. Agregue una sola regla de entrada para permitir el protocolo de escritorio remoto de entrada
tráfico.
¡Ahora estamos hablando! Con este simple paso, ha reducido drásticamente la superficie de ataque de
Una vNIC siempre tiene una única configuración de IP llamada (sin mucha imaginación)
ipconfig1. Usted especifica sus direcciones IP públicas y privadas en la configuración de IP.
La figura 5-10 lo guía a través de la ruta de clic para encontrar dónde se almacenan las
direcciones IP en Azure:
A continuación, se muestran algunos puntos para reflexionar sobre las direcciones IP de su máquina virtual de Azure:
• Recuerde que es posible que no sea necesario o incluso que no sea una buena idea dar una dirección IP
pública a una máquina virtual. Existen muchas otras opciones para el acceso basado en Internet a
sus máquinas virtuales, como Azure Firewall, un cuadro de salto configurado manualmente, un
Antes de enseñarle cómo iniciar y detener máquinas virtuales, quiero recordarle que Microsoft le cobra por
cada minuto que la máquina virtual está en ejecución o detenida, pero en un estado asignado. Una regla que
mencioné anteriormente también se aplica aquí: Realice la mayor cantidad posible de administración de VM
relacionada con Azure desde fuera de la VM.
Solo sepa que la desasignación de una máquina virtual libera todos los recursos dinámicos que se le
han asignado, como direcciones IP públicas / privadas y almacenamiento temporal.
Es posible que haya notado los botones Iniciar, Reiniciar y Detener en la hoja Descripción
general de la máquina virtual en Azure Portal. Puede usar esos botones para controlar el
estado de asignación de su VM (y, por lo tanto, la facturación), pero le enseñaré cómo detener e
iniciar una VM mediante PowerShell. La figura 5-11 muestra la interfaz.
FIGURA 5-11:
Usa la barra de herramientas
Cuando usa Cloud Shell, Azure autentica automáticamente su cuenta de usuario en Azure
Active Directory. Por el contrario, debe autenticarse manualmente antes de poder usar Azure
PowerShell en su equipo local.
Si tiene más de una suscripción y Azure asocia su sesión con la incorrecta, use el
siguiente comando para realizar el cambio:
Es posible que no recuerde el nombre de su máquina virtual, pero si recuerda el nombre del grupo de
4. Inicie la VM.
¡Guau, latigazo cervical! Pero este paso es una buena oportunidad de aprendizaje. Mira
esta técnica:
El carácter de barra vertical (|) pasa los resultados del primer segmento (obteniendo
una referencia a la VM de destino) al segundo segmento. Esta técnica se llama
canalización.
Como mencioné anteriormente, la capacidad de cambiar el tamaño de su máquina virtual de forma dinámica es un gran cambio
Los cambios de tamaño de las máquinas virtuales en Azure tienen un inconveniente: reinician su máquina virtual.
La hoja Tamaño contiene una tabla de todos los tamaños de máquina virtual que están disponibles en su región. No todos los
2. Edite los filtros para filtrar los tamaños de máquina virtual disponibles.
Puede filtrar el tamaño de la máquina virtual mediante cualquier combinación de las siguientes propiedades:
• Familia: Las opciones son Uso general, GPU, Computación de alto rendimiento,
Computación optimizada, Optimización de memoria y Optimización de almacenamiento.
3. Seleccione el tamaño de máquina virtual que desee y haga clic en Cambiar tamaño.
Su máquina virtual se reinicia con los nuevos recursos de hardware virtual. ¿No es
un mundo más fácil que solicitar, ordenar e instalar hardware en su centro de datos
local?
Microsoft ofrece tres opciones de monitoreo cada vez más granulares para máquinas virtuales Linux y
Windows Server:
» Métricas a nivel de host: Datos básicos de utilización de CPU, disco y red extraídos por el
Plataforma Azure que no requiere software de agente
La supervisión a nivel de invitado recoge los siguientes datos de sus máquinas virtuales de Windows Server:
La supervisión a nivel de invitado incluye las siguientes métricas y registros de sus máquinas virtuales
Linux:
En la nomenclatura de supervisión de Azure, un métrico es una serie temporal de valores medidos que se
almacenan para su posterior análisis.
3. Configure la fila de métrica inicial para trazar los datos de la CPU para una de sus máquinas virtuales.
Estas son las propiedades que especifiqué para mi máquina virtual de Windows Server:
• Recurso: vm-win-test
• Agregación: Promedio
4. Haga clic en AddMetric y configure la fila temática para trazar la CPU para su
otra VM.
Ser capaz de trazar métricas de varios recursos de Azure puede ser de gran ayuda
en su supervisión.
• Nuevo gráfico: Puede crear un gráfico que muestre algo como las transacciones de lectura
de la cuenta de almacenamiento de Azure.
• Gráfico de linea: Intente cambiar el tipo de gráfico para observar cómo la vista cambia la
visibilidad de sus datos.
» Comprensión de Docker y
contenedores
Capítulo 6
EnvíoDocker
Contenedores inAzure
De acuerdo, tal vez necesite bajar el tono de la hipérbole. Muchas empresas se están dando cuenta de
los beneficios económicos de utilizar contenedores Docker en sus entornos de desarrollo y
producción. En pocas palabras, los contenedores de Docker hacen que sea mucho más rápido y fácil
para los desarrolladores crear productos de software.
Un contenedor Docker es una aplicación virtualizada, no una máquina virtual completa. Puede
crear y ejecutar contenedores Docker que ejecuten diferentes bases de datos y versiones de
bases de datos con las que probar su aplicación. Estos contenedores contienen (¿ves lo que hice
allí?) Solo los binarios del motor de base de datos y sus dependencias, nada más.
Mientras que cada VM puede pesar cientos de gigabytes y debe actualizarse, respaldarse,
monitorearse y mantenerse, los contenedores pueden variar desde menos de 100 MB hasta
unos pocos gigabytes.
Al igual que las máquinas virtuales, los contenedores comparten recursos de hardware con su servidor host de
contenedores. A diferencia de las máquinas virtuales, los contenedores se definen fundamentalmente en Dockerfiles de
texto sin formato, que contienen las instrucciones para crear un contenedor.
La idea es poner todos los activos que compondrán su contenedor en un solo directorio y crear
un Dockerfile que orquesta la composición del contenedor. Luego, compila el Dockerfile en una
imagen binaria, que sirve como unidad de implementación. Finalmente, crea tantos
contenedores como necesite implementando instancias de su plantilla de imagen. La Figura 6-1
ilustra el proceso de implementación de Docker.
Docker es un tema enorme que podría ocupar un libro aparte. Si desea saber más sobre la
creación de imágenes de contenedor, consulte la documentación de Docker en
https://docs.docker.com.
FIGURA 6-1:
El Docker
envase
despliegue
proceso.
anteriormente, los Dockerfiles son documentos de texto sin formato, lo que significa que los equipos de desarrollo
pueden almacenarlos en el control del código fuente y realizar un seguimiento de sus cambios a lo largo del tiempo.
Suponga que Jane Developer necesita probar la aplicación de línea de negocio de su empresa
con tres versiones de base de datos MySQL. Iniciar tres máquinas virtuales independientes
suele ser un proceso lento y laborioso. Este dolor se vuelve mayor cuando necesita poner en
marcha y trabajar con varias instancias de cada instalación de MySQL basada en VM. Si el
sistema operativo invitado de la VM necesita una actualización o si MySQL requiere una
actualización, el proceso es aún más lento.
Por el contrario, Jane puede usar la interfaz de línea de comandos de Docker o una plataforma de
contenedor alojada para iniciar cualquier número de contenedores MySQL que ejecuten diferentes
versiones de software. Cuando termina de probar, se deshace de los contenedores con un solo
comando. Si MySQL necesita una actualización, ella o un compañero de equipo pueden simplemente
editar el Dockerfile y recompilar una imagen.
He pasado demasiado tiempo reconfigurando máquinas virtuales para que encajen en los
ecosistemas de diferentes proveedores de nube. Con Docker, tiene un formato universal que
funciona en cualquier nube que admita Docker.
4. Reinicia tu computadora.
El instalador requiere que cierre la sesión y reinicie para instalar las funciones de Hyper-V y
Contenedores de Windows 10.
Haga clic con el botón derecho en el icono de Docker y verá todo tipo de opciones en el menú de
acceso directo (incluido Cambiar a Contenedores de Windows si olvidó habilitar esa función
durante la instalación). La figura 6-2 muestra Cambiar a contenedores de Linux, que Docker
muestra si actualmente está configurado para contenedores de Windows.
El servicio Docker debe ejecutarse con permisos elevados. Si descubre que Docker Desktop no
coloca su icono en su área de notificación, ejecute la aplicación desde el escritorio o el acceso
directo del menú Inicio como administrador.
haga clic con el botón derecho y elija Ejecutar como administrador en el menú de acceso directo.
Debería ver solo las propiedades Repositorio, Etiqueta, ID de imagen, Creado y Tamaño sin
imágenes. (Corrija esa situación en el paso 4). También puede usar Información de Docker para
ver más metadatos condensados.
(b) Docker emite un comando de extracción para recuperar la última versión de hello-world
imagen de Docker Hub.
se ejecutó la imagen. En el mundo real, es posible que desee que los contenedores Docker se ejecuten
6. Correr ciruela de contenedor docker para retirar todos los contenedores detenidos.
En este caso, solo tiene un contenedor. Repetición docker ps -a para verificar que el
contenedor se haya ido.
¡Fresco! Con este recorrido relámpago de Docker, ha visto que el flujo de trabajo del usuario
normal con contenedores es
1. Extraiga las imágenes del contenedor según sea necesario desde un repositorio central.
Discutiré cada opción brevemente antes de que se ensucie las manos con las tecnologías.
Aquí, estoy hablando de iniciar una máquina virtual de Linux o Windows Server en una red
virtual de Azure, instalar el demonio de Docker y lanzar contenedores de Docker desde allí.
Aunque esta estrategia funciona, para mí tiene poco sentido en la mayoría de las
circunstancias, dados los recursos de la Plataforma como servicio (PaaS) que ya están
disponibles y listos para su consumo.
Azure Container Instances (ACI) es para profesionales de Azure que necesitan ejecutar
contenedores Docker rápidamente sin preocuparse por la sobrecarga de instalar y mantener el
daemon y el cliente de Docker. ACI es excelente para trabajos de contenedores únicos, en los
que la administración y la orquestación centralizadas son innecesarias.
A estas alturas, ya conoce Docker Hub, el repositorio de imágenes públicas alojado por Docker.
Microsoft publica la mayor parte de sus imágenes de contenedores de acceso público en
Docker Hub. Por otro lado, Azure Container Registry (ACR) está diseñado para empresas cuyos
equipos necesitan un registro de imágenes central y privado desde el que puedan trabajar con
sus propias imágenes internas de Docker.
En pocas palabras, AKS es el servicio de clúster de Kubernetes alojado en Azure. Aún puede trabajar
con las herramientas de cliente nativas de Kubernetes, como la interfaz de usuario web y el cliente de
línea de comandos kubectl, pero puede aprovechar la integración perfecta con otros servicios y
características de Azure.
Azure App Service es un servicio de aplicaciones web alojadas en Azure que se puede integrar con
aplicaciones basadas en contenedores de Docker. App Service, que analizo en el Capítulo 7, le permite
fácilmente
Por lo tanto, Web App for Containers combina la agilidad de los contenedores con la potente
plataforma App Service PaaS.
Es hora de iniciar sesión en Azure Portal y profundizar en cada uno de estos recursos de Azure
relacionados con Docker. Esta sección cubre las siguientes tareas:
» Definición de una nueva instancia de contenedor con Internet disponible públicamente de Microsoft
Contenedor de servidor web de servicios de información (IIS) de Docker Hub
Siga estos pasos para implementar un contenedor de Windows Server basado en IIS con una dirección
IP pública:
búsqueda global.
2. Complete la pestaña Básicos, que aparece de forma predeterminada y se muestra en la Figura 6-3.
Haga clic en Siguiente para continuar.
FIGURA 6-3:
Implementar un
Contenedor Docker
usando el Azure
Envase
Servicio de instancia.
• Nombre y región del contenedor: El nombre debe ser único dentro de su grupo de
recursos. Seleccione la región de Azure más cercana a usted.
• Puertos: Debido a que está implementando un contenedor de servidor web, debe acceder al
puerto TCP 80 (HTTP) en el contenedor.
• Etiqueta de nombre DNS: Este campo es opcional, pero es una buena idea proporcionar una etiqueta
de nombre que reconocerá en caso de que su dirección IP pública cambie por algunos
razón. Tenga en cuenta que este nombre de host debe ser único a nivel mundial, por lo que es
4. Envíe la implementación.
Para hacerlo, haga clic en Revisar + Crear y luego haga clic en Crear.
Verificación y eliminación de la
instancia del contenedor
Siga estos pasos para familiarizarse con la experiencia de ACI Azure Portal y verificar la
conectividad a su nuevo contenedor IIS:
Si todo va bien, debería ver la página de prueba azul de Windows Server IIS. Si es así,
ha lanzado un contenedor accesible por Internet.
6. En la ventana Elegir comando de inicio, escriba / bin / bash y luego haga clic en
Conectar.
Cuando llegue a un símbolo del sistema, puede usar herramientas de línea de comandos
para realizar tareas como copiar archivos al contenedor y descargar archivos de
configuración. La figura 6-4 muestra el contenedor en ejecución superpuesto sobre los
metadatos de la instancia ACI en Azure Portal.
FIGURA 6-4:
Ejecutando el IIS
servidor web como
contenedor con
el servicio ACI.
Lo que quiero que piense a continuación es qué sucede si su equipo desea usar sus propias
imágenes personalizadas de Docker en lugar del Docker Hub público.
¡Gran pregunta! Puede hacerlo con el ACR, que es la siguiente parada en este viaje en tranvía
Docker-inAzure.
Almacenamiento de imágenes en
Azure Container Registry
Quiero ser respetuoso con el ancho de banda de su red, por lo que en esta sección, enviará el
contenedor hello-world (relativamente) pequeño que extrajo de Docker Hub en una sección
anterior a su nuevo registro de contenedores.
Azure Container Registry (ACR) es un repositorio alojado en la nube para imágenes de Docker. ACR
proporciona una ubicación de almacenamiento / administración centralizada para las imágenes de su equipo;
estas imágenes solo son accesibles para los usuarios de Azure a los que otorgue los permisos adecuados.
Antes de enviar un contenedor a ACR, debe implementar el registro. Sigue estos pasos:
Necesitará este nombre DNS en la siguiente sección, donde enviará una imagen de
contenedor al registro. El registro toma el nombre < su-nombre-de-registro>.
azurecr.io.
2. Abra una sesión de símbolo del sistema e inicie sesión en su registro de contenedores
utilizando la inicio de sesión de Docker mando.
Proporcione el nombre corto del registro (twwiley, en mi caso) como nombre de usuario y la
contraseña copiada previamente como contraseña. Aquí está el comando:
credenciales de
nuestro Azure
Envase
Registro.
La cantidad de tiempo que lleva este proceso depende del ancho de banda de
su red ascendente a Azure.
demasiadas opciones para lo que puede hacer con esta imagen de contenedor. La implicación es que
interactuará con la imagen mediante el uso de la CLI de Docker, una herramienta de automatización o
Una vez que haya colocado una imagen de Docker en un registro, puede usar el estirar del estibador
comando para descargar la imagen y generar contenedores en su sistema local basado en la
imagen.
En esta sección, ejecutará la imagen del contenedor hello-world alojada en el registro desde el
servicio ACI. Para hacerlo, siga estos pasos:
La Figura 6-6 muestra una implementación de ACI fallida. La pancarta explica el problema en un
lenguaje sencillo. En este caso, se especificó Linux como tipo de contenedor en lugar de Windows.
También puede hacer clic en Detalles de la operación para obtener comentarios más detallados de
ARM.
FIGURA 6-6:
No tengas miedo
cuando un Azure
la implementación falla.
Leer el error
mensajes, y
Aprende de ellos.
Otro lugar para investigar los detalles de la implementación (correcta o fallida) es la hoja
Grupos de recursos en Azure Portal. Abra un grupo de recursos y navegue hasta la hoja
Implementaciones. Cada implementación en Azure se registra para su referencia y / o el placer
de solucionar problemas.
Todo lo que he explicado sobre el soporte de contenedores en Azure está muy bien, pero,
francamente, ACI tiene un defecto fatal: no tiene orquestación. Es muy probable que sus
desarrolladores necesiten implementar varios contenedores simultáneamente y administrarlos como
un grupo. Su empresa también puede requerir que sus contenedores sean capaces de escalar
horizontalmente para adaptarse a la carga de usuarios y tener una alta disponibilidad. En otras
palabras, el servicio ACI está bien para implementaciones de contenedores relativamente simples,
pero necesitará una plataforma de orquestación de contenedores para cualquier cosa más allá de los
casos de uso de contenedores más básicos en las empresas.
Para cumplir estos requisitos y más, necesita una plataforma de orquestación de contenedores,
como AKS.
Los desarrolladores no necesariamente inician contenedores porque son divertidos de usar; los
desarrolladores inician contenedores porque son prácticos. Los contenedores alojan componentes de
aplicaciones, como servidores web o servidores de bases de datos, y luego forman soluciones de
aplicaciones. Por eso, quiero que relates las palabras envase y solicitud de ahora en adelante.
Arquitectura AKS
La figura 6-7 muestra los elementos básicos de AKS:
» Nodo trabajador: En AKS, los nodos de trabajo son las VM que componen su
grupo. El clúster le brinda mucha computación paralela, la capacidad de moverse
pods entre nodos fácilmente, para realizar actualizaciones continuas de nodos sin
eliminar todo el clúster, etc. Una opción es usar ACI para que sirva como nodos de
trabajo.
La Figura 6-7 también muestra ACR, del cual AKS puede extraer imágenes almacenadas. ¿No es atractiva
» Vaina: El pod es la unidad desplegable más pequeña del ecosistema AKS. Una vaina
contener un contenedor Docker, o puede contener un montón de contenedores que
necesitan permanecer juntos, comunicarse entre sí y comportarse como una
unidad cohesiva.
Desde la perspectiva del plano de la aplicación, Microsoft quería asegurarse de que los clientes no tuvieran
que aprender un nuevo conjunto de herramientas para trabajar con contenedores en AKS.
az aks install-cli
De hecho, la CLI de Azure parece tomar prestado bastante de la sintaxis de kubectl en términos del flujo de
trabajo del comando de contexto de la aplicación. Para enumerar sus pods (contenedores) en ejecución con
kubectl, por ejemplo, ejecute
La interfaz de usuario web de Kubernetes es un panel gráfico que brinda a los administradores y
desarrolladores una sólida superficie de control. La figura 6-8 muestra la interfaz.
FIGURA 6-8:
Los Kubernetes
Interfaz de usuario web
Tablero.
Una vez más, debe usar la CLI de Azure para conectarse al panel; hacerlo no es posible desde
Azure Portal. Aquí está el comando relevante:
La az aks navegar comando crea un proxy entre su estación de trabajo y el clúster de AKS que
se ejecuta en Azure; proporciona la URL de conexión en su salida. La URL de conexión típica es
http://127.0.0.1:8001.
"Pero no puede alojar aplicaciones que no sean de .NET en App Service, ¿verdad?" usted pregunta. Eso es
incorrecto, estoy feliz de informar. Sus contenedores pueden usar cualquier entorno de tiempo de ejecución
admitido, incluidos los siguientes:
». NET Core
» Node.js
» PHP
» Java
» Pitón
» Rubí
Este procedimiento usa Cloud Shell en Azure Portal. Para crear una nueva aplicación web de
Azure App Service que use un contenedor de Linux extraído de Docker Hub como base de
código, siga estos pasos:
Aunque está creando esta aplicación web de App Service mediante la CLI de Azure,
podría haber usado Azure Portal, PowerShell, un kit de desarrollo de software (SDK) o
la API REST de Azure. Debido a que Microsoft realiza muchas actualizaciones en el
portal de Azure, es mejor que se concentre principalmente en la CLI de Azure o
PowerShell para tener un entorno de implementación más estable y familiar.
5. Busque la aplicación.
El formato de la URL para proyectos es http: // http: // < nombre_aplicación>. azurewebsites. net /
hola. Use esa dirección (sustituyendo el nombre de su propia aplicación).
FIGURA 6-9:
Una nueva web de Azure
aplicación impulsada por
un contenedor Docker.
relacionales en Azure
» Habilitación de la telemetría
Capítulo 7
Despliegue y
Configuración de Azure
AppServiceApps
O está observando las caras de mis clientes cuando descubren el poder y la agilidad de los
recursos
Uno
entre ellos.
de misdemuchos
la Plataforma como
placeres serviciocomo
al trabajar de Azure (PaaS);
consultor deAzure App Service
soluciones es el jefe
de Microsoft Azure
Azure App Service lo libera para concentrarse en sus aplicaciones de línea de negocio en lugar
de administrar la infraestructura de VM. App Service proporciona hiperescala y se integra
perfectamente con otros productos de Azure, como cuentas de almacenamiento y bases de
datos de Azure SQL Database.
Sí, App Service usa máquinas virtuales (VM) bajo el capó, pero nunca tendrá que preocuparse
por mantenerlas; Microsoft lo hace por ti. En cambio, se concentra casi exclusivamente en su
código fuente y su aplicación.
MARCOS DE DESARROLLO Y
ENTORNOS INFORMÁTICOS
No puedo dedicar espacio en este libro a la programación, pero debe saber que App Service
admite varios marcos de desarrollo, incluidos los siguientes:
• . NET Framework
• . NET Core
• Java
• Rubí
• Node.js
• Pitón
• PHP
Puede usar cualquiera de los siguientes como su entorno informático subyacente en App
Service:
• VM de Windows Server
• VM Linux
• Contenedor Docker
Aplicaciones web
Lo estático o dinámico Aplicación web es la opción más utilizada en App Service. Sus
aplicaciones web alojadas se pueden vincular a bases de datos locales o en la nube, servicios
web API y redes de entrega de contenido.
Aplicaciones API
Aplicaciones móviles
A aplicación movil proporciona el back-end para una aplicación iOS o Android. Las aplicaciones móviles de Azure
proporcionan características que la mayoría de los consumidores de teléfonos inteligentes esperan como parte de las
aplicaciones móviles que usan, como el inicio de sesión en las redes sociales, las notificaciones push y la sincronización
Aplicaciones lógicas
A aplicación lógica proporciona una forma para que los desarrolladores creen flujos de trabajo
comerciales sin tener que conocer todas las API subyacentes en los diferentes servicios. Puede crear
una aplicación lógica que se active cada vez que alguien mencione el nombre de su empresa en
Twitter, por ejemplo. Luego, esta aplicación puede realizar varias acciones, como publicar un mensaje
de notificación en el canal Slack de su departamento de ventas o crear un registro en su base de datos
de administración de relaciones con los clientes.
Aplicaciones de función
A aplicación de función permite a los desarrolladores ejecutar código específico en momentos específicos sin
preocuparse por la infraestructura subyacente. Es por eso que las aplicaciones de función se llaman
sin servidor aplicaciones, o C oda como servicio (CaaS) soluciones. Uno de mis clientes de consultoría
tiene una aplicación funcional que envía un mensaje de correo electrónico de confirmación a un
cliente potencial cada vez que ese usuario crea una nueva cuenta en su sitio web.
desencadenador podría ser un comando de ejecución manual, una programación de tiempo o una operación discreta
FIGURA 7-1:
Servicio de aplicaciones
requerido y
Opcional
componentes.
En la Figura 7-1, el plan de App Service es el único componente necesario. Puede ampliar las
capacidades de la aplicación integrándola con cualquiera de los siguientes:
» Cuenta de almacenamiento: Un plan de App Service tiene almacenamiento persistente, pero muchos
a los desarrolladores les gusta usar una cuenta de almacenamiento flexible para obtener espacio adicional.
» Red virtual: Puede vincular una aplicación de App Service a una red virtual:
quizás para conectar su aplicación web a una base de datos que se ejecuta en una máquina virtual.
» Bases de datos: En la actualidad, la mayoría de las aplicaciones web usan relaciones relacionales, no relacionales y / o
Bases de datos en memoria para almacenar datos temporales o persistentes.
experiencia mucho más rápida porque sus navegadores extraen el contenido de su sitio desde una
Los planes de App Service se organizan en tres niveles cada vez más potentes (y costosos):
» Desarrollo / Prueba: VM de las series F y B con cálculo mínimo y sin funciones adicionales.
Este nivel de cómputo es el menos costoso, pero ofrece pocas funciones y no debería
ser utilizado para aplicaciones de producción.
Puede moverse dentro o entre niveles según sea necesario. Esta capacidad es uno de los mayores atributos de los
FIGURA 7-2:
Un servicio de aplicaciones
el plan proporciona
cálculo sin procesar
como autoescala
y despliegue
ranuras.
Azure usa Azure Compute Unit como método estandarizado para clasificar la potencia informática.
Verá que se hace referencia en las máquinas virtuales de Azure, App Service y cualquier otro recurso
de Azure que use máquinas virtuales. Tener una métrica de rendimiento estandarizada es crucial,
porque Microsoft usa varios tipos de hardware en sus centros de datos.
Puede descargar y usar Visual Studio 2019 Community Edition de forma gratuita; tomar
el software en https://visualstudio.microsoft.com/vs.
Para este ejercicio, elija la plantilla ASP.NET Empty Web App. Esta aplicación web
contiene un código de ejemplo para darle algo para mirar e interactuar.
• Plan de servicio de la aplicación / ubicación: Cree un nuevo plan de App Service en la ubicación de
su hogar. Elija S1 Standard, que es el tamaño de instancia de VM más pequeño que
Aplicación Web.
Configurando Git
Git es un sistema de control de versiones multiplataforma, de código abierto y gratuito, inventado por
el creador de Linux Linus Torvalds. Es un sistema distribuido en el que cada desarrollador tiene una
copia completa del repositorio; opcionalmente, los desarrolladores envían sus cambios a un
repositorio de origen ascendente.
La idea del control del código fuente es simple: varios desarrolladores envían cambios a una única
base de código compartido. ¿Cómo se conserva el historial del código, se sabe qué desarrollador hizo
qué cambio y cómo se evita que los desarrolladores intervengan en el trabajo de los demás? Git
resuelve estos problemas.
Incluso si su rol laboral no es el de desarrollo, debe familiarizarse con Git, ya que afecta a casi
todo tipo de trabajo de Azure. Puede encontrar muchos tutoriales prácticos e interactivos de Git
en línea; Échales un vistazo para ver cuál se adapta mejor a tu estilo de aprendizaje. También
podrías leer GitHub para tontos, por Sarah Guthals y Phil Haack (John Wiley & Sons, Inc.).
Git encaja perfectamente con Azure App Service; de hecho, las aplicaciones de App Service pueden alojar su propio
Servicio.
Quiero mostrarte cómo puedes combinar Git con App Service. Visual Studio 2019 Community
Edition incluye un cliente Git. Para usarlo para configurar Git para su uso con App Service, siga
estos pasos:
1. Abra Visual Studio y haga clic en el botón Continuar sin código en la ventana
Inicio.
5. En el panel Configuración de Git, complete los campos Nombre de usuario y Dirección de correo
7. Deje las otras opciones de Git en su configuración predeterminada y haga clic en el botón Inicio
FIGURA 7-5:
Asegurando que
Visual Studio
usar Git como fuente
versión del código
control.
Siga estos pasos para crear un repositorio de Git local para el código fuente de muestra de su aplicación web:
FIGURA 7-6:
Agregar un repositorio de
Git local a un
Servicio de aplicaciones de Azure
Aplicación web.
Por lo general, las URL de clonación de Git terminan con. git extensión de archivo. Mi URL de clonación de Git
https://wileywebapp1.scm.azurewebsites.net:443/wileywebapp1.git
Anote tanto el nombre de usuario como la contraseña, ya que los necesitará para el
siguiente paso.
Una operación de clonación es simplemente una copia de archivo; en este caso, está copiando
el código basado en Azure en su equipo local.
12. Asigne un nombre a la versión local, como 1.0, y una ubicación para guardar.
13. Seleccione la plantilla vacía.
14. Deje todas las demás configuraciones en sus valores predeterminados y haga clic en Aceptar.
FIGURA 7-7:
Trabajando con
un servicio de aplicaciones
aplicación web en
Estudio visual.
App Service también es compatible de forma nativa con los siguientes sistemas de control de versiones de código:
• Azure Repos
• GitHub
• Bitbucket
• OneDrive
• Dropbox
• Externo
• FTP
Una vez que haya realizado un cambio en Visual Studio, debe enviar ese cambio de código a
Azure. Siga estos pasos para cambiar la página de inicio de la aplicación web y enviar todos los
cambios a Azure:
1. En el Explorador de soluciones, haga clic en el botón Cambiar vistas (consulte la Figura 7-7) para
cambiar a la vista Carpeta.
2. Abierto Default.cshtml.
3. En la línea 3, cambie el código a lo siguiente:
Page.Title = "Página de inicio del espacio de producción"
la página en caché), debería ver la página de inicio del espacio de producción en lugar de la página de
inicio.
Como alternativa, puede inspeccionar el código fuente mediante el Editor de App Service. Seleccione App
Service Editor en la lista de Configuración de su aplicación web y luego haga clic en Ir para ver sus
archivos de origen en App Service Editor (vea la Figura 7-9). La capacidad de editar el código fuente de su
FIGURA 7-9:
Servicio de aplicaciones
Editor te permite
para editar tu
código fuente en
el portal de Azure.
9. Para finalizar la sesión de depuración, cierre la pestaña del navegador que aloja la aplicación.
1. En el Explorador de soluciones, haga clic con el botón derecho en su proyecto y elija Publicar en el
Menú breve.
• VM de IaaS de Azure
• IIS, FTP
• Carpeta
2. Seleccione App Service como su destino de publicación, seleccione Crear nuevo y luego
haga clic en Publicar (consulte la Figura 7-10).
FIGURA 7-10:
Publicando un
aplicación web a Azure
Servicio de aplicaciones.
hablo en la sección "Supervisión de una aplicación web" más adelante en este capítulo.
Visual Studio usa un método llamado Web Deploy para realizar la publicación de la aplicación
web. Básicamente, Visual Studio empaqueta su aplicación y sus dependencias en un archivo
ZIP; transfiere el paquete a Azure; y lo entrega al servicio de compilación Kudu, que implementa
la aplicación web en App Service.
Las ranuras de implementación le brindan esta capacidad. Siempre que su plan de App Service se ejecute al menos en
el nivel S, puede crear una o más ranuras de implementación adicionales para satisfacer sus necesidades de
preparación de aplicaciones. La Figura 7-11 muestra cómo funcionan las ranuras de implementación.
Cada aplicación de App Service comienza con una ranura de implementación denominada
(adecuadamente) Producción. En la hoja Deployment Slots, puede crear otra ranura y clonar la
configuración de la aplicación desde la ranura de producción.
FIGURA 7-11:
Ranuras de implementación
permitirte
moverse entre
desarrollo,
puesta en escena, y
producción
ambientes
sin problemas.
Cuando trabajo con el espacio de producción de la aplicación web, la URL que uso es
https://app.azurewebsites.net
https://app-dev.azurewebsites.net
Puede ver este comportamiento en Azure Portal si examina la Figura 7-12. Azure pone un gran
énfasis en la PRODUCCIÓN, la ranura de implementación predeterminada. Esta es su ranura
predeterminada y no se puede eliminar.
Recuerde, la razón principal por la que utiliza las ranuras de implementación es para realizar
implementaciones por fases de su aplicación App Service. Sus desarrolladores trabajan en la ranura de
desarrollo, por ejemplo, y luego realiza un intercambio de ranura para mover el código cambiado a la ranura
de producción de cara al público.
FIGURA 7-12:
Cada despliegue
ranura es una instancia
separada de su
Aplicación Web.
Como se muestra en la Figura 7-13, puede realizar un cambio de ranura en cualquier dirección desde
la hoja Deployment Slots de su aplicación web. Lo bueno de este proceso es que Azure Portal le
muestra qué configuraciones cambiarán después del intercambio. Puede tener diferentes cadenas de
conexión de base de datos almacenadas en cada ranura, por ejemplo; en ese caso, no querrá que el
intercambio afecte la configuración específica de la ranura.
FIGURA 7-13:
El portal de Azure
te dio
visibilidad en el
ramificaciones de un
ranura de implementación
intercambio.
Hablando de eso, la opción Realizar intercambio con vista previa hace que el intercambio sea una
operación de dos fases. En la primera fase, verá qué configuraciones específicas de la ranura
cambiarán si completa la operación de intercambio. En la segunda fase, puede cancelar o continuar
con el cambio de ranura.
En esta sección, le muestro algunas de las opciones de configuración más comunes para las
aplicaciones web de App Service.
» Configuraciones de la aplicación: Pares clave / valor relacionados con la aplicación; fuente de datos
cadenas de conexión
» Documentos predeterminados: ¿Qué tipos de archivos debe buscar Azure cuando se determina
ing documento (s) de visualización de la aplicación web predeterminada
» PathMappings: Controladores de mapeo (procesadores de secuencias de comandos) para diferentes tipos de archivos
El tema principal de PaaS es que renuncia al control total de la pila de la VM subyacente a cambio de
una escala y agilidad masivas. Estos ajustes de configuración, junto con cualquier código fuente
relacionado con la configuración que agreguen sus desarrolladores, son lo más cercano que puede
llegar a la configuración del servidor bajo el capó.
Tenga en cuenta dos factores clave cuando configure estos ajustes de la aplicación:
Microsoft define todas sus aplicaciones de App Service en su propio dominio del Sistema de nombres
de dominio (DNS) azurewebsites.net. Eso es conveniente en la medida en que puede aprovechar las
conexiones HTTP por cortesía del certificado digital TLS / SSL comodín * .azurewebsites.net de
Microsoft. Pero es probable que desee agregar su propio dominio DNS.
Siga estos pasos para agregar su propio dominio DNS a su aplicación web:
y seleccione Configuración.
A menos que o hasta que esté utilizando su propio certificado de Capa de conexión segura (SSL)
que coincida con su dominio personalizado, no desea aplicar HTTPS.
2. Haga clic en Agregar dominio personalizado, agregue su nombre de dominio y haga clic en Validar.
Aparece la hoja Agregar dominio personalizado.
Estoy diciendo lo obvio, creo, pero este dominio debe ser un dominio DNS de su
propiedad, o al menos uno para el que tenga acceso al archivo de zona.
3. Edite su archivo de zona DNS para agregar un registro de recursos de verificación / mapeo.
Lo que está haciendo es demostrarle a Microsoft que es el propietario del dominio en cuestión.
Este proceso requiere que inicie sesión en el sitio web del registrador de su dominio y agregue
un registro de recursos a su zona.
Para demostrar la propiedad del dominio, debe crear un registro de recursos DNS
temporal. Azure comprueba su dominio para ver si existe el registro. Si es así, Azure
"sabe" que debe ser propietario del dominio porque solo los propietarios pueden
agregar registros de recursos a su propio dominio.
• Anfitrión (A) Registro: Aconsejo no seleccionar esta opción, que asigna su dominio
personalizado al Protocolo de Internet (IP) público de su aplicación web. El problema es
que la resolución de su nombre se romperá si Microsoft le entrega a su aplicación una nueva
dirección IP pública.
• Registro CNAME: Recomiendo seleccionar esta opción porque está mapeando el DNS de su
dominio personalizado para que apunte al nombre de host DNS de su aplicación web.
bajo azurewebsites.net. La asignación sigue siendo válida incluso si Microsoft cambia la
dirección IP pública de su aplicación.
Por supuesto, debe comprar su propio dominio para realizar estas acciones por su
cuenta.
4. Cuando se complete la validación, haga clic en Agregar dominio personalizado para completar la
proceso.
La Figura 7-14 muestra una configuración de dominio completa. Tome nota de los siguientes
elementos importantes:
» El dominio está listo para usar, pero no se puede usar con SSL hasta que vincule un
certificado SSL coincidente. Azure Portal lanza todo tipo de advertencias aterradoras,
como ves.
FIGURA 7-14:
Agregar una costumbre
dominio a tu
Aplicación App Service
es lindo, pero tu
quiero un SSL
certificado para llevar
con eso.
1. En la configuración de la aplicación web, navegue hasta la hoja Configuración de TLS / SSL y haga clic en
Agregar enlace TLS / SSL.
6. En la hoja de enlace TLS / SSL, seleccione la huella digital del certificado privado
y el tipo TLS / SSL y haga clic en Agregar enlace para completar la configuración.
En la mayoría de los casos, elegirá SSL basado en IP como su tipo de TLS / SSL. Utilizará el SSL
de indicación de nombre de servidor cuando su certificado digital proteja más de un nombre
DNS definido explícitamente.
FIGURA 7-15:
Esta aplicación web es
listo para rockear con ambos
DNS personalizados
y TLS / SSL en
operación.
En los viejos tiempos, si deseaba que sus servidores web públicos locales manejaran un pico de
uso previsto, normalmente compraba hardware nuevo. Este tipo de gasto de capital es un
desperdicio gigante si el hardware no es necesario cuando el pico disminuye.
Para comodidad de sus clientes, Microsoft se asoció con GoDaddy para vender dominios DNS públicos
directamente desde Azure a través de un servicio llamado App Service Domains. Agregar dominios a los
productos de Azure es casi llave en mano si compra el dominio a través de este servicio. El servicio DNS de
Azure le permite hospedar los dominios DNS que compró en otro lugar de Azure.
En lugar de comprar hardware nuevo, puede configurar el ajuste de escala manual o automático para las aplicaciones
de App Service.
Es posible que deba ampliar (verticalmente) su plan de App Service antes de que las funciones
avanzadas como dominios personalizados, certificados SSL y reglas de ajuste de escala automático
estén disponibles para usted. Mientras escribo esto, por ejemplo, necesita al menos el plan S1 para
usar dominios personalizados y SSL y poder escalar automáticamente hasta diez instancias idénticas.
Suponga que desea configurar su aplicación web para escalar horizontalmente de una a tres
instancias, según la carga de CPU del plan de App Service durante un período de 10 minutos.
Igual de importante, desea reducir la escala a su número mínimo cuando se estabilice el pico
de uso. Para completar esa configuración, siga estos pasos:
1. En la configuración de su aplicación web, seleccione Escalar horizontalmente (plan de App Service) y luego
haga clic en CustomAutoscale.
Aparecen las opciones de Customautoscale. Observe también la opción Escalado manual, que indica a
Azure Resource Manager que genere instancias de aplicaciones web idénticas sin interferir con las
2. Para Scalemode, seleccione Scale Based on aMetric y configure los límites de instancia.
Es importante comprender la diferencia entre las tres opciones de límite de
instancias:
• Mínimo: La menor cantidad de instancias que desea ejecutar. Tenga en cuenta que
se le cobra por cada instancia.
• Defecto: El valor que Azure usa como respaldo si no puede calcular una métrica.
Una regla de escala también se llama condición de escala. Utilice la siguiente configuración como
• Duración: 10 minutos
condición de escala para definir el escalado horizontal de la aplicación web, pero no se olvide de
5. Seleccione Agregar una escala para crear una nueva regla métrica que reduzca la escala
clúster cuando el uso de la CPU alcanza el 40 por ciento o menos.
Le aconsejo que cambie el nombre de las entradas de condición de la báscula para que sean significativas para
usted y su equipo. Haga clic en el icono de lápiz junto a una entrada para editarla.
En esta sección, explico brevemente cómo monitorear sus aplicaciones de App Service
mediante Application Insights, una plataforma de administración del rendimiento de
aplicaciones alojada en Azure que brinda una visión rica y profunda de casi cualquier aplicación,
ya sea que la aplicación exista en Azure, en las instalaciones, o en otra nube.
Algunas de las inteligencias que Application Insights puede brindar a sus desarrolladores son las
siguientes:
» Tiempos de solicitud y respuesta y tasas de falla: Puedes ver qué aplicación web
las páginas son más o menos populares en diferentes momentos del día, así como desde
donde se conectan los usuarios.
mantenimiento o migraciones.
» Excepciones con análisis de código fuente: Puede seguir la salida de seguimiento de la pila para
líneas reales en su código fuente porque la telemetría de Application Insights se integra
directamente en su proyecto de Visual Studio.
» Cuadros de mando: Puede trazar sus datos de telemetría en formatos fácilmente digeribles.
» Perfilador: Puede seguir el funcionamiento de las solicitudes y respuestas de la aplicación web mediante
operación.
• Suscripción
• Grupo de recursos
• Nombre de instancia
• Región
El punto principal que quiero hacer es que, para garantizar la latencia más baja,
ubique su recurso de Application Insights en la misma región de Azure que la
aplicación web con la que se asociará.
Lamentablemente, en el momento de escribir este artículo, Application Insights no está disponible en todas las regiones
públicas. Puede que tenga que elegir la región más cercana a la región de su aplicación.
Siga estos pasos para conectar su instancia de Application Insights a una aplicación web de
Azure:
4. Completa el formulario.
Proporcione su cuenta de Azure, suscripción, nombre de recurso y nivel de precios.
» Estudio visual: Abra la barra de herramientas de Application Insights para explorar las funciones.
Si no ve la barra de herramientas, elija Ver ➪ Barras de herramientas ➪ Perspectivas de la aplicación.
COO-stow) Lenguaje de consulta. Puede consultar Application Insights en combinación con casi
cualquier otro recurso en Azure desde un punto central. En la barra de herramientas de la hoja
Descripción general del recurso de Application Insights, haga clic en Registros (análisis).
FIGURA 7-16:
Solicitud
Telemetría de Insights
datos en Visual
Estudio.
FIGURA 7-17:
Solicitud
Telemetría de Insights
datos en el
Portal de Azure.
Capítulo 8
RunningServerlessApps
inAzure
T Azur. Empiezo por desmitificar la palabra de moda sin servidor y luego analice cómo crear
aplicaciones
este capítulofuncionales
se adentray en
aplicaciones lógicasmundo
el maravilloso en Azure.
de la informática sin servidor en
Definición de Serverless
El termino sin servidor recibe mucha atención hoy en día. ¿Qué significa? Intentaré cortar la
jerga de marketing y explicar el concepto de manera sucinta.
Las aplicaciones de App Service brindan mucha flexibilidad, ya que no tiene que administrar la
infraestructura subyacente, pero aún tiene que lidiar con una aplicación completa.
La idea detrás de las aplicaciones sin servidor es que Microsoft abstrae casi todo el entorno de
usted. Básicamente, puede cargar una única función de código fuente e indicar a Azure que la
ejecute en función de un evento desencadenante predefinido.
Tú y yo sabemos que no existe tal cosa como sin servidor en un sentido físico. Todas las aplicaciones
de App Service se basan en máquinas virtuales (VM) de Linux o Windows Server bajo el capó. El
término simplemente denota una capa de abstracción aumentada para los desarrolladores,
administradores y arquitectos de soluciones de Azure.
ejecuta por usted. Específicamente, Azure ejecuta su función en función de un desencadenador, que es un tipo de
evento. El evento podría ser un desencadenador iniciado manualmente, un desencadenador programado o alguna
A aplicación de función es un objeto contenedor; puede incluir una o más funciones de Azure individuales
dentro de la aplicación de funciones. El tiempo de ejecución de la aplicación y el cálculo existe en el nivel de la
aplicación de función y son compartidos por todas las funciones adjuntas.
A función es una sección con nombre de un programa que realiza una tarea específica. Normalmente, las
aplicaciones constan de múltiples funciones. Por el contrario, Azure Functions son bloques de código
individuales y con nombre cuyo ámbito está diseñado para realizar una acción muy bien.
» Plan de servicio de la aplicación: Este modelo de precios refleja el de las aplicaciones web de App Service.
El beneficio es un rendimiento más predecible porque tiene el control de la
potencia de cálculo subyacente.
No proporciono muchos detalles sobre los precios de Azure en este libro porque Microsoft modifica
los precios y los modelos de precios con frecuencia. Para obtener los últimos detalles, visite https: //
azure.microsoft.com/en-us/pricing/.
De forma predeterminada, las funciones operan sin estado, es decir, se activa una función, se ejecuta
el código fuente y la plataforma de la aplicación de funciones no presta atención al mantenimiento de
la persistencia.
Para adaptarse a las tareas de ejecución más prolongada que implican el estado, la capacidad de
establecer y reanudar la ejecución en los puntos de control y sobrevivir a los reinicios de VM, Microsoft
ofrece Durable Functions, que son extensiones de Azure Functions. Se integran con muchos patrones
de arquitectura de aplicaciones comunes y, en el momento de escribir este artículo, admiten los
lenguajes de programación C #, F # y JavaScript.
Me gusta describir Azure Functions como utilidades de estilo navaja suiza con las que los
programadores pueden automatizar el trabajo repetitivo sin la sobrecarga de toda una
aplicación web de interfaz de programación de aplicaciones (API). Azure Logic Apps resuelve
Si alguna vez ha oído hablar de Microsoft BizTalk Server, Logic Apps es esencialmente una variante de
BizTalk en la nube. Tanto BizTalk como Logic Apps incluyen una enorme biblioteca de conectores para
todo tipo de aplicaciones propias y de terceros.
Suponga que su departamento de recursos humanos necesita mover los datos de los
empleados de una plataforma de base de datos a otra y luego exportar los resultados
seleccionados a otra plataforma SaaS. Es muy probable que Logic Apps tenga conectores
integrados para cada plataforma. Logic Apps Designer es una superficie de control gráfico en la
que puede crear su flujo de trabajo.
La figura 8-1 ilustra el comportamiento de la aplicación lógica utilizando un escenario empresarial diferente.
FIGURA 8-1:
Aplicaciones lógicas
no requiere API
conocimiento
y usa un
arrastrar y soltar
diseño de flujo de trabajo
superficie.
La Figura 8-1 muestra que puede agregar lógica condicional a los flujos de trabajo de su aplicación
lógica. Puede reflejar con éxito cualquier lógica empresarial deseada, sin importar cuán simple o
compleja sea, sin comprender las API de diferentes proveedores.
Todas las aplicaciones lógicas, así como sus conectores, se describen en la notación de objetos
JavaScript (JSON). Por lo tanto, no es muy difícil para sus desarrolladores definir conectores de
Logic Apps personalizados si la biblioteca incorporada de Microsoft no tiene una aplicación en
particular. La restricción es que la aplicación en cuestión debe exponer una API RESTful que
admita el estándar OpenAPI.
Microsoft Flow es para usuarios finales empresariales cuyas organizaciones no están en Azure, mientras que
las Logic Apps son para usuarios finales empresariales o usuarios avanzados cuya organización está en Azure.
Curiosamente, puede integrar funciones y aplicaciones lógicas, utilizando cualquiera de las aplicaciones como
disparador y / o acción.
» "Pero, ¿qué constituye un detonante?" usted pregunta. Eso es evento: un peso ligero
notificación de un cambio de estado.
¿Qué sucede si desea realizar una acción automática en esas cargas? Aquí hay unos ejemplos:
En el momento de redactar este documento, Azure Functions incluye el siguiente desencadenador, entre otros:
Primero, debe crear la aplicación de función. A continuación, define la función en sí. Finalmente,
prueba y verifica que su función se active correctamente.
Siga estos pasos para implementar una nueva aplicación de función en Azure Portal:
• Nombre de la aplicación: Este nombre debe ser único porque las aplicaciones de función son parte de la
familia de servicios de aplicaciones y tienen nombres de DNS dentro de la red pública de Microsoft.
zona azurewebsites.net.
• Plan de hospedaje: El plan de consumo es un buen punto de partida. Puede cambiar esta
configuración más tarde si lo desea o necesita.
• Pila de tiempo de ejecución: Sus opciones incluyen .NET Core, Node.js, Python, Java y
PowerShell Core.
• Almacenamiento: Es necesaria una cuenta de almacenamiento de uso general para almacenar sus artefactos
de código.
• Perspectivas de la aplicación: Es una buena idea permitir que Application Insights obtenga
tanta telemetría de back-end como pueda desde su aplicación de función.
En el momento de escribir este artículo, Microsoft ofrece una vista previa de una nueva experiencia de
creación para Azure Function Apps. Por lo tanto, no se sorprenda si ve la nueva experiencia en lugar
de la que muestro en la Figura 8-3. Las opciones de configuración son las mismas, pero se presentan
de manera diferente. El cambio en Azure Portal es una cosa en la vida de la que siempre puede
confiar.
Definición de la función
El siguiente paso en el flujo de trabajo de creación de funciones de Azure es definir la función en sí. En
mi experiencia, no mucha gente encuentra intuitiva la interfaz de usuario no estándar de la aplicación
Function. En absoluto. La Figura 8-4 explica lo que está sucediendo.
» Las aplicaciones de función admiten ranuras de implementación (D); sirven al mismo propósito que
ranuras de implementación para aplicaciones web de App Service y admiten el intercambio de ranuras.
» Configuración de la aplicación de función (E) es donde especifica la configuración de una aplicación de función,
Función o Proxy, según el contexto.
Antes de crear la función, debe crear el contenedor de blobs de imágenes que necesitará para
este ejemplo de carga del sitio web. Si tiene instalado Azure Storage Explorer, ¡continúe! Si no
es así, consulte el Capítulo 3 para obtener detalles sobre cómo instalarlo.
interfaz de usuario
no estaba pagando
atención a cómo
el resto de
Portal de Azure
se comporta.
Azure Storage Explorer es una aplicación de escritorio multiplataforma gratuita que facilita el
trabajo con cuentas de almacenamiento de Azure. Obtenga la herramienta en https: // azul.
microsoft.com/en-us/features/storage-explorer/.
Siga estos pasos para crear un contenedor de blobs para la nueva función:
Azure crea el contenedor y coloca el cursor junto a él, todo listo para que le asigne un
nombre al nuevo objeto.
3. Asigne un nombre a las imágenes del contenedor y presione Entrar para confirmar.
Creando la función
Excelente. Ya casi has terminado. Ahora necesitas crear una función. Sigue estos pasos:
4. En el panel Crear una función, haga clic en Más plantillas y haga clic en Finalizar y ver
plantillas.
FIGURA 8-5:
Creando un
Función en el interior
el portal de Azure.
5. Haga clic en Ver plantillas para ver la galería de desencadenadores de funciones de Azure.
6. En la galería, seleccione el desencadenador de Azure Blob Storage.
Probablemente se le pedirá que instale la extensión de Azure Storage; haga clic en Instalar y deje
que se complete el proceso.
• Ruta de activación de Azure Blob Storage: Esta configuración es importante. Quieres dejar el
{ nombre} un poco solo porque es una variable que representa cualquier carga
gota. El camino debería verse así:
images / {nombre}
función.
public static void Run (Stream myBlob, nombre de cadena, registro de ILogger) {
Este código dice "Cuando se activa la función, escribe el nombre y el tamaño del blob en el
registro de la consola". Este ejemplo es simple para que pueda concentrarse en cómo
funcionan las funciones en lugar de atascarse en la semántica del lenguaje de programación.
Pruebas
Todo lo que tiene que hacer para probar su función es seguir estos pasos:
Técnicamente, puede cargar cualquier archivo, imagen o de otro tipo, porque todos los
archivos se consideran blobs.
FIGURA 8-6:
Nuestro Azure
Función en
acción.
Antes de hablar sobre las aplicaciones lógicas, quiero asegurarme de que comprende cómo modificar
la configuración de la aplicación de funciones. Es posible que desee cambiar del plan de precios de
Consumo a App Service, por ejemplo, o viceversa. O tal vez desee probar un entorno de tiempo de
ejecución diferente.
Tengo dificultades para navegar por los blades de configuración de la aplicación de función, principalmente
porque son completamente diferentes del resto de la interfaz de usuario de Azure Portal. También creo que
hay algo de redundancia en los lugares donde se encuentran algunos controles de configuración
Debe estar en el alcance de la aplicación de función (por encima de Funciones en la interfaz de usuario de
navegación). Puede ver esta convención en la Figura 8-7.
» Descripción general: Utilice esta hoja para detener, iniciar y reiniciar la aplicación de funciones. Tu también
puede descargar todo el contenido del sitio para su uso con un desarrollo integrado local
ambiente.
» Características de la plataforma: Esta hoja es donde se clasifican la mayoría de los ajustes de la aplicación de funciones.
Riesgos residen.
» Configuración de la aplicación de función: Desde esta hoja, puede ver la cuota de uso y
administrar claves de host.
FIGURA 8-7:
Comprensión
la relación
Entre los
Función App y
está cerrado
Funciones.
Suponga que el departamento de marketing de su empresa desea recibir una notificación cada
vez que un cliente actual o potencial menciona su nombre corporativo en Twitter. Sin Logic
Apps, sus desarrolladores tendrían que registrarse para obtener una cuenta de desarrollador
de Twitter y una clave de API, después de lo cual tendrían que sumergirse en la API de Twitter
para comprender cómo integrar Twitter con su plataforma de notificación corporativa.
En su lugar, sus desarrolladores pueden configurar una aplicación lógica para que se active en determinados tweets de
Twitter y envíe un mensaje de correo electrónico a un buzón de correo de Outlook sin conocer las API de Twitter u
Office 365. La Figura 8-8 muestra un flujo de trabajo para esta aplicación lógica.
FIGURA 8-8:
El flujo de trabajo para
un azur
Aplicación lógica.
Vas a crear una aplicación lógica que se activa cuando se menciona la palabra clave Azur
en tweets públicos. La acción resultante envía notificaciones por correo electrónico a una dirección de correo
electrónico designada. Desarrollarás tu aplicación lógica en tres fases:
predeterminada.
Si desea seguir este ejercicio, necesita cuentas de Twitter y Office 365. Las cuentas de Twitter
son gratuitas, pero Office 365 suele ser un producto SaaS de pago. Si lo desea, use otra cuenta
de correo electrónico (como Gmail). La biblioteca de conectores de Logic Apps es tan amplia
que es muy probable que encuentre un servicio que funcione para usted.
• Intervalo: 1
• Frecuencia: Minuto
Configurar una aplicación lógica para que se active con la palabra clave Azur genera lote de eventos
desencadenantes y crea una relación señal-ruido potencialmente mala en sus resultados. Si está creando
una aplicación lógica para este propósito, experimente escribiendo palabras clave de activación más
11. Busque Enviar en la lista de acciones y seleccione la acción Enviar un correo electrónico.
12. En el cuadro de diálogo del conector de Office 365 Outlook, haga clic en Iniciar sesión y
tíquese a Office 365.
13. Complete el cuadro de diálogo Enviar un correo electrónico, preferiblemente utilizando campos dinámicos.
(c) Haga clic en Agregar contenido dinámico para mostrar la ventana emergente de contenido dinámico.
Los campos dinámicos le permiten conectar datos en vivo a su flujo de trabajo. La Figura 8-9, por ejemplo,
DE APLICACIONES LÓGICAS
Has definido el flujo de trabajo. Antes de realizar la prueba, observe estos cinco botones de la barra de herramientas, que se muestran
en la Figura 8-9:
• Correr: Haga clic en este botón para iniciar la aplicación lógica. Tenga en cuenta que una aplicación lógica, como miembro de la
familia de servicios de aplicaciones, tiene una o más máquinas virtuales que impulsan su flujo de trabajo.
• Diseñador: Haga clic en este botón cuando desee volver a la vista del Diseñador gráfico
desde la vista Código.
• Vista de código: Haga clic en este botón para ver el código fuente JSON. Sin embargo, uno de los
beneficios de Logic Apps es que no es necesario ser un programador de API para crear
Flujos de trabajo de integración empresarial de alto impacto.
• Plantillas: Haga clic en este botón para ver la galería de plantillas de Logic Apps.
• Conectores: Haga clic en este botón para ver la galería de conectores de Logic Apps.
Debes ... repito, deber : Cambie la aplicación lógica a un estado de ejecución para que detecte
el disparador.
FIGURA 8-10:
Un correo electrónico
Indicando que
la aplicación lógica
obras.
Otro lugar para verificar el estado de ejecución del flujo de trabajo es la página Descripción general, que
muestra cuántas veces se activó el activador, la ejecución del flujo de trabajo y / o cualquier error.
» Investigando relacional y
sistemas de bases de datos no relacionales en
Azur
Capítulo 9
Gestión de bases de datos
inMicrosoftAzure
METRO persistencia, consultas e informes, por lo que ha llegado el momento de que vea
cómo implementar bases
La mayoría de de datos endelalínea
las aplicaciones nube pública
de negocio de Microsoft
requieren Azure.
un nivel de datos para admitir datos.
Las bases de datos en la nube no son nuevas: SQL Data Services fue el primer servicio en la
nube que Microsoft puso a disposición general. Era el año 2008.
Al final de este capítulo, estará al tanto de las opciones de bases de datos relacionales y no
relacionales en Azure, y conocerá los conceptos básicos de su implementación y configuración.
Por el contrario, pierde ese grado de control administrativo cuando usa un producto PaaS
alojado como Azure SQL Database. Con PaaS, Microsoft controla estrictamente el grado en el
que puede acceder a los servidores virtuales subyacentes de su base de datos.
La razón principal por la que algunos clientes optan por ejecutar sus niveles de datos en máquinas virtuales es que no
hay disponible una versión alojada de su base de datos. En el momento de redactar este documento, Microsoft admite
Por el contrario, siempre que su aplicación admita una opción de base de datos PaaS alojada en
Azure, puede aprovechar inmediatamente la escala global masiva y la potencia de cálculo
elástica de Azure.
Por el contrario, con las opciones de la base de datos PaaS, la infraestructura del servidor subyacente
se abstrae de usted. Por lo tanto, no tiene que preocuparse por el ajuste del rendimiento del servidor,
las copias de seguridad y similares. En cambio, puede concentrarse más directamente en sus
aplicaciones de línea de negocio y sus datos de back-end.
La Figura 9-1 muestra una muestra de las plantillas disponibles en Marketplace. Algunos socios
ofrecen licencias de "pago por uso" que se integran con los costos de suscripción de Azure.
FIGURA 9-1:
Puedes ahorrar tiempo
mediante la implementación de un
VM preinstalada
desde el Azure
Mercado.
Esta sección profundiza en las bases de datos alojadas en Azure, comenzando con la diferencia entre
los sistemas de bases de datos relacionales y no relacionales. Un tratamiento completo de este tema
está más allá del alcance de este libro, por supuesto, pero puedo cubrir lo esencial aquí.
La Tabla 9-1 desglosa las mayores diferencias entre los sistemas de bases de datos relacionales
y no relacionales.
Escalada Escalado horizontal a través de un clúster Escalado vertical al agregar más recursos a
la máquina virtual
Modelo de datos Clave / valor y columna ancha Tablas relacionadas, con cada
tabla muy restringida
Las siguientes secciones presentan los productos PaaS de bases de datos relacionales de Azure.
Producto Usar
Instancia administrada de Azure SQL Database Procesamiento paralelo en línea a gran escala
Esta solución permite a sus desarrolladores continuar usando la plataforma de datos MySQL
con herramientas nativas y aprovechar las características de rendimiento, seguridad y
geoescala de la plataforma Azure.
Azure Database for MariaDB Servers funciona casi exactamente como Database for MySQL
Servers, excepto que usa MariaDB en lugar de MySQL. De lo contrario, ambos servidores de
bases de datos leen y escriben los mismos archivos e incluso funcionan en versiones paralelas.
El soporte de Azure para MySQL y PostgreSQL es un gran problema; No hace muchos años que
era impensable que Microsoft admitiera cualquier producto además de sus propios productos
de base de datos SQL Server y Microsoft Access.
SQL Database tiene dos niveles de servicio y un modelo de precios de grupo elástico, todos descritos
en las siguientes secciones.
En el Capítulo 5, menciono brevemente la Unidad de cómputo de Azure (ACU), que es la métrica de estandarización de
Microsoft para la potencia de cómputo de VM. Este valor es una forma de contabilizar el uso de Microsoft de diferentes
hardware en su red mundial de centros de datos. De manera similar, la Unidad de transacción de la base de datos
(DTU) es la métrica de rendimiento de la base de datos SQL. La DTU es un valor compuesto que tiene en cuenta la
unidad central de procesamiento (CPU) del servidor, la entrada / salida del disco (E / S) y la asignación de memoria. El
truco del modelo DTU, por supuesto, es pronosticar el nivel de servicio adecuado para su base de datos.
Para ayudarlo a determinar cuántas DTU necesita para la carga de trabajo de su base de datos SQL, el
empleado de Microsoft Justin Henriksen creó el cálculo de DTU de Azure SQL Database.
lator, que puedes encontrar en https://dtucalculator.azurewebsites.net. Cheque
¡fuera!
El nivel de servicio de núcleo virtual le permite especificar tamaños de instancia de máquina virtual de
Azure discretos para potenciar sus bases de datos de Azure SQL Database. La ventaja aquí es que
tiene un control mucho más granular sobre la capa informática que con el nivel DTU.
Los niveles de servicio DTU y vCore pertenecen a bases de datos únicas. ¿Qué modelo de
precios debería elegir si su empresa tiene varias bases de datos, cada una con sus propios
patrones de uso?
Ahí es donde entran los grupos elásticos de SQL. Usted llena sus bases de datos en un grupo elástico y
las bases de datos comparten una asignación de DTU elásticas. De esa manera, las bases de datos
más silenciosas pueden ayudar a las bases de datos más activas al entregar DTU por las que habría
pagado pero no usado.
Esta sección lo lleva a través del proceso de implementación de un servidor virtual de base de
datos SQL junto con el ejemplo de AdventureWorks. Primero, crea el servidor virtual; luego
agrega la base de datos.
Inicie sesión en Azure Portal con su cuenta administrativa y luego siga estos pasos:
2. En la hoja Crear servidor de base de datos SQL, complete la pestaña Conceptos básicos
(que se muestra en la Figura 9-2) y haga clic en Siguiente para continuar.
• Nombre del servidor: El nombre debe ser único porque Microsoft coloca el
servidor virtual en su dominio DNS database.windows.net.
• Inicio de sesión del administrador del servidor: Utilice un nombre de cuenta genérico. No se le permite utilizar
FIGURA 9-2:
Implementando un nuevo
Azure SQL
Base de datos virtual
servidor.
Este escenario es controvertido pero crucial. Cuando está habilitado, todas las direcciones IP
de Azure comparten una ruta de conectividad a su servidor SQL virtual. El entorno de
ninguna manera otorga acceso, pero brinda la posibilidad.
Muchos administradores requieren esta configuración cuando necesitan integrar SQL Database
con servicios como Azure Key Vault, cuentas de almacenamiento, HDInsight y Azure Data
Factory.
Puede dejar la configuración adicional y la configuración de la pestaña Etiquetas en sus valores predeterminados.
4. Haga clic en Revisar + Crear y haga clic en Crear para enviar la implementación a
Azure ResourceManager (ARM).
Azure no le cobra por el servidor virtual. El cargo de la base de datos SQL proviene de las bases
de datos que coloca en el servidor virtual en lugar del servidor virtual en sí.
A continuación, debe implementar un servidor virtual de Azure SQL Database junto con la base
de datos de muestra AdventureWorks, que le brinda algunos datos preexistentes con los que
jugar. Primero, crea el servidor virtual; luego agrega la base de datos.
La base de datos de muestra AdventureWorks tiene una larga historia. Para más
información, visita https://www.microsoft.com/en-us/download/details.aspx? id =
10331.
Inicie sesión en Azure Portal con su cuenta administrativa y siga estos pasos:
1. En Azure Portal, busque la hoja Bases de datos SQL y haga clic en Agregar.
2. En la hoja Crear base de datos SQL, complete la pestaña Conceptos básicos (que se muestra en
Figura 9-3).
• Nombre de la base de datos: No es necesario que este nombre sea único a nivel mundial.
• Servidor: La lista debe incluir el servidor virtual que creó en la sección anterior
("Implementación de un servidor virtual de base de datos SQL").
• ¿Quiere utilizar SQL Elastic Pool ?: Para este ejemplo, responda No.
el nivel Estándar.
Debido a que solo está probando, no es necesario aumentar el tamaño de la capa de cálculo
de la base de datos. Elegir Estándar es una buena idea porque desbloquea la mayoría de las
funciones administrativas y de seguridad que necesita.
5. Haga clic en Revisar + Crear y luego haga clic en Crear para enviar la implementación.
para armar.
hoja de nivel.
Consulte la hoja Inicio rápido de la lista de configuración de un recurso siempre que necesite
familiarizarse con un nuevo recurso de Azure. Esta hoja proporciona sugerencias,
procedimientos y enlaces de documentación.
HACER RESERVAS
El botón Reservas en los blades de Máquinas virtuales y Bases de datos SQL le permite pagar por
adelantado una VM específica y / o la capacidad de cómputo de la Base de datos SQL durante un período
anual. Si ya realizó la diligencia debida y determinó sus necesidades de cómputo, además de que sabe
que necesitará la máquina virtual y / o la base de datos para ese período de tiempo, puede ahorrar
bastante dinero con respecto a los términos del acuerdo en lugar de pagar por minuto. como siempre.
Puede pagar las reservas por adelantado o mensualmente; Obtenga más información leyendo la sección
"¿Qué son las reservas de Azure?" Artículo de Azure Docs en https://docs.microsoft.com/
es-us / azure / billing / billing-save-compute-cost-reservations.
El firewall de la base de datos SQL es un componente de red definido por software que protege
su base de datos de conexiones entrantes no autorizadas.
Para configurarlo, abra el firewall del servidor desde la base de datos navegando hasta la hoja Descripción general y
» Permitir el acceso a los servicios de Azure: Esta opción habilita el tráfico de conectividad desde
todas las direcciones IP públicas y privadas de Azure. Esta configuración no
constituyen autorización, que debe configurar por separado.
» Dirección IP del cliente y reglas de IP: Esta configuración permite la conectividad de la base de datos
desde la dirección IP pública de su estación de trabajo local. También puede definir una lista de
Cadenas de conexión
La cadena de conexión de la base de datos representa la interfaz entre su aplicación y la propia base
de datos. La base de datos SQL ofrece cuatro opciones de controladores:
Elija la cadena de conexión que tenga más sentido para su aplicación y el conjunto de
habilidades de su equipo de desarrollo.
Puede replicar la base de datos en otra región para la conmutación por error; esto significa que si la
base de datos principal se desconecta, puede redirigir las conexiones a la copia de la base de datos
secundaria en espera. Otro beneficio de la georreplicación es la capacidad de ejecutar consultas de
solo lectura en la base de datos de réplicas sin crear problemas de bloqueo para sus usuarios.
Siga estos pasos para habilitar la georreplicación para la base de datos SQL:
2. En la lista de regiones de destino, seleccione la región que le gustaría utilizar para alojar su
base de datos secundaria. La Figura 9-5 muestra esta interfaz.
FIGURA 9-5:
Configurando
georreplicación
para Azure SQL
Base de datos.
3. Complete la hoja Crear configuración secundaria y haga clic en Aceptar para guardar
sus cambios.
Necesita crear un servidor virtual en la región secundaria. La creación de una base de datos
secundaria tiene implicaciones de precios, pero para ahorrar dinero, puede ejecutar la base de
datos secundaria en un nivel de precios más bajo que el principal.
4. Sobre el mapa, haz clic en el texto del banner. Ahora puede administrar automáticamente
replicación, conectividad y conmutación por error de esta base de datos
agregándola a un grupo de conmutación por error bandera.
El portal de Azure cambia todo el tiempo, por lo que si no ve este banner, navegue hasta su servidor
virtual, seleccione la configuración Grupos de conmutación por error y haga clic en Agregar grupo.
5. Complete la hoja de configuración del grupo de conmutación por error de la siguiente manera:
• Período de gracia de lectura / escritura (horas): Esta configuración es la cantidad de tiempo que Azure
espera antes de conmutar automáticamente por error a su base de datos secundaria cuando
Podría producirse una pérdida de datos. La decisión aquí es establecer un período de gracia lo
suficientemente corto para mantener sus acuerdos de nivel de servicio, pero no lo suficiente como para
Aunque estos pasos configuran Azure para conmutar por error una base de datos automáticamente,
usted es responsable de cambiar la cadena de conexión en el código fuente de su aplicación para que
apunte a la instancia secundaria. Azure puede ser inteligente, pero no es tan inteligente. Para obtener
las cadenas de conexión de su base de datos, abra la configuración de la base de datos en Azure
Portal y busque la hoja de cadenas de conexión.
Configurar
La hoja Configurar es donde puede cambiar su nivel de servicio. Si usa DTU, puede cambiar
entre los niveles Básico, Estándar y Premium. También puede cambiar entre los modelos de
compra DTU y vCore.
configurado en menos
de 5 minutos.
• Administrar copias de seguridad: Azure realiza una copia de seguridad de sus bases de datos de forma predeterminada.
Puede seleccionar su base de datos y hacer clic en Configurar retención para ajustar la frecuencia con la que Azure
realiza una copia de seguridad de la base de datos y cuánto tiempo retiene las copias de seguridad diarias
• Contraseña de inicio de sesión: Las credenciales administrativas que definió para su servidor virtual
DE [SalesLT]. [Cliente]
6. Seleccione la consulta y luego haga clic en Ejecutar en la barra de herramientas del Editor SQL.
Alternativamente, puede hacer clic con el botón derecho en la consulta seleccionada y elegir Ejecutar en
el menú contextual.
Aunque las bases de datos relacionales ofrecen una excelente consistencia de datos, tienden a caer en
el departamento de escalabilidad debido a toda la sobrecarga del esquema. Ingrese a la base de datos
no relacional.
En lugar de llamar a una base de datos no relacional sin esquema, es más exacto decir que las bases
de datos NoSQL tienen un esquema flexible. Al principio, puede pensar que un esquema flexible haría
que las consultas fueran casi imposibles. Pero las bases de datos NoSQL pueden superar este
obstáculo al dividir el conjunto de datos en varios nodos agrupados y aplicar potencia de cálculo sin
procesar a la ejecución de la consulta.
Las siguientes secciones le ofrecen un recorrido por las funciones de Cosmos DB.
Multimodelo
Originalmente, Document DB era una base de datos NoSQL de modelo de documento de JavaScript
Object Notation (JSON). Sin embargo, Microsoft quería abarcar un grupo de clientes más amplio, por lo
que presentó Cosmos DB, que admite cinco modelos de datos / interfaces de programación de
aplicaciones (API):
» Núcleo (SQL): Esta API es la sucesora de la base de datos de documentos original. Los datos
store consta de documentos JSON y Core API proporciona una consulta similar a SQL
lenguaje que debería resultar cómodo de inmediato para los administradores y
desarrolladores de bases de datos relacionales.
» API de Azure Cosmos DB para MongoDB: Esta API es compatible con el cable MongoDB
protocolo. MongoDB, también un almacén de documentos JSON, le permite consultar Cosmos
DB como si fuera una instancia de MongoDB.
» Tabla azul: Esta API apunta al servicio de tabla de la cuenta de almacenamiento de Azure. Es un
almacén de datos de clave / valor al que puede acceder con el estado de representación de ARM
» Gremlin (gráfico): Esta API admite una vista de datos basada en gráficos y Apache
Lenguaje de consulta de Gremlin.
¿Ves un tema? La idea es que casi cualquier desarrollador que necesite un almacén de datos
NoSQL debería poder usar Cosmos DB sin sacrificar el código fuente original o las herramientas
del lado del cliente.
» Fuerte: Se garantiza que las lecturas devuelvan la versión confirmada más reciente
de un artículo. Este nivel es el más lento pero el más preciso.
» Eventual: Las lecturas no tienen garantía de pedido. Esta elección es la más rápida pero
menos precisa.
Consistencia de los datos se refiere al requisito de que cualquier cambio en la transacción de la base de datos
afecte a los datos solo en las formas permitidas. Con respecto a la coherencia de lectura específicamente, el
objetivo es evitar que dos usuarios vean resultados diferentes de la misma consulta debido a una replicación
incompleta de la base de datos.
2. En la hoja Crear cuenta de Azure Cosmos DB, complete los conceptos básicos
página, usando la siguiente configuración:
4. Haga clic en Revisar + Crear y luego haga clic en Crear para enviar la implementación.
FIGURA 9-8:
El Cosmos DB
Hoja de inicio rápido.
Si sigue el tutorial de inicio rápido de Cosmos DB, puede lograr los siguientes objetivos:
6. En la aplicación Tareas pendientes con la aplicación Azure DocumentDBweb que ahora se está
ejecutando en su navegador web, haga clic en Crear nuevo y defina varios elementos de tareas
pendientes de muestra.
Cuando agrega elementos de tareas, está llenando el contenedor Elementos en su base de datos
de Azure Cosmos DB.
» Explorador de datos: Realice una consulta basada en el navegador y la configuración de la base de datos.
La Figura 9-9 muestra el Explorador de datos.
» Replica datos a nivel mundial: Haga clic en el mapa para replicar su cuenta de Cosmos DB
en múltiples regiones. (Se aplican costos adicionales).
Ahora siga estos pasos para interactuar con su nueva base de datos de Cosmos DB
directamente desde Azure Portal:
c es un alias para envase. Encontrará que el alias es muy útil cuando trabaja con
Cosmos DB Core API.
FIGURA 9-10:
Usar datos de Azure
Explorer y SQL
para consultar tu
Cosmos DB Core
Elementos de la API.
- -SELECCIONE
seleccione dos campos de
c. nombre, los documentos
c. descripción de c del contenedor
FIGURA 9-11:
Editando un
documento en un
Cosmos DB
colección.
7. Haga clic en el botón Actualizar de la barra de herramientas para guardar sus cambios.
Probablemente haya estado usando los comandos Eliminar o Quitar Azure Portal para limpiar sus
entornos. Un método más rápido es invocar Azure PowerShell o la CLI de Azure desde Azure Cloud Shell o
desde su propia computadora. Para forzar la eliminación de un grupo de recursos llamado
'Wiley' mediante PowerShell, ejecute el siguiente comando:
Capítulo 10
Respaldar y restaurar
YourAzureData
D falla. Antes de entrar en los detalles de la recuperación ante desastres, es importante que
comprenda
La el modelo
recuperación de responsabilidad
de desastres compartida
es la capacidad de su en la computación
empresa en la nube.de una
para recuperarse
Garantizamos que al menos el 99,9% (99% para el nivel Cool Access) del tiempo, procesaremos con
éxito las solicitudes para leer datos de las cuentas de almacenamiento con redundancia local (LRS),
almacenamiento con redundancia de zona (ZRS) y almacenamiento con redundancia geográfica (GRS).
.
Al final de este capítulo, comprenderá cómo proteger sus cuentas de almacenamiento, máquinas
virtuales (VM), servicios de aplicaciones, instancias de Azure SQL Database y bases de datos de
Cosmos DB.
Protección de su almacenamiento
Datos de blobs de la cuenta
Bueno, tengo buenas y malas noticias. La buena noticia es que Azure tiene algunas opciones
para realizar copias de seguridad y restaurar blobs individuales e incluso (con intervención
manual) para proteger contenedores de blobs completos.
La mala noticia es que las herramientas no son las más suaves ni las más convenientes, en mi
humilde opinión. En las siguientes secciones, le muestro todo para que pueda decidir cómo
desea abordar la recuperación ante desastres de Azure Blob Storage en su entorno.
Un blob (objeto binario grande) es un archivo de datos no estructurado. Los ejemplos incluyen archivos de
La eliminación temporal en las cuentas de almacenamiento de Azure es efectivamente una papelera de reciclaje para
los blobs eliminados. Habilite la función después de la implementación navegando a su cuenta de almacenamiento en
el portal de Azure, seleccionando la configuración Soft Delete, habilitando esa función y determinando su política de
retención. El intervalo de tiempo para la retención de blobs eliminados temporalmente varía de 1 a 365 días.
Si va a seguir los pasos en las siguientes secciones, le sugiero que cree un contenedor en una
cuenta de almacenamiento y lo complete con algunos archivos sin importancia con los que no
le importa jugar. Cubro la creación de cuentas de almacenamiento de Azure en detalle en el
Capítulo 3.
212 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
En mi entorno, creé una cuenta de almacenamiento con las siguientes propiedades:
Puede realizar copias de seguridad de instantáneas manuales de los blobs de su cuenta de almacenamiento de Azure. El termino instantánea
indica estas copias de seguridad como una versión de archivo de un momento determinado que puede descargar o restaurar
Dentro de Azure Portal, siga estos pasos para realizar una copia de seguridad de instantánea:
3. Seleccione solo uno de los blobs que seleccionó en el Paso 1 y luego haga clic en Ver
Instantáneas en la barra de herramientas.
La figura 10-1 muestra mi lista de instantáneas para un archivo de secuencia de comandos llamado despliegue
• El botón Descargar instantánea (A) ayuda cuando necesita una copia de la versión
anterior de un blob. Este comando descarga el blob en su local.
ordenador.
• El botón Promocionar instantánea (B) reemplaza su copia de blob actual con la copia de
seguridad de instantánea seleccionada. Tenga cuidado con esta opción porque
sobrescribe la versión actual del blob.
• La pestaña Generar SAS (E) facilita la creación de un identificador uniforme de recursos (URI)
de firma de acceso compartido para el blob. Una firma de acceso compartido
le permite proporcionar acceso público por tiempo limitado a un blob; Los desarrolladores de Azure
usan tokens SAS todo el tiempo para manejar cargas y descargas de blobs con cuentas de
almacenamiento.
FIGURA 10-1:
Gestión de blob
instantáneas en el
Portal de Azure.
1. Elija un blob para el que creó una instantánea, abra su menú contextual,
y elija Eliminar.
Un mensaje de confirmación le permite saber que al eliminar un blob principal también se eliminan sus
214 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
2. Haga clic en Aceptar en el mensaje para confirmar.
3. Haga clic en Actualizar para verificar que el blob haya desaparecido de la lista.
El blob que eliminó ya no debería aparecer en la lista. Eso es lo esperado, no es una gran
sorpresa.
Esta acción revela lo que es esencialmente la papelera de reciclaje para blobs eliminados temporalmente.
FIGURA 10-2:
Configurar suave
eliminar para Azure
cuenta de almacenamiento
manchas.
La cuestión que consideramos ahora es cómo realizar copias de seguridad de contenedores de blobs
completos. Lamentablemente, la plataforma Azure no tiene características nativas para ayudarlo; No tengo
una respuesta definitiva de por qué esto es así, pero Microsoft puede considerarlo como una solicitud de
función en el futuro. Pero puede escribir un script de shell que llame a AzCopy (consulte la barra lateral
cercana) para copiar blobs entre dos cuentas de almacenamiento, preferiblemente en diferentes regiones.
Primero, instale AzCopy (consulte la barra lateral "AzCopy" más adelante en este capítulo), y luego
abra un símbolo del sistema elevado y ejecute el siguiente comando de PowerShell para establecer
una nueva variable de entorno que apunte a su directorio de instalación de AzCopy (en este ejemplo,
AzCopy es en mi C: \ azcopy directorio). Haga esto para poder llamar al comando AzCopy desde
cualquier directorio en una sesión de símbolo del sistema o archivo de secuencia de comandos:
Luego reinicie su computadora para habilitar la nueva variable de entorno del sistema.
Aquí está el comando AzCopy que usé para copiar mi contenedor de scripts de mi cuenta de
almacenamiento wileyprimstorage a mi contenedor de respaldo de scripts en mi cuenta de
almacenamiento wileysecstorage:
AzCopy /Fuente:https://wileyprimstorage.blob.core.windows.net/
scripts /Dest:https://wileysecstorage.blob.core.
windows.net/
scripts-backup / SourceKey: 4SXSCKBA ==
/ DestKey: ZpuwuCLQ == / S
Se autentica en las cuentas de almacenamiento pasando una clave de acceso. Si ha estado estudiando
este libro en la secuencia de capítulos, sabrá qué son las claves de acceso y cómo encontrarlas. Si no
es así, le sugiero que lea el Capítulo 3 para obtener un tratamiento formal de las cuentas de
almacenamiento de Azure.
216 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
AZCOPIA
AzCopy es una herramienta de línea de comandos para almacenamiento de Azure que le permite
a su CAMINO variable de entorno del sistema para asegurarse de que puede iniciar la herramienta desde
Introducción a la bóveda de
Recovery Services
El almacén de Azure Recovery Services tiene dos propósitos:
» Copia de seguridad y recuperación: copia de seguridad y restauración de máquinas virtuales individuales o máquinas virtuales de forma masiva
» Recuperación ante desastres: configuración de instancias en espera en caliente de sus máquinas virtuales de Azure
y cambiar a ellos rápidamente si las instancias principales se desconectan
Tanto el servicio Managed Disk como el almacén de Recovery Services son capas de abstracción en la
parte superior de la cuenta de almacenamiento de Azure. Gran parte de Azure Resource Manager se
ocupa de abstraer niveles más altos de sobrecarga administrativa para niveles más manejables.
Siga estos pasos para implementar un almacén de Recovery Services en Azure Portal:
virtuales de las que se va a realizar una copia de seguridad deben estar en la misma región que su bóveda de
Recovery Services.
3. Haga clic en Revisar + Crear y luego haga clic en Crear para enviar la implementación.
La implementación es rápida porque la bóveda de Recovery Services es esencialmente un
contenedor.
Las bóvedas de Azure Recovery Services pueden automatizar las copias de seguridad de SQL Server que se ejecutan en máquinas virtuales de
Azure, así como los recursos compartidos de archivos de cuentas de almacenamiento, pero es necesario profundizar en la copia de seguridad
de la máquina virtual.
Puede realizar una copia de seguridad de las máquinas virtuales de Azure solo en un almacén de Recovery Services en la misma
región de Azure. Si sus máquinas virtuales abarcan regiones, necesita varias bóvedas de Recovery Services que hagan lo mismo.
Siga estos pasos para crear una política de copia de seguridad simple para usar en las copias de seguridad de su máquina virtual:
218 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
• Restauración instantánea: Especifique un valor entre 1 y 5 días para mantener su última instantánea de copia de
hace que las restauraciones sean mucho más rápidas porque la bóveda no tiene que descomprimir
• Rango de retención: Especifique cuánto tiempo Azure archiva puntos de copia de seguridad semanales,
mensuales y anuales.
Puede configurar la copia de seguridad de la máquina virtual desde la perspectiva de la bóveda de Recovery Services o
desde la perspectiva de una máquina virtual individual. En esta sección, les muestro ambos métodos.
Nota: Para seguir los ejercicios de esta sección, necesita dos VM; no importa si ejecutan Windows Server o
Linux. Es importante que las máquinas virtuales estén en estado de ejecución para que la extensión
Instantánea de máquina virtual de Azure pueda realizar copias de seguridad de los archivos en uso y
proporcionar copias de seguridad coherentes con la aplicación.
Siga estos pasos para realizar una copia de seguridad de una máquina virtual en ejecución en Azure Portal:
Este paso inicia una copia de seguridad manual en lugar de esperar la siguiente ventana de copia de
Siga estos pasos para realizar una copia de seguridad de una o más máquinas virtuales desde su bóveda de Recovery Services:
4. En la hoja Política de copia de seguridad, seleccione su política de VM y haga clic en Aceptar para continuar.
Aparece la hoja Seleccionar máquinas virtuales.
5. En la hoja Seleccionar máquinas virtuales, seleccione las máquinas virtuales que desea incluir
en la configuración del trabajo de copia de seguridad por lotes.
FIGURA 10-3:
Puedes hacer una copia de seguridad
simultaneamente
de tu
Servicios de recuperación
bóveda.
220 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
6. Haga clic en Aceptar.
7. En la hoja Copia de seguridad, haga clic en Habilitar copia de seguridad para completar la configuración.
Puede comprobar el estado del trabajo de copia de seguridad haciendo clic en la configuración de Trabajos de copia de seguridad en su
bóveda.
de copia de seguridad:
Opciones de restauración de VM
Azure ofrece flexibilidad para restaurar una máquina virtual. Es posible que deba realizar una restauración de prueba de una
máquina virtual completa para asegurarse de que la operación de copia de seguridad funcione, por ejemplo, o puede que
simplemente necesite extraer algunos archivos de uno de los discos de datos de su máquina virtual.
» Reemplazar discos: Cambie el sistema operativo y los discos de datos de su VM con problemas
para copias instantáneas.
La función de recuperación de archivos es muy interesante y útil. Para obtener más información
al respecto, consulte la documentación de Azure: https://docs.microsoft.com/en-us/
azure / backup / backup-azure-restore-files-from-vm.
FIGURA 10-4:
Copia de seguridad de una máquina virtual
espada es tu
ventanilla única para
copia de seguridad y
recuperación
operaciones.
Sin más preámbulos, déjeme mostrarle cómo trabajar con la experiencia de restauración de máquinas
virtuales de Azure. Sigue estos pasos:
222 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
3. En la hoja Seleccionar punto de restauración, elija un punto de restauración.
La guía general aquí es para que elija la copia de seguridad consistente de la aplicación
más reciente.
Una de las ventajas de la copia de seguridad incorporada en Azure App Service es que, además de realizar una copia de
seguridad del código fuente de la aplicación, Azure también realiza una copia de seguridad de sus ajustes de
Nota: Para seguir esta sección, necesitará una aplicación App Service en ejecución y una cuenta de
almacenamiento de uso general. En el momento de redactar este documento, la copia de seguridad de App
Service no utiliza la bóveda de Recovery Services.
Para realizar una copia de seguridad de las aplicaciones de App Service, siga estos pasos:
• Programa de respaldo: Programe copias de seguridad automáticas cada norte días u horas,
y elija su período de retención en días.
• Base de datos de respaldo ( opcional): incluya una conexión de base de datos en la definición de la copia de
seguridad.
Las funciones de App Service dependen del nivel de precios de su plan de App Service. Para
aprovechar las copias de seguridad programadas, su plan de App Service debe ejecutar al menos el
nivel de servicio S1. Presento Azure App Service en el Capítulo 7.
Esta sección considera la otra cara de la moneda proverbial: restaurar aplicaciones. Quizás desee
realizar una restauración de prueba de App Service para asegurarse de que la copia de seguridad sea
coherente.
Instantánea.
• Seleccione la copia de seguridad para restaurar: Aquí se enumeran las copias de seguridad realizadas anteriormente.
• Ignore los nombres de host en conflicto al restaurar: Las opciones son No o Sí. Licencia
esta configuración en No para evitar que Azure restaure una aplicación de App Service con
un nombre conflictivo en su entorno.
• Ignorar bases de datos: Las opciones son No o Sí. Si su aplicación web tiene una cadena de
224 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
FIGURA 10-5:
Restaurando un
Aplicación de Azure
Aplicación de servicio.
Las últimas cosas para respaldar y restaurar son Azure SQL Database y Cosmos DB.
SQL Database crea copias de seguridad completas de sus bases de datos cada semana, copias de seguridad
diferenciales cada 12 horas y copias de seguridad del registro de transacciones cada 5 a 10 minutos. Las
copias de seguridad se realizan automáticamente sin intervención de su parte.
Además, SQL Database coloca las copias de seguridad en una cuenta de almacenamiento georedundante de
acceso de lectura para garantizar que sus copias de seguridad permanezcan disponibles incluso si su región
principal de Azure no está disponible.
Las copias de seguridad de la base de datos SQL se configuran a nivel de servidor virtual. Siga estos pasos para
• Copias de seguridad semanales de retención a largo plazo (LTR): El rango es de 1 a 520 semanas.
FIGURA 10-6:
Personalización
Azure SQL
Base de datos
automático
respaldo.
226 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
3. Haga clic en Aplicar para enviar sus cambios en la política de retención.
4. En la hoja Administrar copias de seguridad, haga clic en la pestaña Copias de seguridad disponibles.
5. Busque copias de seguridad de todas las bases de datos adjuntas al servidor virtual.
Para recuperar una base de datos eliminada accidentalmente, navegue hasta el servidor virtual de Azure SQL
Database y haga clic en la configuración Bases de datos eliminadas. A continuación, seleccione la base de
datos eliminada, elija un punto de restauración y haga clic en Restaurar para recuperar la base de datos.
Deberá proporcionar un nombre nuevo para la base de datos restaurada.
También puede realizar copias de seguridad y restauraciones de SQL Database mediante el uso de
herramientas cliente nativas de SQL Server, como SQL Server Management Studio y Transact-SQL.
Para recuperar una base de datos dañada, vaya a la página de descripción general de su base de datos SQL y
haga clic en Restaurar. Se le pedirá que confirme el punto de restauración que desea.
También puede restaurar la base de datos en otro servidor de base de datos y / o grupo elástico, e
incluso puede cambiar el nivel de precios sobre la marcha.
intervención del cliente. Cosmos DB realiza una copia de seguridad de la base de datos cada 4 horas y mantiene las dos
La documentación de Azure recomienda que use Azure Data Factory para realizar copias de
seguridad manuales de sus datos de Cosmos DB copiando los datos en otra cuenta de Cosmos
DB.
Al momento de escribir este artículo, debe presentar un ticket de soporte con Microsoft para
solicitar cualquier tipo de restauración de datos. El equipo de Cosmos DB me dijo que Microsoft
ha iniciado la restauración de datos por el usuario en su nueva cartera de funciones. Quién
sabe; ¡tal vez la función se haya agregado para cuando lea este capítulo! Eso es Azure para ti.
Hay cuatro planes de soporte de Azure. Todos los suscriptores de pago por uso comienzan con
el plan de soporte básico, que es gratuito; los otros tres planes tienen un costo mensual fijo.
Aquí hay un resumen rápido de los cuatro planes y los SLA asociados con ellos:
3. Compruebe periódicamente la hoja Todas las solicitudes de soporte para obtener actualizaciones.
Es probable que el soporte de Azure se comunique con usted por correo electrónico y / o llamada
FIGURA 10-7:
Crear y rastrear
Soporte de Azure
solicitudes en el
Ayuda + Soporte
espada.
228 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
EN ESTE CAPÍTULO
Capítulo 11
Gestión de identidad y
AccesoconAzureActive
Directorio
mi Directory (Azure AD), que es un servicio de identidad alojado que es relevante para los
arquitectos,
Cadaadministradores,
vez que trabaja
trabajadores e incluso sus clientes.
desarrolladores,
en Azure, estáanalistas de negocios
interactuando e información
con Azure Active de Azure.
La razón por la que Azure AD es fundamental en Azure es que forma la base de identidad para
sus suscripciones. Cualquier persona o proceso que necesite acceder a su suscripción de Azure
debe estar definido en Azure AD.
Al final de este capítulo, tendrá una sólida comprensión de la relación entre Azure AD y las
suscripciones de Azure. También tendrá las habilidades necesarias para proteger los recursos
con la seguridad de privilegios mínimos. El principio de seguridad de TI de privilegio mínimo
» Oficina 365
» Dinámica 365
» Afinado
» Movilidad empresarial + seguridad
Cualquier computadora hoy en día, ya sea que ejecute Windows, macOS o Linux, tiene un
almacén de identidad local que define a los usuarios autorizados para usar esa computadora.
Microsoft ha ofrecido Servicios de dominio de Active Directory (AD DS) en su producto Windows
Server desde 1999; AD DS es un almacén de identidades centralizado para redes locales.
Los términos inquilino y multiusuario tienden a confundir a la gente, así que permítanme
aclarar la confusión de inmediato. Con respecto a Azure AD, una inquilino es simplemente una
instancia única de Azure AD. Una sola organización puede tener una o varias instancias de
Azure AD: una instancia de Azure AD para uso interno y otra para los clientes, por ejemplo.
» Una o más suscripciones pueden confiar en Azure AD (compartir un único almacén de identidades).
Otro término que a menudo es confuso es aplicaciones en la nube. Con respecto a Azure AD, una aplicación en la nube
es cualquier aplicación (web, de escritorio o móvil) que se basa en Azure AD como su almacén de identidades de
usuario.
230 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
AD versus ADDS
Azure AD puede compartir parte de un nombre con los Servicios de dominio de Active Directory
(AD DS) en su red local, pero estos servicios de directorio son muy diferentes. La Tabla 11-1
proporciona una comparación de alto nivel.
Protocolo de acceso Protocolo ligero de acceso a directorios API de REST de Microsoft Graph
Unidades organizativas sí No
Grupos dinámicos No sí
Autenticación multifactor No sí
Para obtener más información sobre el uso de Azure AD Connect para ampliar su entorno local
Active Directory a Azure AD, consulte https://docs.microsoft.com/en-us/azure/
active-directory / hybrid / whatis-azure-ad-connect.
El inquilino de Azure AD puede existir por separado de una suscripción, pero Azure no le permitirá
implementar ningún recurso a menos que y hasta que el inquilino de Azure AD esté vinculado a al menos una
suscripción. La figura 11-1 muestra lo que quiero decir.
La figura 11-1 muestra una relación de confianza que existe entre su suscripción de Azure y un
solo inquilino de Azure AD.
Aunque Azure AD puede ser el almacén de identidades para más de una suscripción, una única
suscripción de Azure solo puede confiar en un único inquilino de Azure AD a la vez. Para
comprender estos conceptos, siga estos pasos:
Puede implementar tantos inquilinos de Azure AD como tenga casos de uso, pero no
puede hacer nada sustancial con ellos hasta que les vincule una suscripción de Azure. Los
inquilinos de Azure AD son recursos muy parecidos a cualquier otro recurso en Azure
Resource Manager (ARM).
¡Ahora estás llegando a alguna parte! Este control le permite desconectar una suscripción de
su inquilino de Azure AD actual y conectarla a otro. La Figura 11-2 es una captura de pantalla
compuesta que muestra el proceso de cambio de directorio en mi entorno.
232 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
FIGURA 11-2:
Mover un Azure
suscripción a
otro Azure AD
inquilino.
Quizás sus desarrolladores quieran aislar su entorno mientras trabajan en sus aplicaciones en la nube.
El uso de un inquilino de Azure AD separado es excelente para proporcionar aislamiento entre los
entornos de implementación de Azure.
Tendrá que rehacer todas sus asignaciones de control de acceso basado en roles (RBAC)
cuando mueva una suscripción a otro inquilino de Azure AD. La razón debería ser bastante
obvia: tiene un nuevo grupo de cuentas de grupos y usuarios de Azure AD con las que trabajar.
En términos generales, desea que los nombres de inicio de sesión de sus usuarios coincidan con sus
direcciones de correo electrónico. Las siguientes secciones describen cómo lograr este objetivo.
234 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
No puede eliminar el < inquilino>. onmicrosoft.com nombre de dominio. Así es como Microsoft
identifica fundamentalmente a su inquilino a través del Sistema de nombres de dominio (DNS).
Le recomiendo encarecidamente que asocie el dominio DNS de su empresa con su inquilino de Azure
AD. A continuación, podrá elegir qué sufijo de inicio de sesión desea que usen los usuarios de Azure
AD.
Todo lo que tiene que hacer para agregar su propio dominio DNS comercial al de su inquilino es
verificar la propiedad. Sigue estos pasos:
4. Haga clic en Verificar y espere a que Azure verifique la existencia del recurso.
registro.
La idea es que solo el propietario del dominio DNS pueda crear el registro; por lo tanto, ha
verificado ante Microsoft que es el propietario del dominio.
La Figura 11-3 muestra la lista de dominios personalizados de mi inquilino. Puede ver que tengo mi dominio
onmicrosoft.com, un dominio verificado que puedo usar y algunos nombres no verificados que aún no puedo
usar.
A continuación, permítame explicarle cómo funcionan los usuarios y grupos de Azure AD. En su inquilino de
Azure AD, seleccione la hoja Usuarios. Azure AD tiene dos tipos de cuentas de usuario y dos tipos de cuentas
de grupo:
» Grupo dinámico: Este grupo es uno que Azure rellena automáticamente basándose
en valores de propiedad de cuenta de usuario predefinidos.
La columna Fuente en su lista de usuarios de AD indica dónde se creó el usuario y dónde está
autenticado. Esta fuente de autoridad es importante porque es posible que desee tratar las
cuentas de Azure AD nativas de la nube de manera diferente a las cuentas federadas o
sincronizadas. Las opciones incluyen
236 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
» Cuenta de Microsoft: Estos usuarios son invitados B2B de Azure AD; la cuenta que
inicialmente creado el inquilino / suscripción también es una cuenta de Microsoft.
Una cuenta de Microsoft es una cuenta gratuita que puede usar para acceder a varios
servicios de Microsoft, incluidos Xbox, Office 365 y, por supuesto, Azure. El directorio de
cuentas de Microsoft es anterior a Azure; es posible que recuerde lo que solía llamarse
"cuentas de Windows Live", que son lo mismo.
» Windows Server AD: Estos usuarios están sincronizados o federados desde un local.
Dominio de AD DS.
Creando un grupo de AD
A los efectos de este libro, utilizo Azure Portal para crear y administrar cuentas de grupos y usuarios
de AD. Azure PowerShell y la CLI de Azure son alternativas que puede utilizar; estos lenguajes de
automatización hacen que el trabajo sea mucho más corto cuando necesita crear cuentas de forma
masiva.
Los grupos de AD en Azure se usan de la misma manera que se usan los grupos en Active Directory
local: para simplificar la administración. Siga estos pasos para crear un grupo de Azure AD de muestra:
• Tipo de grupo: Elija Seguridad. Office 365 se usa para grupos de distribución
en Microsoft Exchange Online. (Office 365 también usa Azure AD).
• Nombre del grupo: Dale al grupo un nombre significativo que sea fácil de escribir.
• Tipo de membresía: Elija Asignado. Las otras opciones son Usuario dinámico y
Dispositivo dinámico. Los grupos dinámicos indican a Azure que
rellenar estos grupos según las propiedades de la cuenta de usuario (ciudad, por
ejemplo) o su tipo de dispositivo (escritorio o móvil, por ejemplo).
• Propietarios: Estos son los usuarios de Azure AD que tendrán el privilegio de editar la
pertenencia al grupo.
1. En la lista de configuración de Azure AD, seleccione la hoja Todos los usuarios y luego haga clic en
Nuevo Usuario.
Si es posible, defina el nombre de usuario y las partes del dominio para que coincidan con el formato de
El hecho de que su nombre de usuario de Azure AD coincida con un nombre de correo electrónico
no significa que Azure valida la dirección. Azure enviará mensajes de notificación a esta dirección,
pero no crea un buzón de correo para el usuario. Debe manejar el correo electrónico de sus
usuarios por separado.
5. Deje las demás configuraciones en sus valores predeterminados y haga clic en Crear.
238 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
TABLA 11-2 Comparación de la edición de Azure AD
Sincronización de AD Connect sí sí sí
Marca de la empresa No sí sí
Grupos dinámicos No sí sí
MFA no administrativa No sí sí
Necesita una cuenta de AD nativa en lugar de una cuenta de Microsoft. La cuenta también debe
tener asignada la función de directorio Administrador global. Un rol de directorio es una
colección con nombre de permisos que otorgan al usuario un mayor control sobre Azure AD.
Distribuir licencias
Ahora que tiene algunas licencias para distribuir, esta sección le muestra cómo hacerlo en
Azure Portal. Sigue estos pasos:
240 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
» Inicie sesión en las aplicaciones en la nube de Azure a las que se les ha asignado con inicio de sesión único
» Administrar sus cuentas de usuario, incluido el cambio de contraseñas y / o MFA
opciones
FIGURA 11-5:
La aplicación
el panel de acceso es un
ventanilla única
que permite a los usuarios de
mensaje de correo electrónico a su dirección de inicio de sesión. El usuario se ve obligado a cambiar su contraseña
Azure RBAC aprovecha la herencia. En otras palabras, una asignación de roles RBAC en un alcance
superior se produce en cascada a través de la herencia a ámbitos inferiores. La figura 11-6 muestra los
cinco ámbitos de administración de Azure:
FIGURA 11-6:
Azur
administración
uso de alcances
herencia a
simplificar
administración.
242 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
Implementación de roles RBAC integrados
Para evitar cometer un error de novato común, comprenda que Azure tiene dos roles RBAC
separados y distintos:
Roles de Azure AD
Cuando crea un usuario normal de Azure AD, ese usuario no tiene asignadas funciones de
directorio. La razón es simple: solo los miembros del equipo seleccionados deben tener
privilegios en Azure AD.
Las cuentas de usuario de clase miembro pueden hacer cosas básicas como editar las propiedades de
su perfil y quizás ver las propiedades de otras cuentas de usuario miembro. Sin embargo, es posible
que tenga personas en su equipo que necesiten la capacidad de registrar aplicaciones en la nube con
Azure AD o crear cuentas de usuario y de grupo.
En su inquilino de Azure AD, seleccione la configuración de Roles y administradores para ver la lista
completa de roles de Azure AD integrados. Algunos de los más comunes son
» Administrador global: Los titulares de roles pueden realizar todas las acciones dentro del inquilino.
Este rol es el rol de mayor privilegio en su directorio, y debe estar
extraordinariamente cuidadoso a quién se lo asigna.
» Invitadora invitada: Los titulares de funciones pueden invitar a usuarios externos a su directorio a través de
Colaboración AD B2B.
» Lector de informes: Los titulares de funciones pueden leer los informes de auditoría de Azure.
» Administrador de usuarios: Los titulares de funciones pueden administrar usuarios y grupos de AD.
3. En su inquilino de Azure AD, abra la configuración del nuevo usuario y haga clic en
Hoja de rol de directorio.
Elija la configuración Todos los usuarios, seleccione el usuario y luego elija la hoja Función de
directorio dentro de la configuración del usuario.
7. Para probar el acceso, cierre la sesión del usuario en el portal y vuelva a iniciar sesión para actualizar
el token de acceso de la cuenta.
La Figura 11-7 muestra que los controles de administración de usuarios relevantes, como agregar nuevos
usuarios, no están disponibles antes de que se aplique la nueva asignación de roles del usuario.
FIGURA 11-7:
Antes (arriba) y
después (abajo)
Rol de RBAC
asignación.
244 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
La técnica de la interfaz de usuario de ocultar o deshabilitar controles para los que el usuario no tiene
privilegios se conoce como Guarnición de seguridad.
Roles de recursos
Los roles de Azure AD son colecciones de permisos con nombre que se pueden usar dentro de su
inquilino de Azure AD. Por el contrario, los roles de recursos son colecciones de permisos que se
pueden asociar con sus suscripciones y recursos de Azure. Tenga en cuenta que este es un conjunto
de roles completamente diferente al que ha visto hasta ahora en Azure AD.
Puede aplicar roles RBAC a cualquiera de los cinco ámbitos de administración descritos en "Roles de Azure AD"
anteriormente en este capítulo, y esas asignaciones se transmiten en cascada a través de la herencia a niveles
de ámbito inferiores.
Agrega asignaciones de roles para un usuario en la hoja Suscripciones. Los roles de recursos
integrados más comunes incluyen
» Dueño: Le permite realizar cualquier acción en ese ámbito, incluida la edición de la función RBAC.
membresías
» Contribuyente: Tiene los mismos privilegios que el propietario, excepto que no puede editar
Asignaciones de RBAC
» Inicio de sesión del administrador de la máquina virtual: Le permite ver máquinas virtuales en una suscripción
e inicie sesión en ellos como administrador
1. Para probar el estado "antes", inicie sesión en Azure Portal como nuevo usuario,
y navegue hasta la hoja Grupos de recursos.
Tipo grupos de recursos en el cuadro de búsqueda global de Azure para encontrar esta hoja rápidamente.
3. En la pestaña Verificar acceso, escriba el nombre de inicio de sesión del usuario para ver su
nivel de acceso.
Azure Portal debería mostrar cero asignaciones de roles para este usuario.
• Seleccione: Escriba el nombre de inicio de sesión del usuario para resolver la cuenta y haga clic para seleccionarlo.
La hoja Grupos de recursos debe mostrar acceso limitado a todos los recursos en el ámbito de
suscripción del usuario. Azure le impide realizar la mayoría de las acciones, que puede probar si
intenta cerrar una máquina virtual o cargar un blob en una cuenta de almacenamiento.
En cualquier ámbito, puede visitar la hoja Control de acceso (IAM) y su pestaña Asignaciones de
funciones para ver qué cuentas tienen qué grados de acceso (consulte la Figura 11-8).
Es casi seguro que llegará el momento en que las funciones RBAC integradas no satisfagan con precisión sus
necesidades. La buena noticia es que puede definir roles RBAC personalizados para Azure AD y para los recursos de
Azure. En el momento de redactar este documento, debe usar Azure PowerShell o la CLI de Azure para crear un rol
de recurso RBAC personalizado. Por el contrario, puede crear roles personalizados de Azure AD directamente en
Azure Portal. Obtenga más información sobre los roles personalizados en Azure leyendo el artículo de documentos
246 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
FIGURA 11-8:
Ver RBAC
asignaciones de roles
en un particular
administración
alcance.
Prácticamente nadie tiene una visión del 100 por ciento en el costo, el rendimiento, la
seguridad y la alta disponibilidad de su infraestructura de Azure. Azure Advisor usa algoritmos
de aprendizaje automático para hacer recomendaciones sobre cómo optimizar mejor su
entorno de Azure en cuanto a costos, seguridad, disponibilidad y rendimiento.
La Figura 11-9 muestra las recomendaciones de seguridad que el Asesor me hizo, enumerando
el impacto, la descripción del problema, los recursos afectados y la fecha en la que creó las
recomendaciones.
FIGURA 11-9:
Tutor
proporciona detalles
recomendaciones
y aveces
soluciona problemas
automáticamente.
248 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
Observe el botón Centro de seguridad en la parte superior de las recomendaciones de
seguridad del Asesor. Azure Security Center también utiliza el aprendizaje automático para
realizar recomendaciones sobre su entorno; Advisor incluye recomendaciones de Security
Center como parte de su lógica. Security Center se trata en el Capítulo 12.
En el momento de redactar este documento, no puede crear sus propias recomendaciones de Asesor, pero
puede personalizar el comportamiento de las recomendaciones integradas. Sigue estos pasos:
Capítulo 12
ImplementingAzure
Gobernancia
A sus diversos recursos de Azure. Por ejemplo, ¿cómo puede asegurarse de que los
recursos se implementen
La gobernanza segura es solo en regiones
la forma autorizadas?
en que su ¿Cómo
organización puedes
aborda limitar
la gestión
tamaños de recursos para que no exceda su presupuesto? En este capítulo, verá cómo
de
utilice las herramientas de gobierno centrales de Azure: etiquetas taxonómicas y Azure Policy.
Sin embargo, la vida rara vez es tan simple. Es igualmente probable que tenga implementaciones que
abarquen grupos de recursos, regiones e incluso suscripciones. Puede resultar difícil satisfacer a sus
departamentos de contabilidad y cumplimiento para que realicen un seguimiento de estos recursos
poco acoplados.
Usar etiquetas taxonómicas es la respuesta. En Azure, un etiqueta es un par clave / valor simple. Siempre que
un usuario tenga acceso de escritura a un recurso, puede agregar etiquetas existentes a ese recurso o crear
una nueva etiqueta.
Las etiquetas taxonómicas en Azure son un poco complicadas. A continuación, se muestran algunos datos sobre las etiquetas taxonómicas que
» Las etiquetas aplicadas a un grupo de recursos no fluyen por herencia a la administración inferior
alcances de ment.
» No todos los recursos de Azure admiten etiquetas. No se pueden aplicar etiquetas para la gestión
grupos o suscripciones, por ejemplo, solo para grupos de recursos y la mayoría
tipos de recursos.
» Los nombres de las etiquetas no pueden incluir los siguientes caracteres reservados: <>% & \? /.
A diferencia de las asignaciones de RBAC y Azure Policy, las etiquetas aplicadas a un grupo de
recursos no se heredan de los recursos dentro de ese grupo de recursos. Puede usar Azure
PowerShell o la CLI de Azure para evitar esta limitación, pero es importante y vale la pena
señalarlo.
Otro punto problemático a considerar es lo fácil que es usar etiquetas de Azure de manera
inconsistente. Descubrirá por amarga experiencia que algunos de sus colegas (nunca usted,
claro, sino sus colegas) hacen las siguientes cosas:
Estos problemas pueden tener grandes implicaciones si está utilizando etiquetas taxonómicas para el
seguimiento de costos porque el etiquetado inconsistente conduce a resultados de informes
inconsistentes (inexactos). La buena noticia es que puede usar Azure Policy para estandarizar su
aplicación de etiquetas.
252 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
Puede consultar los siguientes recursos en línea de Microsoft para obtener orientación sobre las mejores prácticas de
La Tabla 12-1 resume algunas formas de clasificar las etiquetas taxonómicas y qué nombres de etiquetas usar.
región: europa
proyecto: salespromo
sla: 8h
tier: web
propietario: twarner
Sin más preámbulos, déjeme guiarlo para agregar etiquetas a grupos de recursos y recursos
individuales. Le muestro cómo crear grupos de recursos en el Capítulo 2.
Las etiquetas de Azure son modificables, lo cual es conveniente y peligroso porque un error
ortográfico puede generar informes incorrectos.
Es muy fácil agregar etiquetas a los recursos mediante programación con PowerShell. El
capítulo 2 trata sobre la CLI de Azure y Azure PowerShell. Primero, use el siguiente código para
enumerar las etiquetas existentes en su grupo de recursos (el mío se llama ' wiley '):
254 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
FIGURA 12-1:
Es la mejor práctica
etiquetar recursos
Durante su
despliegue.
Suponga que desea agregar una nueva etiqueta ( env: dev) a su grupo de recursos. Si usa el
comando Set-AzResourceGroup para agregar la nueva etiqueta, PowerShell sobrescribe las
etiquetas existentes y las reemplaza por la nueva, por lo que no desea hacer eso. En su lugar,
primero puede almacenar el ' wiley ' etiquetas del grupo de recursos en una variable llamada $ etiquetas:
A continuación, use el $ etiquetas objetos Agregar método para incluir una nueva etiqueta env: dev:
Si uno de sus colegas escribió mal el nombre y / o el valor de una etiqueta, o si su equipo se
deshizo de un proyecto y ya no necesita la etiqueta, entonces tiene un problema de gobernanza
de Azure que resolver.
Así como es fácil crear etiquetas y crear etiquetas nuevas a partir de entradas existentes, es sencillo
eliminar una etiqueta que ya no desea. Nuevamente, usa PowerShell.
Primero, recupere las etiquetas existentes (las mías están en mi ' wiley ' grupo de recursos):
A continuación, use el siguiente código para intentar eliminar la etiqueta env y todos sus valores con este
comando:
El resultado es
¡Ay! Parece que tiene que eliminar esta etiqueta de todos los recursos relacionados antes de
poder eliminarla, lo cual tiene sentido. Puede ejecutar los dos comandos siguientes para ubicar
todos los recursos y grupos de recursos que tienen una etiqueta específica:
Puede dejar el nombre de una etiqueta pero eliminar un valor en particular usando el - Valor
parámetro de Remove-AzTag. En este ejemplo, podría eliminar el ' projektY '
valor de tu proyecto' etiqueta corriendo Remove-AzTag -Name 'proyecto' -Value
'projektY'. De esa manera, cualquier otro valor del proyecto persistirá en su suscripción.
En este punto, probablemente sea más fácil buscar los recursos en el portal y eliminar las referencias
de etiquetas. Una vez que haya borrado la etiqueta de todos los recursos asociados, puede volver a
intentarlo con el Eliminar AzTag comando para eliminar la etiqueta.
256 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
Informes a través de etiquetas
La forma más sencilla de informar sobre qué recursos se han asociado con una etiqueta determinada
es abrir la hoja Etiquetas y hacer clic en la etiqueta correspondiente, como se muestra en la Figura
12-2.
FIGURA 12-2:
Informe de etiquetas en
el portal de Azure.
Cada par nombre: valor se muestra como una fila separada en la lista de Etiquetas. Puede ver
proyecto: aprendizaje o proyecto: prueba, por ejemplo.
Uno de los casos de uso más importantes de las etiquetas taxonómicas de Azure es el informe de costos. Da la
casualidad de que Azure simplifica la generación de estos datos en un formato visualmente atractivo.
FIGURA 12-3:
Utilice etiquetas para
realizar Azure
análisis de costos.
Los desarrolladores a menudo prefieren utilizar el acceso a la API para encontrar sus respuestas lo más rápido
posible. Para hacer esto, pueden usar varias API relacionadas con la facturación que incluyen etiquetas:
258 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
» API de uso de recursos: Esta API revela sus datos de consumo de servicios de Azure.
» API RateCard: Esta API muestra los precios actuales de los servicios de Azure basados en
región.
» API de gestión de costes en la nube: Esta API se encuentra detrás de Cost Management +
Facturación de la hoja de Azure Portal.
Obtenga más información sobre las API de consumo de Azure leyendo el artículo de la documentación
de Azure "Descripción general de la API de consumo de Azure" en https://docs.microsoft.
com / en-us / azure / billing / billing-consumer-api-overview.
Azure Policy es un documento simple de JavaScript Object Notation (JSON) que puede proteger todo su
grupo de administración o suscripción contra acciones de implementación que infrinjan la política de
su empresa. La política limita lo que los usuarios autorizados pueden hacer dentro de sus alcances de
implementación. Puede implementar una política que evite que los usuarios implementen máquinas
virtuales (VM) fuera de las regiones de Azure permitidas, por ejemplo.
Existen diferencias fundamentales entre los roles y la Política de control de acceso basado en roles
(RBAC). Los roles de RBAC permiten a sus usuarios de Azure realizar acciones particulares en sus
recursos de Azure, como implementar una máquina virtual.
Puede definir sus propias políticas, pero Microsoft ofrece políticas existentes que puede utilizar. A
continuación, se muestran algunos ejemplos de definiciones de políticas integradas:
» El cifrado de disco debe aplicarse en las máquinas virtuales: Aplicar cifrado de disco completo
a su sistema operativo y discos de datos de Azure VM.
» Agrega una etiqueta a los recursos: Agregue la etiqueta y el valor especificados cuando cualquier recurso
falta esta etiqueta se ha creado o actualizado.
» SKU de máquina virtual permitidos: Restrinja los tamaños de máquina virtual que los usuarios pueden implementar.
Como casi todo lo demás en Azure Resource Manager (ARM), las definiciones de políticas son
documentos JSON. Es una gran idea agregar parámetros a sus políticas para
"parámetros": {
"listOfAllowedLocations": {
"tipo": "Matriz",
"metadatos": {
"description": "La lista de ubicaciones que se pueden especificar cuando
desplegando recursos. ",
"strongType": "ubicación",
"displayName": "Ubicaciones permitidas"
}
}
}
Puede obtener más información sobre la sintaxis JSON de Azure Policy leyendo el artículo de
documentación de Azure "Estructura de definición de Azure Policy" en https: // docs.
microsoft.com/en-us/azure/governance/policy/concepts/definitionstructure.
Recuerde que Azure Resource Manager (ARM) es la API que subyace a todo lo que hace en
Azure.
"allowedValues": [
"EastUS",
"EastUS2",
"CentralUS"
]
260 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
{
"Si": {
"allOf": [
{
"campo": "ubicación",
"notIn": "[parámetros ('listOfAllowedLocations')]"
}
]
},
"luego": {
"efecto": "Denegar"
}
}
La política incluye efectos de política bastante diferentes. En Azure Policy, un efecto determina qué
hace Azure si una determinada política se evalúa como verdadera.
Con el efecto Auditoría, puede permitir implementaciones pero realizar un seguimiento de ellas de
cerca con fines de auditoría. El efecto DeployIfNotExists es superpotente porque la política puede
ejecutar una implementación de plantilla ARM para hacer cumplir la política. Por ejemplo, puede hacer
que una política vuelva a habilitar automáticamente los diagnósticos de recursos si un colega los
desactiva accidental o intencionalmente en un recurso.
» Autor: Por lo general, hace una copia de una definición de política existente, adjúntela
a un ámbito de gestión y edítelo para adaptarlo a sus necesidades.
En política, un iniciativa es un objeto contenedor asociado con una o más definiciones de políticas
individuales. El caso de uso de la iniciativa son las empresas que desean administrar múltiples
asignaciones de políticas relacionadas como una sola entidad. Sin embargo, este capítulo se centra en
las políticas individuales.
Puede definir una política vinculada al alcance de la suscripción que limite las regiones en las que los
administradores pueden implementar recursos. Siga estos pasos en el portal de Azure:
navegar por la lista de resultados. Les muestro esta interfaz en la Figura 12-4.
FIGURA 12-4:
Navegación incorporada
Política de Azure
definiciones.
Aparece la definición de política. Las plantillas integradas son de solo lectura, por lo que
debe duplicarlas para personalizarlas.
262 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
• Nombre: Haga que el nombre de la directiva sea significativo de acuerdo con la convención de
nomenclatura corporativa de Azure.
{
"campo": "ubicación",
"notEquals": "global"
},
{
"Tipo de campo",
"notEquals": "Microsoft.AzureActiveDirectory / b2cDirectories"
}
La única condición de la póliza que necesita, estrictamente hablando, es la que hace referencia
la listOfAllowedLocations valores paramétricos).
Asignar la política
Una vez que haya creado una definición de política personalizada, asígnela a su suscripción y
pruébela. Sigue estos pasos:
Es útil filtrar su vista para que solo vea sus políticas personalizadas.
3. Completa el formulario.
Aquí están mis recomendaciones para completar el formulario:
• Cree una identidad administrada: Esta opción es necesaria solo cuando su póliza
se implementará. A Identidad administrada en Azure Active Directory (AD)
es análogo a una cuenta de servicio en AD local; ver el Capítulo 11.
Abra el menú de notificaciones; Es posible que vea un mensaje de información que le informa que las
asignaciones de políticas tardan unos 30 minutos en entrar en vigencia.
Si navega hasta la hoja Asignaciones, debería ver su política recién asignada, como se muestra
en la Figura 12-5. Para obtener una vista más clara, abra la lista desplegable Tipo de definición y
filtre por Política.
FIGURA 12-5:
Lista de política
asignaciones.
264 PARTE 4 Proporcionar alta disponibilidad, escalabilidad y seguridad para sus recursos de Azure
Probando la política
Para probar la directiva, intente implementar un recurso de Azure en una ubicación no permitida. Por
ejemplo, intente implementar una nueva cuenta de almacenamiento; El Capítulo 3 describe cómo hacer esto.
FIGURA 12-6:
Política de Azure
bloqueado esto
despliegue.
Observe que el texto de error de Azure explica que la política no permite el recurso de cuenta
de almacenamiento deseado, e incluso le recuerda de manera útil qué política fue el protector.
PLANOS AZUR
Azure Blueprints es un servicio en el que puede empaquetar artefactos de Azure relacionados (incluidas plantillas
ARM, asignaciones de roles RBAC y definiciones de políticas) en unidades implementables que administra de forma
centralizada. Le sugiero que busque en Blueprints una forma de aplicar sus nuevas habilidades en el uso de estos
a https://docs.microsoft.com/en-us/azure/governance/blueprints/.
Capítulo 13
Extendiendo tu
En las instalaciones
Medio ambiente a azure
I en Azure. La buena noticia es que Microsoft proporciona muchas herramientas para facilitar
elEn
proceso. También
este capítulo, analizo
cubro cómo
la tarea decrear una
migrar nubey híbrida
datos en la que
aplicaciones
su infraestructura de red local en una red virtual de Azure.
extiendes
locales
La gestión de datos en las instalaciones puede resultar costosa y estresante. Hay que tener en cuenta
la resiliencia de los datos, así como la recuperación ante desastres. Tiene problemas de seguridad,
como el cifrado de datos, y debe preocuparse por quedarse sin espacio y tener que realizar gastos de
capital adicionales para expandir su estructura de almacenamiento local.
» Copia de blob
» Caja de datos de Azure
» Azure Migrate
Copia de blob
La forma más sencilla de obtener datos BLOB locales en una cuenta de almacenamiento es
hacer copias de archivos. Puede usar Azure Storage Explorer, pero una mejor opción es AzCopy
herramienta de línea de comandos, disponible gratis en https://docs.microsoft.com/en-us/
azure / storage / common / storage-use-azcopy-v10? WT.mc_id =
thomasmaurerblog-thmaure.
A continuación, realiza la copia (tenga en cuenta que el siguiente código debe estar en una
línea; tuve que romper la línea para que quepa en la página impresa):
- - recursivo --put-md5
La -- recursivo flag asegura que copie todas las subcarpetas dentro de la carpeta principal. La -- put-md5
flag indica a AzCopy que verifique que los archivos copiados coincidan con sus versiones locales
mediante la verificación de suma de comprobación MD5.
La ventaja de este método de migración de datos es que es muy económico, salvo el ancho de banda
de la red. La desventaja es que el proceso puede tardar horas o días en completarse. Además, aunque
AzCopy incluye lógica de reintento en caso de una interrupción de la copia, el programa se cancelará
después de un tiempo de espera de 15 minutos, lo que puede hacer que el proceso de migración de
datos tarde más.
Azure Data Box es una colección de dispositivos de almacenamiento físico (y una opción virtual)
que alquila a Microsoft. El flujo de trabajo de Data Box de alto nivel es
3. Utilice el portal web local de Data Box para estructurar cómo desea que se vean los datos del lado de
» Disco de caja de datos: Unidad SSD de 8 TB, disponible en paquetes de cinco (40 TB). Conecta los discos
en su estación de trabajo local utilizando una interfaz USB / SATA.
» Cuadro de datos: Dispositivo reforzado con capacidad de 100 TB; se conecta a su LAN
con puertos Ethernet de alta velocidad.
» Puerta de enlace de caja de datos: Una versión de dispositivo virtual de Data Box Edge.
Azure tiene un producto de migración de datos sin conexión heredado llamado Servicio de
importación / exportación mediante el cual usted prepara sus propios discos duros y los envía a
Microsoft. Decidí ignorar esta opción para este libro porque Data Box es mucho más flexible y
rentable. Consulte los documentos para obtener más información: https://docs.microsoft.com/
en-us / azure / storage / common / storage-import-export-service.
La Figura 13-1 muestra los diversos factores de forma físicos del cuadro de datos. El Data Box
Gateway es un dispositivo de software; por lo tanto, no se muestra.
La ventaja de Data Box es que es una forma conveniente de obtener grandes volúmenes de
datos en Azure. La desventaja (con la excepción de Data Box Edge y Data Box Gateway) es la
latencia entre el pedido, el llenado, el envío y el desembalaje del dispositivo. Es posible que no
pueda permitirse ese tipo de latencia de datos.
Prácticamente todas las opciones de migración de datos se dan hoy en día bajo el paraguas del
producto Azure Migrate. Siga estos pasos para crear un nuevo proyecto de migración de base de
datos y comenzar una evaluación:
FIGURA 13-2:
Agregar herramientas
a un Azure
Migrar proyecto.
DMA es una aplicación de escritorio gratuita que puede descargar y ejecutar en su estación de trabajo
administrativa.
FIGURA 13-3:
Utilice DMA para
evaluar su local
servidor SQL
bases de datos para
Preparación de Azure.
Cuando ejecuta DMA, modela su base de datos local de SQL Server contra uno de cuatro
destinos:
DMA verifica la compatibilidad de su base de datos con la opción de base de datos de Azure definida y
verifica la paridad de características para asegurarse de que no está usando características locales que
no están disponibles en Azure. También le permite cargar los resultados de su evaluación en su
proyecto de Azure Migrate, lo que alimenta la siguiente fase: la migración.
» MongoDB
» MySQL
» AWS RDS para MySQL
» PostgreSQL
» AWS RDS para PostgreSQL
» Oráculo
• Tipo de servidor de origen: Seleccione el tipo de servidor de origen, como SQL Server.
• Tipo de servidor de destino: Seleccione el tipo de servidor al que está migrando, como SQL
Database.
Una nota importante: mientras que la evaluación de la base de datos no requiere VPN, debe
tener una ruta de conexión segura existente entre su servidor de base de datos local y Azure
para completar la migración de la base de datos con Azure Database Migration Services. Puede
ser una VPN de punto a sitio, una VPN de sitio a sitio o un circuito ExpressRoute.
Si establecer una VPN no es viable, puede realizar la migración de la base de datos con la
herramienta DMA, que utiliza protocolos web seguros estándar y no requiere VPN. La Figura
13-4 muestra la interfaz.
Probablemente se pregunte: "Tim, ¿por qué debería usar DMS cuando DMA no solo puede evaluar mis
bases de datos locales, sino también migrarlas?"
FIGURA 13-4:
La herramienta DMA puede
la migración también
como valoración.
» Solo DMS admite la migración de bases de datos que no son de SQL Server.
» DMS fue construido para funcionar a gran escala.
En conclusión, si necesita migrar solo una pequeña cantidad de bases de datos de SQL Server, es
probable que no necesite DMS. Pero si está operando en una gran cantidad de bases de datos
potencialmente gigantes de todos los proveedores, DMS es una excelente opción.
Sin embargo, también puede migrar VHD locales a una cuenta de almacenamiento de Azure
mediante AzCopy; luego, convierte los VHD cargados en discos administrados.
Carga de VHD
Un uso común y todavía válido de una herramienta como AzCopy es la migración de VHD generalizados de las
implementaciones locales a Azure a las implementaciones de máquinas virtuales (VM) de Azure. Para hacer
eso, primero cargue su VHD de Generación 1 generalizado.
Cuando tenga su VHD generalizado en una cuenta de almacenamiento, puede usar Azure
PowerShell para crear un disco administrado. Sigue estos pasos:
$ vmName = "plantilla-vm"
$ rgName = "myResourceGroup"
$ ubicación = "EastUS2"
$ imageName = "myImage"
$ osVhdUri = https://mystorageaccount.blob.core.windows.net/vhdcontainer/
vhdfilename.vhd
Cuando tenga su imagen administrada en su lugar, puede implementar nuevas VM basadas en esa imagen.
En la pestaña Conceptos básicos de la hoja Crear una máquina virtual, haga clic en Examinar todas las
imágenes públicas y privadas y cambie a la pestaña Mis elementos, que se muestra en la imagen compuesta
de la Figura 13-5. El capítulo 5 trata sobre la creación de una máquina virtual de Azure.
FIGURA 13-5:
Implementar Azure
VM basadas en
tu propia costumbre
Imágenes VHD.
Microsoft permite que determinados socios proveedores de software independientes incluyan sus
FIGURA 13-6:
Agregar herramientas
a un Azure
Migrar servidor
proyecto de migración.
Luego, puede iniciar un proceso de descubrimiento y evaluación que toma diferentes formas,
dependiendo de si tiene un entorno Hyper-V o VMware en las instalaciones.
Descarga un dispositivo Migrate VM, lo coloca en su red local y deja que haga su trabajo. El
dispositivo hace un buen trabajo al enumerar todos sus servidores locales e informar sobre
cómo podrían traducirse en máquinas virtuales de Azure.
La Figura 13-7 muestra un ejemplo de informe de evaluación del servidor. Además de brindarle
recomendaciones sobre el tamaño de la máquina virtual, el motor de evaluación del servidor le brinda
estimaciones de costos. En mi trabajo como arquitecto de soluciones de Azure, nunca he conocido a un cliente
para el que minimizar los costos no fuera una preocupación principal.
FIGURA 13-7:
Servidor Azure
evaluación
los informes incluyen
gráficos y
datos de la tabla.
1. Cree un entorno de red virtual en Azure para sus máquinas virtuales locales y
servidores físicos.
2. Replica los discos de tus servidores locales en Azure hasta que sus datos estén
sincronizados.
3. Realice la conmutación por error desde su entorno local a su red virtual de Azure.
4. Detenga la replicación.
5. Desmantele sus servidores locales porque ya no los necesita. Continúe usando sus
6. servicios en Azure.
No necesita una conexión VPN o ExpressRoute para realizar esta replicación de Azure Migrate /
ASR. Con el tiempo, el proceso de replicación será sin agente para entornos VMware (Hyper-V
ya no tiene agente), pero la replicación de VMware sin agente se encuentra en estado de vista
previa en este momento.
La ventaja de la migración de servidores de Migrate es que la replicación significa casi cero tiempo de
inactividad. La desventaja es que el éxito de la replicación inicial puede ser sustancial y costoso si tiene
una conexión a Internet con medidor.
Cierro este capítulo con una revisión de las dos formas principales en las que puede extender
su entorno local a Azure:
VPN S2S
Una VPN es una conexión segura a través de un medio inseguro: Internet. Las VPN de Azure
S2S son conexiones seguras siempre activas que canalizan el tráfico de Internet mediante los
protocolos de seguridad Internet Protocol Security (IPSec) e Internet Key Exchange (IKE).
Las propuestas de valor de establecer un túnel VPN entre su red local y una red virtual de Azure
son múltiples. La VPN le permite hacer lo siguiente:
Ampliar es una palabra apropiada para una nube híbrida de Azure porque la nube híbrida le
permite hacer que su red local esté disponible para su suscripción de Azure y viceversa.
Permítame guiarlo a través de las partes y piezas de la VPN S2S. La figura 13-8 muestra una
vista de alto nivel de una nube híbrida de Azure:
Le recomiendo que lea "Acerca de los dispositivos VPN y los parámetros IPsec / IKE para las
conexiones de puerta de enlace VPN de sitio a sitio" (¡qué título de un artículo, verdad?) En
https://docs.microsoft.com/en-us/azure/vpn-gateway/vpn-gateway-
about-vpn-devices. Ese artículo enumera todos los dispositivos VPN validados que Microsoft
garantiza que funcionarán con Azure. Es probable que encuentre un enlace a una guía de
configuración detallada proporcionada por el fabricante de su dispositivo o Microsoft.
Las VPN de Azure usan VPN de variedad de jardín y protocolos de enrutamiento como IPSec,
IKE y Border Gateway Protocol (BGP), por lo que no debería tener dificultades para configurar
su lado local del túnel VPN incluso si su hardware no está en la lista de Microsoft de dispositivos
validados.
Este recurso de Azure se denomina puerta de enlace de red virtual en lugar de puerta de enlace
VPN porque es multifuncional. Con este único recurso, puede crear cualquier combinación de
las siguientes conexiones:
» VPN de red virtual a red virtual: Configure este túnel IPSec seguro entre dos
Redes virtuales de Azure. Estrictamente hablando, esta pasarela ya no es necesaria
gracias al emparejamiento de VNet.
» VPN de punto a sitio: Puede configurar equipos cliente específicos para crear
sus propios túneles VPN privados en su red virtual. Ver la barra lateral
"Azure P2S VPN" más adelante en este capítulo para obtener más detalles.
Dicho eso, usaré Puerta de enlace VPN para indicar una puerta de enlace de red virtual
configurada para una o más conexiones VPN S2S. Sí, es cierto: una sola puerta de enlace VPN
puede administrar varias conexiones al mismo tiempo.
Cuando se usa junto con el protocolo de enrutamiento dinámico BGP, la puerta de enlace VPN admite
escenarios de conmutación por error activo-activo para tolerancia a fallas. Para obtener más
información, lea "Descripción general de BGP y Azure VPN Gateways" en https://docs.microsoft.
com / en-us / azure / vpn-gateway / vpn-gateway-bgp-overview.
La puerta de enlace VPN está disponible en cuatro unidades de mantenimiento de existencias (SKU); La tabla 13-1
VpnGw2 1 Gbps 30
Otra opción de configuración de puerta de enlace VPN es cómo maneja el dispositivo el enrutamiento de
tráfico IPSec. Las puertas de enlace basadas en rutas utilizan tablas de enrutamiento estático, mientras que
las puertas de enlace basadas en políticas aprovechan los protocolos de enrutamiento dinámico como BGP. Su
elección depende en gran medida de la antigüedad de su hardware VPN local. La guía general es que el
hardware de VPN más antiguo normalmente requiere que seleccione la puerta de enlace basada en rutas para
el lado de Azure del túnel.
Finalmente, sepa que su puerta de enlace VPN debe colocarse en su propia subred en su red
virtual de concentrador. Es posible que haya notado el botón Subred de puerta de enlace en la
hoja Subredes de su red virtual (consulte la Figura 13-9). No tiene que usar este botón para
crear su subred de puerta de enlace, pero la subred necesita el nombre GatewaySubnet (sin
espacios).
Microsoft recomienda utilizar el espacio de direcciones IP más pequeño posible para la subred
de la puerta de enlace para que conserve sus direcciones IP privadas. Una dirección de red / 29
es una opción común.
En Azure, la puerta de enlace de la red local es un recurso que representa su red local. La
puerta de enlace de la red local contiene dos o tres valores de configuración importantes:
Cuando piensa en esto, tiene sentido en la medida en que Azure necesita poder identificar no
solo el concentrador de VPN en el otro extremo del túnel, sino también los segmentos de red
remota que facilitan el enrutamiento del tráfico de la nube híbrida.
Tenga cuidado con los rangos de direcciones IP privadas que usa en Azure. Lo último que desea hacer
es solucionar problemas / solucionar conflictos de direcciones IP entre sus redes locales y las redes
virtuales de Azure. Utilice siempre rangos de direcciones IP que no se superpongan.
Todas las partes y piezas de la nube híbrida de Azure que he analizado son parte de la familia
de productos de Azure, por lo que todo lo que se ha tratado en el libro hasta ahora, incluidos
RBAC, políticas, etiquetas taxonómicas, etc., se aplica aquí tanto como a cualquier otro recurso.
No tenga miedo de aplicar sus nuevos conocimientos.
ExpressRoute
ExpressRoute es similar a la VPN de Azure S2S en que es una conexión privada siempre activa
entre su red local y una red virtual de Azure. ExpressRoute es único porque es una conexión
Azure verdaderamente privada que pasa por alto la Internet pública. Los enlaces ExpressRoute
no requieren protocolos de tunelización.
Las opciones de ancho de banda del circuito ExpressRoute van de 50 Mbps a 10 Gbps. Esto
significa que puede tener una conexión a Azure que es tan rápida como la velocidad de su red
local. La entrada de datos en ExpressRoute es gratuita, pero se le cobra por la descarga de
datos a menos que compre el plan de datos ilimitados de ExpressRoute.
ExpressRoute tiene dos opciones de emparejamiento que puede usar por separado o en
combinación:
FIGURA 13-10:
ExpressRoute
representante
topología.
Necesita dos enrutadores de borde para crear una conexión ExpressRoute. También debe trabajar con
un proveedor local de conectividad de ExpressRoute externo para que lo ayude a conectarse con la
plataforma en la nube de Microsoft.
Microsoft requiere que proporcione dos enrutadores de borde en su lado del circuito
ExpressRoute por tres razones:
» Permitir que Microsoft ofrezca sus acuerdos de nivel de servicio (SLA) de ExpressRoute
» Para proporcionar redundancia de conmutación por error
» Para permitirle combinar los dos enlaces para maximizar el ancho de banda
Las opciones de Azure VPN y ExpressRoute extienden su red local a Azure para que pueda
integrar máquinas virtuales basadas en Azure y otros recursos de manera más directa en su
estrategia de gobierno de TI local.
Por el contrario, Arc trae elementos centrales de Azure Resource Manager (ARM) a sus redes
locales, así como a las que mantiene en otras nubes. La figura 13-11 muestra una descripción
general de la topología de Azure.
FIGURA 13-11:
Topología de arco
Información general.
La segunda propuesta de valor que Arc trae a la mesa es la noción de implementar recursos de
Azure directamente en su entorno local. Puede usar plantillas ARM, por ejemplo, para
implementar máquinas virtuales, bases de datos y clústeres de Kubernetes en sus propios
centros de datos y luego administrar estos recursos junto con sus recursos nativos de la nube
mediante las herramientas de Azure.
» Azure Arc para servidores: Gestionar máquinas virtuales y físicas que están fuera
Azure mediante el uso de herramientas nativas de Azure.
» Azure Arc para servicios de datos: Ejecute servicios de datos de Azure como Azure SQL
Base de datos y base de datos de Azure para PostgreSQL local o en otro
entorno de nube.
Arc for Servers está en vista previa pública, y Arc for Kubernetes y la plataforma de datos están en
estado de vista previa privada. Normalmente, debe solicitar ser parte de una vista previa privada,
mientras que las características de vista previa pública están disponibles para algunos o todos los
clientes de Azure. Tenga en cuenta que Microsoft normalmente no admite ni proporciona un SLA en
las características de vista previa de Azure. La guía general es que debe ejecutar las características de
vista previa de Azure solo en sus entornos de prueba / desarrollo.
Arc for Servers es la única función que está disponible públicamente en este momento, por lo que ese
producto es el tema central de las siguientes secciones.
Preparando su entorno
En mi entorno de laboratorio local, tengo dos máquinas virtuales: una que ejecuta Windows
Server 2019 y otra que ejecuta Ubuntu Linux 16.04. Para mantener mi entorno Arc ordenado,
creo un grupo de recursos para albergar mis dos máquinas locales. En esta sección, le muestro
cómo usar Arc for Servers para incorporar estas máquinas en una suscripción de Azure.
Todo lo que proporciona aquí es la suscripción de Azure, el nombre del grupo de recursos y la región
adecuados. En el momento de redactar este documento, Azure Arc solo está disponible en regiones
seleccionadas. No se sorprenda por esto; Microsoft implementa características de vista previa gradualmente
con el objetivo de que el producto esté disponible en todas las regiones para su fecha de disponibilidad
general.
No necesita una conexión VPN o ExpressRoute a Azure para agregar un servidor. Todo lo que necesita
hacer para que Azure pueda administrar un sistema local es instalar un solo agente.
Siga estos pasos para incorporar un sistema Windows Server a Arc. Por supuesto, puede
realizar estos pasos solo si tiene servidores locales disponibles:
En el momento de redactar este documento, los productos de plataforma de datos y Kubernetes aún no están disponibles.
La interfaz puede tener cambió, y lo que ve puede verse diferente al de la Figura 13-12;
tal es la naturaleza del ecosistema en evolución de Azure.
Lea la barra lateral cercana "Agregar servidores a escala" para obtener más información sobre el otro
FIGURA 13-12:
Elegir un servidor
inducción
método para Arc.
Para las máquinas con Windows, verá la siguiente secuencia de comandos (o algo similar si
# Descarga el paquete
Invoke-WebRequest -Uri https://aka.ms/AzureConnectedMachineAgent
- OutFile AzureConnectedMachineAgent.msi
Azure Portal llenó dinámicamente este código de PowerShell con los detalles del
entorno que especificó anteriormente en el proceso de implementación.
Por motivos de seguridad, Windows no ejecuta todos los scripts de PowerShell de forma predeterminada.
Para asegurarse de que puede ejecutar el script de incorporación de Arc, escriba y ejecute el siguiente
comando:
Este código relaja la política de ejecución de scripts del sistema durante la duración de esta
sesión de PowerShell.
usaste el CD comando para establecer la ubicación del símbolo del sistema en el mismo directorio que el archivo
de secuencia de comandos, por ejemplo, puede escribir lo siguiente para ejecutar la secuencia de comandos:
. \ OnboardingScript.ps1
El script de incorporación de Arc for Servers se detiene para solicitarle que se autentique en Azure. La Figura
FIGURA 13-13:
Incorporación de un
Servidor de windows
sistema a Arc.
Para obtener más información sobre la incorporación de sistemas a Arc a escala, consulte "Inicio rápido:
conectar máquinas a Azure mediante Azure Arc para servidores - PowerShell" en https: // docs.
microsoft.com/en-us/azure/azure-arc/servers/quickstart-onboardpowershell.
Abra una Terminal en el sistema Linux, busque el directorio donde copió el OnboardingScript.sh
script y ejecútelo. Si el símbolo del sistema de la Terminal está en el mismo
directorio que el script, por ejemplo, escriba y ejecute el siguiente comando
Bash:
sudo sh ./OnboardingScript.sh
Como puede ver en la Figura 13-14, su entorno Arc ahora tiene dos VM administradas en las
instalaciones.
FIGURA 13-14:
Visita
incorporado
VM locales en el
Portal de Azure.
Policy es una plataforma poderosa para la gobernanza de recursos de Azure. Suponga que su
empresa está ubicada en el oeste de Estados Unidos. Debe asegurarse de que todos los sistemas
tengan asignada la zona horaria del Pacífico mediante la política.
Siga estos pasos para configurar una máquina Arc basada en Windows Server para la asignación de
políticas:
2. Seleccione la configuración de Políticas y luego haga clic en Asignar política en la barra de herramientas.
La Figura 13-15 muestra la interfaz de configuración de la VM. Si está pensando que administrar un sistema
local funciona exactamente como lo hace para administrar una máquina virtual nativa de Azure, comprende
FIGURA 13-15:
Ver un
Gestionado por arco
• Exclusiones: Utilice este control para excluir el sistema Ubuntu de esta política. La
política de zona horaria que está a punto de asignar es solo para sistemas Windows.
• Politica de ACCION: Las opciones están habilitadas y deshabilitadas. Desea utilizar esta política, así
que asegúrese de que esté configurada como Habilitada.
En este escenario, está asignando todos los sistemas a la hora del Pacífico: UTC - 8 horas en
los Estados Unidos y Canadá.
La política puede abarcar mucho más que simplemente auditar el cumplimiento. Aquí, seleccione la casilla de
verificación Crear una tarea de corrección para indicar a Azure que configure la zona horaria del servidor de
Asegúrese de que la lista desplegable Política para remediar esté configurada para su política. Azure
crea una identidad administrada para proporcionar un contexto de seguridad para la tarea de
A identidad gestionada es una identidad de Azure AD de propósito especial que actúa de manera muy
similar a una cuenta de servicio en un entorno de red local. Para obtener más información sobre las
identidades administradas en Azure, lea “¿Qué son las identidades administradas para Azure?
¿recursos?" a https://docs.microsoft.com/en-us/azure/activedirectory/managed-identities-azure
Puede realizar un seguimiento del estado de corrección de políticas navegando a la hoja Políticas del
servidor de Windows, seleccionando su política y cambiando a la pestaña Tareas de corrección
(consulte la Figura 13-16).
cumplimiento y
remediacion
estado.
Puede crear un conjunto de etiquetas taxonómicas para sus servidores Arc. Específicamente, define una etiqueta
Siga estos pasos para asignar una etiqueta taxonómica a un recurso de Arc (o Azure nativo):
3. Definir el env: arco etiqueta y luego haga clic en Guardar para guardar los cambios.
Tenga en cuenta que las etiquetas taxonómicas son pares nombre: valor. Simplemente escriba el nombre de la
etiqueta y el valor de la etiqueta; como alternativa, puede reutilizar nombres y / o valores de etiquetas definidos
previamente.
un recurso Arc.
Para obtener más información sobre las etiquetas taxonómicas, consulte la barra lateral cercana "¿Qué se puede hacer
los costes y la utilización por separado para cada entorno. A primera vista, el grupo de recursos parece ser el
contenedor más apropiado para estas implementaciones rastreadas. Sin embargo, la realidad es que la mayoría
Por lo tanto, al aplicar etiquetas taxonómicas a sus recursos y grupos de recursos, puede agregar recursos de Azure en
todo su entorno y luego informar sobre ellos, utilizando herramientas como Azure Monitor, Azure Cost Management y
Azure Log Analytics. Para conocer las prácticas recomendadas sobre el uso de etiquetas en Azure, consulte “Decisión de
Capítulo 14
Monitoreo de su
Entorno azur
T Este
El capítulo
monitoreo esexplica cómoimportante
una habilidad comprobarporelmuchas
pulso de todos sus recursos de Azure.
razones:
Al final de este capítulo, estará al día con Azure Monitor y Azure Log Analytics.
» Registros: Archivos de texto o tablas que describen varios eventos del sistema y datos métricos
El termino telemetria recibe mucha prensa con respecto a Azure; este término simplemente se refiere a la
capacidad de un recurso para transmitir su métrica y datos de registro a un recurso recolector.
La palabra telemetria deriva de dos palabras griegas: tele significado A una distancia, y
métron, significado la medida. En inglés contemporáneo, se puede decir que telemetría
significa medición remota.
Para los recursos de Azure que no son de VM, puede habilitar el registro de diagnóstico y las
métricas de forma individual visitando la hoja de configuración de cada recurso en Azure Portal
o visitando Azure Monitor. Siempre habilita los diagnósticos para sus máquinas virtuales (VM)
Windows Server y Linux en el nivel de recursos de la VM.
El registro de actividad de AzureMonitor realiza un seguimiento de lo que Microsoft llama "eventos del plano
de control", que son eventos administrativos emitidos por el propio Azure o por usted y sus compañeros
administradores de Azure. Algunos ejemplos de eventos del plano de control incluyen el reinicio de una
máquina virtual, la implementación de Azure Key Vault o la obtención de claves de acceso a la cuenta de
almacenamiento.
El Registro de actividad recopila solo eventos de nivel de suscripción. Si desea agregar datos de
registro de actividad de varias suscripciones, debe echar un vistazo a Azure Activity Log
Analytics, que se trata más adelante en este capítulo.
FIGURA 14-1:
Actividad de Azure
Registros de registro
administrativo
eventos iniciados
por ti o por
El propio Azure.
Puede escribir su nombre de usuario de Azure AD en el cuadro de búsqueda para ver solo los eventos
• Tipo de recurso: Muestra máquinas virtuales, aplicaciones web, bases de datos, etc.
• Operación: Muestra crear, eliminar, escribir o realizar cualquier otra acción que afecte a
los recursos de Azure.
• Espacio de tiempo: Enumere los eventos que ocurrieron en la última hora o mes, o en un
intervalo personalizado.
La barra de herramientas en la parte superior de la Figura 14-2 contiene algunos botones útiles:
» Editar columnas: Personalice las propiedades de visualización utilizadas en las vistas de lista de recursos.
Debería acostumbrarse a utilizar este control en todas las listas de recursos. Nota
que sus personalizaciones aquí afectan solo a su cuenta de Azure Active
Directory (AD), no a la de sus colegas.
» Actualizar: Haga clic para asegurarse de ver los datos más recientes.
» Exportar a Event Hub: Transmita los datos de registro de actividad filtrados actuales a un
Espacio de nombres de Event Hub. Entonces puedes suscribirte a este flujo de registro de actividad
utilizando otros recursos de Azure y procese los datos de acuerdo con los requisitos de su
negocio.
» Descargar como CSV: Desplácese hacia abajo una representación de valores separados por comas (CSV)
de la vista Registro de actividad actual.
» Restablecer filtros: Elimina los filtros definidos por el usuario y restablece la vista al
defecto.
Al hacer clic en un evento de Registro de actividad, se muestra un resumen. La pestaña Resumen, que
se muestra en la Figura 14-2, muestra información general. Haga clic en la pestaña JSON para revelar
los detalles en formato JSON. Este JSON proporciona detalles profundos sobre el evento y es útil
cuando realiza una resolución de problemas forense para averiguar exactamente quién hizo qué,
cuándo, en su suscripción.
Activity Log Analytics es un servicio premium (pago) que le permite consolidar los datos de Activity Log
de múltiples suscripciones; configurar políticas de archivo de datos más extensas; ejecutar consultas
interactivas; y crear informes dinámicos sobre los datos de las consultas. Puede obtener más
información sobre el análisis de registros de actividad en https://docs.microsoft.com/
en-us / azure / azure-monitor / platform / activity-log-collect.
Azure Monitor Diagnostics Settings es una estación de control central para habilitar
diagnósticos de recursos que no son VM. Siga estos pasos para habilitar el diagnóstico de
recursos en Azure Monitor:
tú para habilitar
diagnósticos
centralmente para
varios recursos.
FIGURA 14-4:
Configurando
Recurso de Azure
diagnósticos.
Se le cobrará por usar cualquier otro recurso de Azure, incluso como parte de una configuración separada. Al
configurar los diagnósticos para almacenar datos de diagnóstico de recursos en una cuenta de
almacenamiento, por ejemplo, está aceptando esos cargos adicionales relacionados con la cuenta de
almacenamiento.
Configuración de diagnóstico de VM
Los diagnósticos de recursos de máquina virtual se manejan por separado de otros recursos de Azure. La
habilitación de los diagnósticos de máquinas virtuales implica la instalación de la extensión Azure Diagnostics.
Como era de esperar, las métricas y los registros específicos recopilados por esta extensión dependen del
sistema operativo (Windows o Linux).
2. En la página Descripción general de la configuración de diagnóstico, haga clic en Habilitar nivel de invitado
Vigilancia.
Es importante tener en cuenta que Azure recopila datos de VM muy básicos sin necesidad
de un agente. Al habilitar los diagnósticos de invitados, le indica a Azure que recopile datos
de diagnóstico más detallados y granulares para la máquina virtual.
3. En la lista de configuración de la máquina virtual, haga clic en Extensiones y verifique que Azure
Se ha instalado la extensión de diagnóstico.
En la Figura 14-5, puede ver que mi máquina virtual VM1 tiene el diagnóstico de VM y otras
extensiones instaladas.
VMDiagnosticsSettings (Windows).
También puede utilizar las métricas y los sistemas de alerta de Monitor, que cubriré más adelante en este
capítulo.
FIGURA 14-5:
Verificando el
presencia del
Diagnósticos de VM
extensión para un
Máquina virtual de Azure.
• Contadores de rendimiento
• Registros de eventos
• Métricas de hardware del sistema (procesador, memoria, red, sistema de archivos y disco)
FIGURA 14-6:
Personalización
el diagnóstico
iniciando sesión en un
Servidor de windows
VM en ejecución
en Azure.
Debe tener una cuenta de almacenamiento existente en la región de una máquina virtual de Linux para habilitar el diagnóstico de
Diagnósticos de VMboot
Casi siempre recomiendo que mis clientes habiliten el diagnóstico de arranque en máquinas virtuales de
Windows Server y Linux. Los datos de diagnóstico de arranque se almacenan en el servicio de blob de una
cuenta de almacenamiento designada. Esta función ofrece dos beneficios a los administradores:
» Los diagnósticos de arranque toman periódicamente una captura de pantalla de la pantalla de su máquina virtual, una
comprobación de cordura conveniente para asegurarse de que su máquina virtual no esté en un estado detenido.
Portal de Azure. La consola en serie puede salvarle la vida cuando la pila de red de su máquina
virtual está fuera de línea y no puede acceder a la máquina virtual a través de Internet o su
conexión VPN.
En esta sección, vuelvo a Azure Monitor para examinar los datos de diagnóstico de VM y los recursos
de Azure. Como se mencionó anteriormente, la plataforma Azure recopila métricas de recursos
básicas que se pueden ver en Azure Monitor. Sin embargo, obtiene una visión mucho más profunda
cuando habilita formalmente el diagnóstico de sus recursos.
Chartingmetrics
Métrica son valores de series de tiempo extraídos de su recurso periódicamente. Siga estos pasos para
usar el Explorador de métricas de Azure Monitor para trazar el consumo de CPU en varias máquinas
virtuales:
2. Haga clic en el icono de lápiz junto al título del gráfico y asigne a su gráfico un significado
nombre.
• Espacio de nombres métrico: Seleccione Host de máquina virtual. Este valor depende
del recurso que haya cargado en la propiedad Resource.
• Métrico: Seleccione Porcentaje de CPU. Las métricas son específicas del recurso y
pueden ser una lista más larga o más corta dependiendo de si ha habilitado
diagnóstico de recursos.
que seleccionó cuando definió la primera fila de recursos. La figura 14-7 muestra un gráfico resultante.
FIGURA 14-7:
Explorador de métricas
en Azure Monitor
te dio
de un vistazo
diagnósticos y
actuación
datos.
» Utilice Nuevo gráfico (A) para crear más de un gráfico en el Explorador de métricas.
» Haga clic en Compartir (B) para descargar la definición de su gráfico como un trabajo de Microsoft Excel.
libro. Tenga en cuenta que si no fija el gráfico en su panel de control o no guarda su
definición, se pierde al salir de Metrics Explorer. Asegúrese de guardar un enlace,
descargar la definición o guardar su gráfico de métricas en su tablero si lo
necesitará en el futuro.
» Haga clic en la lista desplegable Rango de tiempo / Granularidad de tiempo (C) para establecer el rango de tiempo.
» Utilice la lista desplegable del gráfico de líneas (D) para mostrar sus datos en uno de los cinco gráficos
formatos: línea, área, barra, dispersión y cuadrícula.
» Haga clic en Nueva regla de alerta (E) para configurar una regla de alerta basada en el
loadedmetrics.
» Haga clic en el botón Más (G) y seleccione Configuración de gráfico para modificar el gráfico.
propiedades.
» Haga clic en la fila de métricas (H) para ajustar el recuento de métricas que se muestra en su gráfico.
Los gráficos de métricas desaparecen cuando hace clic fuera del Explorador de métricas en Azure
Monitor. Haga clic en Compartir y luego seleccione Copiar enlace y guarde ese enlace en la lista de
Favoritos de su navegador web. De esa manera, puede recuperar su gráfico cuando Azure lo vaporice.
Configurar alertas
Las alertas en Azure son superpoderosas porque puede configurar Azure para tomar acciones
correctivas automatizadas cada vez que se activa una alerta. Un grupo de acciones puede
contener uno o más de los siguientes tipos de acciones:
» Correo electrónico / SMS / Push / Voz: Notifica a una o más cuentas de varias formas
» ITSM: Crea un ticket en su plataforma de gestión de servicios de TI
» Webhook: Envía una respuesta HTTP (S) con formato particular a un receptor
servicio (Azure Event Grid, Function App, Logic App, etc.)
Suponga que necesita configurar una alerta de modo que reciba una notificación por correo
electrónico cada vez que se reinicia su Winserver VM. Usted define su grupo de acción, crea la
regla de alerta y reinicia la VM para probar la alerta.
de recursos, comienza el verdadero trabajo: definir su acción. Así es como configuro mi regla de acción
• Tipo de acción: Correo electrónico / SMS / Push / Voice. Se le pedirá que especifique la dirección de
Microsoft separó intencionalmente los grupos de acción y las reglas de acción de sus alertas. De esta
forma, puede reutilizar fácilmente los mismos grupos de acciones y reglas con diferentes alertas.
Bastante conveniente, ¿eh?
» Métrica: Estas son las mismas métricas con las que ha estado trabajando a lo largo de
el capítulo.
» Registro de actividades: Estos son eventos registrados en el Registro de actividad. Para reiniciar una máquina virtual
condición, necesita este tipo de señal.
Debido a las limitaciones de la plataforma Azure, está limitado a dos señales de métricas o una señal de
Registro de actividad por regla de alerta.
Siga estos pasos para crear una regla de alerta que se active cada vez que se reinicie una máquina virtual
determinada:
Asegúrese de seleccionar Sí para Habilitar regla al momento de la creación para que pueda probarla.
Probando la alerta
Puede ver las definiciones de las reglas de alerta si vuelve a visitar la hoja Alertas de Azure Monitor y
hace clic en Administrar reglas de alerta.
En mi entorno, reinicié mi máquina virtual winserver y esperé. En unos minutos, recibí mis
notificaciones de alerta. La captura de pantalla compuesta en la figura 14-10 muestra el portal
de Azure, el correo electrónico de notificación y la alerta de mensaje de texto SMS.
definición.
FIGURA 14-10:
Diferentes caminos
Azure informa
tu que un
la regla de alerta era
motivado.
Lamentablemente, una discusión en profundidad de Application Insights queda fuera del alcance de este libro. Sin
embargo, para brindarle la introducción más breve posible, permítame decirle que Application Insights es un
producto de administración del rendimiento de las aplicaciones de Azure que funciona con todas las aplicaciones
de Azure App Service. Application Insights le permite recopilar telemetría detallada de sus aplicaciones y mostrar
los datos de forma significativa en vistas numéricas y / o gráficas. Muestra a los desarrolladores dónde van los
usuarios en sus aplicaciones de App Service y qué tipo de problemas relacionados con el rendimiento ocurren
para que los desarrolladores puedan identificar y resolver estos errores. Para obtener más información sobre
Después de haber pasado algún tiempo en Azure Monitor, ha visto algunos de los innumerables
archivos de registro que crean sus recursos de Azure. Piense en todas las formas en que se
representan los datos e imagine una forma de poner todos sus registros en un solo lago de datos y
ejecutar consultas en él sin problemas. "¿Me estás guiando de nuevo, Tim?" usted pregunta.
Sí lo soy. Log Analytics es una plataforma en la que puede hacer precisamente eso: agregar archivos de
registro de recursos de VM y Azure en un solo lago de datos (llamado Espacio de trabajo de Log Analytics)
y luego ejecute consultas contra los datos, utilizando un lenguaje de acceso a datos creado por
Microsoft llamado Kusto (pronunciado KOO-stoh) Query Language (KQL).
Descubrirá que Log Analytics de alguna manera normaliza todos estos diferentes flujos de
registro en una estructura tabular. También descubrirá que KQL es similar al lenguaje de
consulta estructurado (SQL), el lenguaje de acceso a datos que es estándar para las bases de
datos relacionales.
• Nombre de la suscripción
• Localización
• Nivel de precios
El precio está más allá del alcance de este libro, pero Log Analytics tiene un nivel gratuito y varios
niveles de pago. Las mayores limitaciones del nivel gratuito son
Puede conectar máquinas virtuales al espacio de trabajo directamente desde el menú Configuración del
espacio de trabajo. Sigue estos pasos:
1. En el menú de configuración del espacio de trabajo de Log Analytics, haga clic en Máquinas virtuales.
Verá una lista de todas las máquinas virtuales en la región del espacio de trabajo. Puede ver qué máquinas
Puede vincular una máquina virtual a un solo espacio de trabajo a la vez. En la Figura 14-11,
por ejemplo, mi máquina virtual vm1 está vinculada a otro espacio de trabajo.
Detrás de escena, Azure implementa el agente de Log Analytics (anteriormente llamado Microsoft
El Capítulo 13 analiza las posibilidades de la nube híbrida. Debe saber que Log Analytics puede
incorporar máquinas virtuales locales, en particular las administradas por Systems Center Operations
Manager, al igual que las máquinas virtuales nativas de Linux y Windows Server en la nube.
Puede desconectar una máquina virtual de su espacio de trabajo actual y conectarla a otra. Esta operación es
trivial, solo toma 2 minutos más o menos para completarse. Para hacer esto, simplemente seleccione la
máquina virtual desde el espacio de trabajo y haga clic en Desconectar en la barra de herramientas.
FIGURA 14-11:
Conectando VM
a un registro de Azure
Analítica
espacio de trabajo.
agente. Luego, implementó el agente de Azure Diagnostics para recopilar métricas y registros más profundos.
Ahora la máquina virtual está conectada a un espacio de trabajo de Log Analytics. ¿Ahora que?"
No existe una penalización de rendimiento notable por tener ambos agentes instalados en sus máquinas virtuales
simultáneamente. Diagnostics rastrea métricas y datos de registro, mientras que Log Analytics almacena solo datos de
registro / tabla.
Un tercer método es utilizar Log Analytics Query Playground, donde puede trabajar con un
enorme conjunto de datos y conocer Log Analytics antes de generar un conjunto de datos
significativo.
1. Abra una nueva pestaña del navegador y navegue hasta https: //portal.loganalytics.
io / demo.
2. Expanda algunas de las tablas de la lista Esquema (que se muestra en la Figura 14-12).
Hay mucho en esta lista. Log Analytics normaliza todos los flujos de datos entrantes y los
proyecta en una estructura basada en tablas.
FIGURA 14-12:
Registro de Azure
Registro de análisis
Interfaz de búsqueda.
3. En la barra de herramientas de Búsqueda de registros, haga clic en Explorador de consultas, expanda la lista Favoritos,
y ejecute la consulta Recuento de eventos de seguridad por computadora durante las últimas
12 horas.
Este entorno es una caja de arena. Microsoft no solo ha incorporado recursos incalculables en este
espacio de trabajo, sino que también ha escrito consultas de muestra para permitirle patear los
neumáticos.
4. En la lista de resultados, haga clic en Gráfico para cambiar de la vista Tabla a la vista Gráfico.
Puede visualizar los resultados de su consulta automáticamente con un solo clic de botón. No
todos los conjuntos de resultados se prestan a la representación gráfica, pero la capacidad es
tremenda.
5. Haga clic en Exportar y guarde los resultados de la consulta (solo columnas mostradas) en un
Archivo CSV.
Tenga en cuenta el enlace a Power BI, la herramienta de generación de paneles / inteligencia empresarial
Estas tablas de Log Analytics aparecen cuando habilita Azure Solutions. En Azure Marketplace, por
ejemplo, puede cargar la solución Azure SQL Analytics, que brinda a Log Analytics información
sobre sus servidores SQL (virtuales, físicos, locales o en la nube) junto con sus bases de datos.
La idea es que, eventualmente, todas las rutas de monitoreo en Azure conducirán a Log Analytics. Esta
plataforma es de gran alcance y de gran alcance; sumergirse en él con gusto.
Para divertirme, me gustaría ponerlo a través de una carrera de obstáculos de consultas KQL
comunes. Haga clic en el signo más en la interfaz de consulta de Búsqueda de registros (visible en la
Figura 14-12) para abrir una nueva pestaña: una interfaz multitab como las de Visual Studio y Visual
Studio Code.
Para familiarizarse con una tabla, puede indicar a Azure que muestre cualquier número de filas
sin ningún orden en particular. Para mostrar 10 registros de la tabla SecurityEvent, por
ejemplo, use el siguiente comando:
SecurityEvent
| tomar 10
Utilice la palabra clave de búsqueda para realizar una consulta de texto libre. La siguiente consulta
busca en la tabla SecurityEvent cualquier registro que incluya la cadena " Criptográfico":
Cuando presione Entrar, sin duda notará el carácter de tubería (|). Este carácter funciona de la
misma manera aquí que en PowerShell o el shell Bash. La salida de un segmento de consulta se
pasa al siguiente segmento a través de una tubería, una construcción poderosa sin duda.
SecurityEvent
| donde Level == 8 y EventID == 4672 | ordenar
por TimeGenerated desc
Si está pensando, "¡Vaya, estas consultas KQL se parecen mucho a SQL!" tienes razón en el
dinero. ¡Bienvenido a Log Analytics!
Adapté los ejemplos de KQL en este capítulo de los documentos de Microsoft. Para obtener más
información, consulte el tutorial "Introducción a las consultas de registro en Azure Monitor" en
https://docs.microsoft.com/en-us/azure/azure-monitor/log-query/getstarted-queries.
Capítulo 15
TopTenAzure
NoticiasRecursos
I mis dedos de los pies, lo que me obligó a adoptar una mentalidad de crecimiento y una perspectiva de
he descubierto
aprendizaje que Microsoft
permanente. Azurecon
Dada la rapidez es la
laque
pilaevoluciona
de tecnología
Azure,que más
¿cómo me mantenerse
puede mantiene al día con
¿cambios? Bueno, aquí hay diez sitios web cuidadosamente seleccionados que uso y creo firmemente
te beneficiará.
Le sugiero que cree una carpeta de marcadores en su navegador favorito, cree marcadores
para cada uno de estos sitios y adquiera el hábito de revisarlos con regularidad. ¡Manténgase
actualizado y diviértase!
La mayoría de los sitios web enumerados en este capítulo tienen un feed de distribución realmente
simple (RSS). Considere suscribirse a estos feeds y ver actualizaciones usando su lector de feeds RSS
favorito. (Me gusta Feedly.)
Estado de Azure
https://status.azure.com/status
» Bien
» Información
» Advertencia
» Crítico
Microsoft es bastante bueno para proporcionar detalles, incluido el análisis de la causa raíz post
mortem cuando ha habido una interrupción. El panel también proporciona anuncios sobre
eventos de mantenimiento planificados que podrían afectar sus servicios.
Blog de Azure
https://azure.microsoft.com/blog
No todos los productos / equipos de ingeniería de Azure contribuyen al blog oficial de Azure,
pero lo suficiente para que la suscripción valga la pena. Encontrará anuncios de productos que
trazan la ruta de un producto de Azure a través de la vista previa privada y la vista previa
pública hasta el estado de disponibilidad general. También encontrará informes técnicos y
estudios de casos escritos por gerentes de programas de Microsoft, gerentes de marketing de
productos y, a veces, ejecutivos de C-suite como Mark Russinovich.
Actualizaciones de Azure
https://azure.microsoft.com/updates
La página Actualizaciones de Azure proporciona información detallada sobre el mapa de ruta y el seguimiento
del producto. Las tres pestañas corresponden a las fases de desarrollo del producto:
» En desarrollo
» En vista previa
» Ya disponible
Este sitio es el que debe observar cuando está entusiasmado con una nueva característica de
Azure en desarrollo y pregunta "¿Cuándo finalmente se lanzará este producto a producción?"
Azure.Source
https://azure.microsoft.com/blog/topics/last-week-in-azure
Técnicamente, Azure.Source (también llamado Last Week in Azure) es parte del blog oficial de Azure,
pero este boletín semanal es lo suficientemente importante como para justificar su propia entrada en
este capítulo.
Build5Nines Weekly
https://build5nines.com/category/weekly
AzureWeekly (Endjin)
https://azureweekly.info
Endjin es una consultora en la nube con sede en Londres que pone mucho esfuerzo en el alcance comunitario.
Su resumen semanal por correo electrónico es muy completo; Sospecho que los miembros del personal
empaquetan todas las actualizaciones de productos de Azure que encontraron durante la semana anterior en
los boletines.
Este canal de medios, que existe desde noviembre de 2008, alberga cientos de videos. (Sin
embargo, Microsoft parece haber seleccionado todos los videos publicados antes de 2017).
Aquí encontrará una gran cantidad de contenido, que incluye descripciones generales de las características del
Los episodios de Azure Friday (consulte la siguiente sección) también están disponibles en este canal.
Azure Friday es una serie de videos semanales organizada por Scott Hanselman (un evangelista
de productos de Microsoft famoso por su capacidad para proporcionar explicaciones simples
para temas técnicos complicados) o uno de sus colegas. Hanselman es popular porque es un
desarrollador experto y un excelente maestro. La serie incluye entrevistas con miembros del
equipo de productos de Azure y, a menudo, ofrece demostraciones.
Comentarios de Azure
https://feedback.azure.com
https://twitter.com/techtrainertim
Si quiere ser meta acerca de mantenerse al día con las cosas de Azure, simplemente puede
seguir mi cuenta de Twitter y terminar con eso. Después de todo, leo los nueve sitios web
anteriores a diario y publico tweets relacionados de tres a cinco veces al día.
Capítulo dieciséis
TopTenAzure
Educativo
Recursos
I Microsoft Azure,
Si he tratado detienes queclaro
dejar en estar al día
una cosacon
enél.
este libro, es que para tener éxito con
Con ese fin, cierro este libro ofreciéndole diez recursos educativos de Azure seleccionados a
mano. ¡Feliz lectura!
Documentación de Azure
https://docs.microsoft.com/azure
Si aún no ha adquirido conocimientos sobre el control del código fuente de Git y el flujo de trabajo de
colaboración de GitHub, considere la posibilidad de consultar el espléndido trabajo de Sarah Guthals y Phil
Haack. GitHub para tontos ( John Wiley & Sons, Inc.).
Microsoft ha comido desde hace mucho tiempo su propia comida para perros, por así decirlo, lo que significa
dos cosas:
» Marco de adopción de la nube de Microsoft para Azure: Cómo Microsoft ayuda a los clientes
transición de una nube completamente local a una nube híbrida a arquitecturas nativas de la nube
El centro también incluye una biblioteca de arquitectura de referencia, así como una colección variada
de diagramas de topología y explicaciones. Muchos de los diagramas están disponibles de forma
gratuita como archivos de dibujo de Microsoft Visio. En mi trabajo como arquitecto de soluciones de
Azure, suelo utilizar una arquitectura de referencia publicada como punto de partida para las
topologías que recomiendo a los clientes.
https://docs.microsoft.com/rest/api/?view=Azure
Una vez que el explorador de API le muestra cómo funciona el ciclo de vida de solicitud / respuesta de la API
de Azure Resource Manager, puede crear de forma productiva aplicaciones personalizadas que interactúen
directamente con la API de ARM REST.
FIGURA 16-1:
Trabajar desde el
metal desnudo por
usando el Azure
API REST
Navegador.
Microsoft @edX
https://www.edx.org/learn/azure
» Arquitectura
» Administración
» Desarrollo
» Seguridad
» Internet de las Cosas
» Ingeniería de datos
» Ciencia de los datos
» Aprendizaje automático
Estos cursos son gratuitos y solo requieren que inicie sesión con su cuenta de Microsoft para realizar
un seguimiento de su progreso. El enfoque multimedia de la empresa es una excelente manera de
llegar a personas que tienen diferentes (o múltiples) estilos de aprendizaje.
Microsoft Learn
https://docs.microsoft.com/learn
Microsoft Learn es similar en formas a edX, con la excepción de que Learn es un producto totalmente propio
de Microsoft. Encontrará cientos de laboratorios gratuitos y seleccionados en la mayoría de los puestos de
trabajo de Azure; los laboratorios están bien escritos y completos.
Certificación Azure
https://www.microsoft.com/learning/azure-exams.aspx
Valorar
https://www.measureup.com/azure-products
Ah, por cierto: Microsoft Learn, que se analizó anteriormente en este capítulo, se refiere al
centro de educación técnica en línea de Microsoft Worldwide Learning. Sí, son cosas diferentes.
MeasureUp le brinda una experiencia de examen precisa. Tan importante como comprender la
teoría es comprender y sentirse cómodo con la forma en que Microsoft evalúa su conocimiento.
En los exámenes de Azure, puede esperar ver laboratorios basados en el rendimiento en los que se le
otorga un inicio de sesión de Active Directory (AD) en el portal de Azure real y se le solicita que
complete una serie de tareas de implementación y / o configuración.
Los exámenes también incluyen estudios de casos que presentan la situación actual de una empresa
ficticia, los objetivos relacionados con Azure y las limitaciones técnicas; luego se le pide que responda
varias preguntas analizando cada caso. Estos exámenes no son una broma y merecen un tiempo de
preparación dedicado.
Debo confesarle con franqueza que prácticamente todos los compromisos profesionales que he
tenido en mis más de 20 años de carrera surgieron a través de redes profesionales. Cuando
haces conexiones profesionales, es un resultado natural que tu nombre surja cuando las
oportunidades se manifiestan.
Hasta ese momento, le sugiero que visite Meetup.com y busque grupos de usuarios de Azure en su
área. En el momento de redactar este documento, hay 716 grupos en todo el mundo con más de
300.000 miembros (consulte la Figura 16-2).
FIGURA 16-2:
Encuentra un Azure
grupo de usuario
cerca de usted.
Las reuniones de Azure son excelentes oportunidades para descubrir cosas nuevas y conocerás a
vecinos que hacen el tipo de trabajo que estás haciendo o quieres hacer en el futuro. Los reclutadores
de TI tienen el hábito de patrocinar grupos de usuarios, por lo que también puede conectarse a las
redes de búsqueda de empleo en las reuniones.
Mientras estoy en este tema, también me gustaría recomendar Microsoft Reactor ( https: //
developer.microsoft.com/en-us/reactor/), que es un servicio de comunicación dirigido por Microsoft
nity hub con listas de reuniones gratuitas para estudiantes y organizadores de la comunidad. El tema
cubre Azure y la mayoría de las otras tecnologías y roles laborales de Microsoft.
CloudSkills es una consultora boutique en la nube que tiene como objetivo principal la
educación en Microsoft Azure. Mi amigo Mike Pfeiffer es un profesional más valioso (MVP) de
Microsoft que ha trabajado como arquitecto en la nube tanto para Amazon Web Services como
para Microsoft. Creó CloudSkills como una empresa de formación que ofrece formación
gratuita y de pago, consultoría profesional y orientación profesional y en la nube general.
Puede encontrar sesiones de formación en CloudSkills.io, entrevistas de podcasts gratuitas en
CloudSkills.fm y tutoriales gratuitos en CloudSkills.tv.
Pluralsight
https://www.pluralsight.com/partners/microsoft/azure
Divulgación completa: soy un entrenador de tiempo completo con Pluralsight. Por otra parte, también
(aparentemente) la mayoría de los expertos en Azure del mundo. Pluralsight y los equipos de Azure se
asociaron para crear una biblioteca de aprendizaje en línea líder en la industria.
Muchos de estos cursos de formación en vídeo, que cubren los principales puestos de trabajo de Azure, están
disponibles de forma gratuita. Pluralsight también ofrece evaluaciones previas y posteriores a las habilidades, así como
servicios de tutoría.
Índice 339
Amazon Web Services (AWS), 11, 12, 88 Azure AD Business-to-Consumer (B2C), 234
análisis, 8 Azure AD Connect / Connect Health, 234 Azure
Conexión Any-to-any (IPVPN), API 287. Ver Certificados de AD Domain Services, 234
servicio de aplicaciones de interfaz de programación de Azure Advisor, 247–249
aplicaciones (API), 162 Servicio de aplicaciones de Azure
Plan de App Service, para Azure Functions, 168 rol de sobre, 139–141
administrador de aplicaciones, 243 recurso de Aplicaciones API, 141
Application Insights, 164, 316 datos de telemetría de configurar aplicaciones web, 157–163
aproximadamente, 200–201
Monitor de Azure
interactuando con, 204–207 en, 112–113 Azure Monitor Log Analytics, 111
API de Azure Cosmos DB para MongoDB, 201 API asignación de políticas, 263–264
Base de datos Azure para servidores MariaDB, 189 políticas de prueba, 265
Artículo 260 "Estructura de definición de políticas de Azure"
Base de datos Azure para MySQL, 16
Azure Database for PostgreSQL Servers, 189 página Repositorio de GitHub de ejemplos de Azure Policy
(sitio web), 263
de descargas de Azure (sitio web), 41 comentarios de
Portal de Azure
Azure, 328–329
aproximadamente, 24, 36–37
Azure para estudiantes, 22 preguntas frecuentes sobre cuentas
agregando etiquetas en, 253–254
gratuitas de Azure, 21 funciones de Azure. Ver también Creación
Aplicaciones Insights transmisiones de telemetría y,
de aplicaciones funcionales, 171–177
165, 166
crear cuentas de almacenamiento en,
definiendo, 173-174
50–53 implementar desde, 96–99, 144–145
pruebas, 176-177
implementar recursos en, 180
Azure Government Cloud, 12 Azure
desplegando con, 68–71
Kubernetes Service (AKS) sobre,
Azure PowerShell, 38–39, 71–72
121–122, 131
Emparejamiento privado de Azure,
arquitectura de, 131-132
286 Azure Queue Storage, 48, 171
Análisis de registros de Azure
Azure Resource Explorer, 42
sobre, 316
Índice 341
Azure Resource Manager (ARM) vinculación de certificados TLS / SSL,
sobre, 13, 27 160–161 blade, 21, 24
JSON, 30–31 servicio blob, 54
ámbitos de gestión, 31–33 Opción de almacenamiento de blobs,
B
aproximadamente, 7-9
beneficios de, 10
comilla invertida (`), 71–72
economías de escala, 11
copias de seguridad y restauración
modelos, 11-17
sobre, 211–212 Definición de NIST de, 9
Azure Cosmos DB, 227–228 proveedores de, 11
hacer copias de seguridad de blobs de almacenamiento de forma
API de administración de costos en la nube,
masiva, 216–217 proteger los servicios de aplicaciones, 223–225
259 ubicación conjunta de intercambio en la
protección de bases de datos, 225–228 nube, 287 Cloud Shell (C), 36, 136
proteger los datos BLOB de la cuenta de almacenamiento, 212–217 CloudSkills, 337
proteger las máquinas virtuales, 217–223 cmdlets, 90
Base de datos SQL, 225–227 Código como servicio (CaaS), 141 sistemas
máquinas virtuales, 219–221 de control de versión de código, 150
Función de administrador de facturación, 243
Botón Vista de código (diseñador de aplicaciones lógicas
objetos grandes binarios. Ver blobs (binario grande barra de herramientas), 182
objetos)
Índice 343
tráfico de red de salida de datos, 58 entorno de desarrollo, 100–101
fuentes de datos, conexión a espacios de trabajo, 317–318 marcos de desarrollo, 140
Servicio de migración de base de datos (DMS), realizando DevOps, como producto PaaS, 19 Nivel de
migración de base de datos con, 275–276 desarrollo / prueba, 143
Unidad de transacción de base de datos (DTU), 190 bases
registro de diagnóstico, habilitación, 111–112, 302–310
de datos
recuperación ante desastres (DR), 13
sobre, 185 almacenamiento en disco, 61–63
definir flujos de trabajo, 180–182 usar con Azure App Service, 133–136
ELIMINAR método, 28 Docker Desktop, instalación, 118 dominios
eliminar instantáneas, 214–216
DenyAllInBound, 74, 75 agregar a Active Directory, 234–235
desplegando Azure App Service, 162
Instancias de Azure Container, 123–124 Azure Botón Descargar como CSV (Azure Monitor), 304 DR
Portal, 68–71, 96–99, 144–145 VM Linux, 96–99 DTU (Unidad de transacción de base de datos), 190
Botón Exportar a Event Hub (Azure Monitor), 304 Búsqueda global (B), 36
F
implementación de etiquetas taxonómicas, 251–259
Gremlin, 201
Favoritas (G), 37 grupos
características, disponibilidad de, 36 acción, 312–313
Archivo, como servicio de cuenta de almacenamiento, 48
creando, 234–241
Función de recuperación de archivos, 222
GRS (almacenamiento con redundancia
Servicio de archivos, 59–60
geográfica), 50 rol de invitado invitado, 243
nivel de coherencia coherente con el sistema de archivos, 221 Usuario invitado (AD), 236
firewall, 195 métricas a nivel de invitado, 111–112
grupos de recursos de eliminación forzada, Guthals, Sarah (autor)
208 Fowler, Adam (autor) GitHub para tontos, 145
NoSQL para tontos, 188
H
aplicaciones de funciones
OBTENER método, 28
idempotente, 105
Índice 345
identidad, como producto PaaS, 20 Azure Marketplace, 85
Identidad como servicio (IDaaS), 16 Canal de YouTube oficial de Azure, 328
imágenes, almacenadas en Azure Container Registry, Artículo "Estructura de definición de Azure Policy",
126–130 260 Azure Policy Samples GitHub repositorio, 263
implementar Azure Portal, 24, 36, 50
Instancias de contenedor de Azure, Precios de Azure, 168
122–126 Azure Cosmos DB, 200–208 Explorador de recursos de Azure, 42
Directiva de Azure, 259–265 Explorador de API de REST de Azure, 333
Azure Policy, 296–298 Prueba de velocidad de Azure 2.0, 36
roles RBAC integrados, base de Estado de Azure, 325
datos SQL 243–245, 190–200 Explorador de Azure Storage, 174
etiquetas taxonómicas, 251-259, 298-299 “Límites de suscripción y servicio de Azure, cuotas,
modo incremental, 105 y limitaciones ”, artículo 67
Infraestructura como servicio (IaaS), 16-17, 185-187 Actualizaciones de Azure, 326
para conexiones de puerta de enlace VPN de sitio a sitio ”, Artículo "Roles personalizados para recursos de Azure", 246
artículo 283 Documentación del contenedor de Docker, 116 Función de
Precios de Active Directory (AD), 239 recuperación de archivos, 222
Activity Log Analytics, 304 "Introducción a las consultas de registro en Azure
Base de datos de muestra AdventureWorks, Monitor "tutorial, 322
recurso 192 Application Insights, 316 AzCopy, atajos de teclado, 57
217 MeasureUp, 335
Azure AD Connect, 231 Meetup, 336
Centro de arquitectura de Azure, 332 Microsoft @ edx, 333
Blog de Azure, 326 Microsoft Learn, 334
Planos Azules, 265 Reactor de Microsoft, 336
Certificación Azure, 334 Certificación de aprendizaje mundial de Microsoft y
Página de ofertas de examen, 335
Artículo "Descripción general de la API de consumo de Azure",
Productos disponibles por región página, 36 almacenamiento con redundancia local (LRS), 49 interfaz de
K
Azure CLI / Azure Cloud Shell, 39–41
Azure Portal, 36–37
atajos de teclado, 57
Azure PowerShell, 38–39
Consultas KQL, escritura, 319–322 herramienta
SDK de Azure, 41–42
de línea de comandos kubectl, 132 interfaz de
gerente
usuario web de Kubernetes, 133
entornos, 186
sistemas locales con Arc, 295–299
Índice 347
microservicios, 61
norte
Cuenta Microsoft, 237
Nadella, Satya (COO), 17
Microsoft Azure. Ver también temas específicos
Nombre propiedad, 74
crear una cuenta, almacenamiento
estrategia de resolución de nombres, 73
en disco 22-24, 61-63
Instituto Nacional de Estándares y Tecnología
documentación, 331–332 (NIST), 9
historia de, 17-19 Sistema de archivos de red (NFS), 48
implementación de políticas, 259–265 grupos de seguridad de red (NSG), 74–78
herramientas de gestión, 36–43 dispositivo virtual de red (NVA), 85 redes
regiones, 33–36
ejecutando contenedores Docker en, 120-122 acerca de, 8, 65, 93
servicios, 17-20 amplio acceso, como característica de la nube
suscripción inicial a, 20–26 informática, 9
Microsoft BizTalk Server, 169 componentes de, 66–67
Marco de adopción de la nube de Microsoft para Azure, 332 configurar redes virtuales, 73–80
Microsoft @ edx, 333–334 conectar redes virtuales, 81–86 crear
Microsoft Flow, 170 redes virtuales, 68–72 NFS (Network File
Microsoft Learn, 334 System), 48
Microsoft Office 365, 14–15 NIST (Instituto Nacional de Estándares y
emparejamiento de Microsoft, 287
Tecnología), 9
modelos
de la computación en la nube, 11-17
O
implementación, 12-14
ODBC, 195
Despliegue RM, 18
entornos locales
prestación de servicios, 14-17
acerca de, 14, 269
responsabilidad compartida, 17
Azure Arc, 288-299
Artículo "Modificar Visual Studio", 41
opciones de migración de datos, 269–277
supervisión
opciones de nube híbrida, 281–287
Ambientes. Ver Azure Monitor como
opciones de migración de servidor,
producto PaaS, 20
277–281 a partir de la implementación,
Aplicaciones web, 163–166
89–91 gastos operativos (OpEx), 10
multicliente, 230
seguridad operativa, 35
Azure AD multiusuario, 232–233
operaciones, de HTTP, 28
Propiedad de protocolo, 74
PAG proveedores, 29
nube pública, 12
PaaS. Ver Encabezado de página de plataforma
publicación, en App Service, 154–155
como servicio (PaaS) (A), 36
Etiquetas de propósito, 253
regiones emparejadas, 35–36
enviar cambios de código a Azure, 151–152
Etiquetas de asociación, 253
PONER método, 28
Función de administrador de contraseñas, 243
PARCHE método, 28
Asignaciones de ruta, 158
Q
Pago por uso (PAYG), 20 Servicio de cola, 61
mirando, 84, 286–287 Hoja de inicio rápido, 194
PHP, 195 "Inicio rápido: conectar máquinas a Azure
Botón Pin Current Filters (Azure Monitor), uso de Azure Arc para servidores - artículo de
canalización 304, 110 PowerShell ”, 293
aproximadamente, 15–16
R
en comparación con la infraestructura como servicio (IaaS),
RA-GRS (almacenamiento georedundante de acceso de lectura), 50
185–187
RateCard API, 259
productos, 19-20
RBAC (control de acceso basado en roles), almacenamiento
trazar métricas de recursos, 310–312
georedundante con acceso de lectura 242–247 (RA-GRS), función
Pluralsight, 337
de 50 lectores, 245
vaina, 131
Bóveda de Recovery Services, 217–219 Botón
Conexión Ethernet punto a punto, 287 VPN
de actualización (Azure Monitor), 304 regiones,
punto a sitio, 283, 286
33–36
Propiedad portuaria, 74
rehidratación de gotas archivadas, 58
CORREO método, 28
bases de datos relacionales, en comparación con no relacionales
Cartero, 29
bases de datos, 187–189
potencia, 8
Recordar icono, 3
máquinas virtuales preinstaladas, 186–187
eliminación de etiquetas, 256
plan Premier, 26
replicación, 50
preparar entornos, 289–290
informes, mediante etiquetas, 257–259
Propiedad prioritaria, 74
Función de lector de informes, 243
nube privada, 12-13
imágenes del repositorio, extracción a través de ACI,
Nivel de producción, 143
transferencia de estado de representación 128-130 (REST),
Productos disponibles por página de región (sitio web),
28, 170 Solicitud de comentarios (RFC), 66
36 Plan Professional Direct, 26
Botón de reservas, 194
propiedades, 74
Índice 349
Botón Restablecer filtros (Azure Monitor), 304 escalabilidad, 95–96
cambiar el tamaño de las máquinas virtuales (VM), 108–109, 110–111 SDK (kits de desarrollo de software), 41 gastos
detener máquinas virtuales (VM), almacenamiento en comparación con las suscripciones, 231–234
108-110 definidas, 230
acerca de, 8, 93 pruebas
representa, 49–61 acciones, 183
Azure App Service y 142 tipos alertas, 314–315
de datos, 47–48 Azure Functions, 176–177
imágenes en Azure Container Registry, 126–130 políticas, 265
protegiendo datos BLOB, 212–217
desencadenantes, 183
Almacenamiento como servicio (STaaS), 16
Temporizador, como un disparador de la función de Azure,
blobs de almacenamiento, copias de seguridad masivas, 216–217
171 Twitter Feed de Tim, 329
Etiqueta de servicio de almacenamiento, 77
Icono de punta, 3
volumen de almacenamiento, 57
Certificados TLS / SSL, vinculantes, 160–161
StorageAccounts, 29
tlwstor270, 29
datos estructurados, 48
desencadenantes
subredes, 66–67, 78
sobre, 170
alcance de suscripción, 242
para Function Apps, 171
suscripciones
pruebas, 183
en comparación con los inquilinos de AD,
distribución global llave en mano, 201
231-234 tipos de, 20-22
ver detalles de, 24-26 2fb ..., 29
suscripciones, 29 twtech, 29
Índice 351
U preinstalado, 186–187
proteger, 217–223
Artículo "Comprender los efectos de la política de Azure", 261
cambio de tamaño, 108–109, 110–111
Identificador uniforme de recursos (URI), 29 datos no
restaurando, 221–223
estructurados, 48
comenzando, 108–110
carga de blobs, 56–57
detenerse, 108–110
URI (Identificador uniforme de recursos), 29
puerta de enlace de red virtual, 283–285
Función de administrador de usuarios, 243
redes virtuales
usuarios
Azure App Service y 142
asignar licencias a, 238–240
configuración, 73–80
cambiar contraseñas, 241
conectando, 81–86
creando, 234–241
creando, 68–72
iniciar sesión, 240–241
puerta de enlace de red privada virtual (VPN), 14
servidores virtuales, inspección, 198
V Etiqueta de servicio VirtualNetwork, 77
Nivel de servicio de núcleo virtual, Visual Studio
190 verbos, de HTTP, 28 sobre, 22
verificar instancias de Azure Container, 124-125 Aplicaciones Insights transmisiones de telemetría
versiones, de bases de datos, 186 y 165, 166
VHD (discos duros virtuales), visualización de crear proyectos de aplicaciones web en, 153
Datos de telemetría de Application Insights, 165–166 datos de Visual Studio 2019 Community Edition, 100, 144 hosts de
diagnóstico en Azure Monitor, 112–113 copias de seguridad contenedor basados en VM, 121
Puerta de enlace VPN (red privada virtual), 14 Explorador de API de REST de Azure, 333
"Acerca de los dispositivos VPN y los parámetros IPsec / IKE Artículo "Roles personalizados para recursos de Azure", 246
para conexiones de puerta de enlace VPN de sitio a sitio ”, Documentación del contenedor de Docker, 116 Función de
artículo 283
recuperación de archivos, 222
Precios de Active Directory (AD), 239
"Introducción a las consultas de registro en Azure
Activity Log Analytics, 304 Monitor "tutorial, 322
Base de datos de muestra AdventureWorks, atajos de teclado, 57
recurso 192 Application Insights, 316 AzCopy, MeasureUp, 335
217 Meetup, 336
Azure AD Connect, 231 Microsoft @ edx, 333
Centro de arquitectura de Azure, 332 Microsoft Learn, 334
Blog de Azure, 326 Reactor de Microsoft, 336
Planos Azules, 265 Certificación de aprendizaje mundial de Microsoft y
Certificación Azure, 334 Página de ofertas de examen, 335
Artículo "Descripción general de la API de consumo de Azure", Artículo "Modificar Visual Studio", 41
259 API de tabla de Azure Cosmos DB, 61 Publicación especial NIST 800-145, El NIST
Definición de Computación en la Nube, 9
Caja de datos Azure, 271
Documentación de Azure, 331–332 "Descripción general de BGP y Azure VPN Gateways"
artículo, 284
Página de descargas de Azure (sitio web), 41
Pluralsight, 337
Comentarios de Azure, 328
Cartero, 29
Preguntas frecuentes sobre cuentas gratuitas
información de precios, 50
de Azure, 21 Azure Marketplace, 85
Productos disponibles por región página, 36
Canal de YouTube oficial de Azure, 328
"Inicio rápido: conectar máquinas a Azure
Artículo "Estructura de definición de Azure Policy", 260
uso de Azure Arc para servidores - artículo de
Repositorio de GitHub de ejemplos de Azure Policy, 263 PowerShell ”, 293
Índice 353
sitios web continuado) VM de Windows Server
"Guía de decisión de etiquetado y asignación de nombres de recursos" agregando a Arc, 290–293
artículo, 299 implementando, 99–106
Documento fuente de RFC 1918, 66 Nodo trabajador, 131
artículo "Grupos de seguridad", 78 flujos de trabajo
Z
"¿Qué son las identidades administradas para los recursos de Azure?"
artículo, 297
Windows Server AD, 237 almacenamiento con redundancia de zona (ZRS), 49
Tim ha sido un profesional de TI desde 1997. Ha escrito cerca de 20 libros técnicos, ha sido
autor de más de 200 cursos de capacitación en computadora (CBT) y habla internacionalmente
sobre Microsoft Azure. Tim posee certificaciones de Microsoft en arquitectura, administración y
desarrollo de Azure.
Puede comunicarse con Tim a través de Twitter (@TechTrainerTim) o su sitio web, https: //
techtrainertim.com/.
Gracias a todos los miembros de la comunidad de Microsoft Azure: miembros del equipo de
productos de Microsoft, MVP de la comunidad, mis colegas y mis estudiantes. Es un cliché,
¡pero de hecho no podría haber hecho esto sin ti!