Top Banner
#GlobalAzure Azure DevOps y Powershell Desired State Configuration (DSC) Fabián Calvo Experto en cacharros varios...
25

Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con

Sep 06, 2019

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con

#GlobalAzure

Azure DevOps y PowershellDesired State Configuration (DSC)

Fabián Calvo

Experto en cacharros varios...

Page 2: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con
Page 3: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con

@rainfc

http://blogs.encamina.com/sextosharepoint/

[email protected]

Page 4: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con

■Que es DSC

■Programación Declarativa

■Un Caso Práctico

■Conclusiones

Agenda

Guthrie Approved!!

Page 5: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con
Page 6: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con

■Muchos servidores a configurar con diferentes roles

■Configurar servidores de forma rápida para escalar

■Servidores con configuración idéntica

■Servidores con diferente configuración

■Personas con capacidad de alterar la configuración

■Actualizaciones de Configuración

■Equipos diferentes para diferentes “partes” de configuración

Retos Diarios

Page 7: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con

■Es un Framework que se relaciona con Azure Automation, parte dePowershell 4.0

■Nativo en W2012R2, disponible desde W2008R2 mediante descarga

Desired State Configuration

■Gestión de máquinas en host y nube

■Se integra con herramientas de gestión de laconfiguración como Puppet o Chef

■No instalamos máquinas, solodeclaramos como deben ser

Page 8: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con

Cambio de Modelo

• Resolución de Dependencias

• Configuración deseada (Intent)

• Logging y Gestión de Errores

• Resilencia al reinicio• Repetición de la

Automatización• Específicos por Tecnología

Configuración

Recursos

Motor DSC

Scripts Clásicos

Page 9: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con

Retos para aplicación a nivel Empresarial

¿Cómo cambio configuraciones sin afectar el servicio?

¿Como hago seguimiento de los cambios?

¿Cómo limito el acceso?

Page 10: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con

■Nos proporciona un entorno securizado con control de acceso

■Localización centralizada para:

Azure DSC

■Credenciales

■Programaciones

■Certificados

■Conexiones

■Variables

■Módulos

■Nos proporciona información actual e histórica de forma visual y detallada

■Y nos permite integrar nuestro código con control de código fuente

Page 11: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con

Modelos de Ejecución: Push vs Pull

ZIP

Configuración(Script)

Recursos DSC

Nodo Configuración

(MOF)

Authoring Staging

checksum

Execution Pull Server

ZIPNodo

Configuración(MOF)

Report Data

Page 12: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con

Relación entre DSC y Azure Resource Manager (ARM)

Resource Manager Definir Infraestructura

Un modelo de ejecución

Permite instalar software

Permite definir Templates y programación gráfica

DSC Configurar Infraestructura

Ejecución periódica y capacidad de corregir o avisar

Permite instalar software

Permite configuraciones “Parciales” y dos modos de ejecución

100 % Compatibles. Trabajan mejor juntos

Page 13: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con
Page 14: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con

■Paradigma distinto de la Imperativa (haz uno, luego dos, luego tres)

■Se establecen objetivos, afirmaciones o restricciones

■Con las declaraciones se establece el estado final correcto

■Más cercana al lenguaje natural

La programación Declarativa

Page 15: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con

Habilitar o deshabilitar roles y características

Gestionar configuraciones de Registro

Gestionar Archivos y Características

Arrancar, para y gestionar proceso y servicios

Gestionar usuarios locales, y grupos

Desplegar nuevos paquetes de software

Gestionar variables de entorno

Ejecutar Scripts de Powershell

Elementos a gestionar

Page 16: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con

Se añaden dos palabras reservadas a Powershell: Configuration y Node

Configuration define una familia de configuraciones en las que normalmente existe una relación

Node define las características asociadas comúnmente con un rol

Cada Node se convertirá en un fichero MOF que se subirá al servidor de configuraciones (incluido en la cuenta de Azure Automation)

Sintaxis

Page 17: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con

Estándar:

File, User, Group, WindowsFeature, Service, Registry, Package, Environment

Custom:

GitHub: https://github.com/Powershell/

xSQLServer, xSharePoint, xNetworking, xDnsServer, xExchange, xWebAdministration, xWindowsUpdate, xStorage, xDisk

Otros Recursos:

ResKit Wave 10

Repositorio GitHub: PowerShell/DSCResources

Recursos

Page 18: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con

■Compilar configuración en un conjunto de ficheros (MOF) para cada servidor

# Compile MOF files for each assigned server

SharePointHost -NodeName "SP2013SV1","SP2013SV12"

■Ejecutar Start-DSCConfiguration para copiar el fichero y ejecutar la

configuración

# Copy MOF file to node(s) and invoke the configuration

Start-DSCConfiguration -Path .\ SharePointHost -Wait -Verbose –Force

■O registro a través del Portal de Azure

Pasos de Ejecución

Page 19: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con
Page 20: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con
Page 21: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con

■Azure Automation simplifica la automatización y la

configuración a través de nubes e infraestructura local

■DSC: fiable, alta disponibilidad, y escalablilidad

■Azure DSC: DSC con seguridad, escenarios pull y push, y

servicio de reporting

■Se integra de forma nativa con ARM

Puntos esenciales

Page 22: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con

■Aprovisionar recursos de cloud fabric con Powershell Workflow Activitesusando Azure Runbooks

■Configurar el sistema operativo y requisitos de aplicación dentro de las

máquinas virtuales de Azure con Powershell DSC

■Publicar las configuraciones de Powershell DSC a una cuenta de Azure Automation

■Usar los Agentes de Azure VM para aplicar las configuraciones de Powershell DSC

■Muy recomendable: Ojo con las versiones!

Que utilizar en cada caso

■Orquestar todo el proceso de aprovisionamiento con Azure Automation o Azure Resource Manager

Page 23: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con

DSC vs DCM

DCM

Entorno Estable

Servidores Individuales

Debe estar onPremise

DSC

Entorno muy cambiante

Roles de Servidores

Solución basada en Nube

Page 24: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con

@rainfc

http://blogs.encamina.com/sextosharepoint/

[email protected]

Page 25: Azure DevOps y Powershell Desired State Configuration (DSC) · Muchos servidores a configurar con diferentes roles Configurar servidores de forma rápida para escalar Servidores con