Presentación - Global Azure Bootcamp
Transcripción
Presentación - Global Azure Bootcamp
#GlobalAzure Azure DevOps y Powershell Desired State Configuration (DSC) Fabián Calvo Experto en cacharros varios... [email protected] @rainfc http://blogs.encamina.com/sextosharepoint/ Agenda ■Que es DSC ■Un Caso Práctico ■Programación Declarativa ■Conclusiones Guthrie Approved!! Retos Diarios ■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 Desired State Configuration ■Es un Framework que se relaciona con Azure Automation, parte de Powershell 4.0 ■Nativo en W2012R2, disponible desde W2008R2 mediante descarga ■Gestión de máquinas en host y nube ■Se integra con herramientas de gestión de la configuración como Puppet o Chef ■No instalamos máquinas, declaramos como deben ser solo Cambio de Modelo Scripts Clásicos • 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 Motor DSC Recursos Retos para aplicación a nivel Empresarial ¿Cómo limito el acceso? ¿Como hago seguimiento de los cambios? ¿Cómo cambio configuraciones sin afectar el servicio? Azure DSC ■Nos proporciona un entorno securizado con control de acceso ■Localización centralizada para: ■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 Modelos de Ejecución: Push vs Pull Authoring Configuración (Script) Staging Nodo Configuración (MOF) checksum Recursos DSC ZIP Execution Nodo Configuración (MOF) Pull Server ZIP Report Data Relación entre DSC y Azure Resource Manager (ARM) Resource Manager DSC Definir Infraestructura Configurar Infraestructura Un modelo de ejecución Permite instalar software Ejecución periódica y capacidad de corregir o avisar Permite definir Templates y programación gráfica Permite instalar software Permite configuraciones “Parciales” y dos modos de ejecución 100 % Compatibles. Trabajan mejor juntos La programación Declarativa ■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 Elementos a gestionar 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 Sintaxis 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) Recursos 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 Pasos de Ejecución ■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 Puntos esenciales ■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 Que utilizar en cada caso ■Orquestar todo el proceso de aprovisionamiento con Azure Automation o Azure Resource Manager ■Aprovisionar recursos de cloud fabric con Powershell Workflow Activites usando 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! DSC vs DCM DCM DSC Entorno Estable Servidores Individuales Debe estar onPremise Entorno muy cambiante Roles de Servidores Solución basada en Nube [email protected] @rainfc http://blogs.encamina.com/sextosharepoint/