Llegamos a ustedes gracias a:



Reportajes y análisis

8 pasos para mejorar el DNS

[03/02/2022] El DNS es esencial para el funcionamiento de todos los aspectos de Internet y los negocios digitales modernos. DNS es un servicio de muy alta disponibilidad, redundancia y confiabilidad, que es absolutamente esencial para las aplicaciones y operaciones de negocio de su empresa. Una falla en su DNS puede detener el negocio y poner en peligro el futuro de su empresa.

El problema con el DNS es que un pequeño error en un archivo de configuración, puede tener un efecto dominó en todo el DNS e impactar en todos los aspectos de las operaciones de su empresa. Una falla de DNS impedirá que sus clientes puedan usar sus productos y que su empresa gane dinero. Sin una administración sólida de la configuración de DNS, usted se hace vulnerable a errores simples pero costosos.

[Reciba lo último de CIO Perú suscribiéndose a nuestro newsletter semanal]

Los cambios de DNS son tan comunes y tan simples que rara vez se consideran operaciones de negocio riesgosas. En las organizaciones pequeñas, el equipo de desarrollo probablemente administre sus propios servidores DNS, o tenga alguna otra forma de realizar cambios de DNS sobre la marcha. Cuando las organizaciones se vuelven más grandes y complejas, la cantidad de servidores DNS y la cantidad de personas que pueden realizar cambios en ellos tienden a multiplicarse.

Con tantas personas haciendo cambios, no es de sorprender que algo salga mal de vez en cuando. De hecho, sería más sorprendente si las cosas no salieran mal.

Varios tipos de factores pueden causar una caída del DNS, como los errores humanos, problemas de software y fallas de hardware. Sin embargo, la causa más común de las caídas del DNS es la implementación de archivos de configuración incorrectos en los servidores DNS.

¿Qué pasos puede tomar una empresa pequeña, que carece de una higiene de DNS de calidad, para implementar un proceso de administración de DNS de alta calidad? A continuación, ocho cosas que cualquier empresa puede hacer con el fin de mejorar la calidad general de su DNS y mantener operativas y saludables sus aplicaciones.

Paso 1. Administre la configuración de DNS mediante el control de revisión

Esta es la cosa más simple y básica que puede hacer para mejorar la calidad de su infraestructura de DNS. En esencia, las configuraciones de DNS son simplemente archivos de texto sin formato.

Muchos proveedores de DNS le brindan un panel de control frontal para estos archivos de configuración y le permiten realizar cambios más fácilmente. Sin embargo, también oscurecen el impacto de los cambios que está realizando. ¡No utilice estos paneles de control! En su lugar, administre sus archivos de configuración utilizando el formato de archivo de texto sin formato estándar.

Una vez que haya pasado al formato de archivo plano, puede administrar fácilmente estos archivos de configuración usando el mismo programa de control de revisión que usa para administrar el código fuente de su aplicación. Para la mayoría de las empresas, esta es una variación de Git.

Sin duda, hoy en día usted dispone de procesos implementados en su empresa para administrar su código fuente, así que use el mismo proceso o uno similar para administrar también sus archivos de configuración de DNS.

Este simple cambio permitirá que muchas otras mejoras en el proceso surjan naturalmente, como revisiones de configuración, flujos de trabajo de aprobación y la capacidad de rastrear cuándo se realizaron cambios específicos que pueden haber afectado su aplicación. Esta es una base esencial necesaria para mantener su servicio DNS en funcionamiento y sin errores.

Paso 2. Revise todos los cambios de DNS necesarios

Una vez que esté administrando sus cambios utilizando un programa de control de revisiones, asegúrese de que todos los cambios que realice sean revisados y aprobados. Esto se puede lograr al igual que con el código fuente de su aplicación, usando ramas, solicitudes de extracción y fusiones.

Establezca un proceso para la aprobación de todos los cambios. Asegúrese de que al menos una o más personas revisen todos los cambios antes de incorporarlos a su configuración de producción. Este proceso de revisión debe incluir comprobaciones de errores de sintaxis, configuraciones de DNS incorrectas y otros problemas potenciales. Los problemas con las configuraciones de DNS pueden ser sutiles, por lo que un revisor experto debe realizar una revisión exhaustiva y metódica.

Paso 3. Documente la intención de todos los cambios

Cada cambio que haga debe ser documentado. Si está siguiendo los pasos anteriores, esto se puede lograr mediante el comentario de verificación de código y el proceso de solicitud de extracción.

Documentar los cambios de DNS le ayudará más adelante si existe un problema o si se propone un cambio incompatible. Comprender por qué se realizó un cambio anterior, le ayudará a reparar problemas futuros y le ayudará a comprender por qué un cambio específico puede o no ser apropiado.

Paso 4. Automatice el proceso de implementación de la configuración

Una vez que haya implementado el proceso para administrar los archivos de configuración, establezca un proceso para automatizar la implementación de actualizaciones de archivos de configuración en su DNS de producción. Al automatizar este proceso, reduce la probabilidad de que un cambio incorrecto se envíe a producción, o que un simple error humano haga que su DNS falle o produzca malos resultados.

Si se encuentra copiando y pegando cambios de un archivo de configuración a otro durante un proceso de implementación, es mucho más probable que cometa un error e introduzca un error en el DNS. La implementación automática de cambios garantizará que los cambios se apliquen de manera consistente y confiable.

Su sistema de implementación automatizado debe incluir un mecanismo de reversión automatizado. Esto puede ser una extensión natural de su proceso de control de revisión o un proceso de reversión de implementación por separado. Pero ser capaz de deshacer un cambio de manera rápida y efectiva puede significar la diferencia entre un error que causa un pequeño inconveniente o una caída masiva.

Paso 5. Evolucione hacia un sistema de gestión de cambios más sofisticado

A medida que su DNS crece en complejidad, es posible que desee considerar colocar un sistema de gestión de cambios completo además del sistema de control de versiones simple que ya ha establecido. La gestión de cambios en toda regla implicaría el uso de formularios de solicitud de cambio, solicitudes de autorización, aprobaciones de varios equipos y otros procedimientos similares.

Estos cambios pueden parecer onerosos, pero la configuración de DNS no es un lugar para aflojar el proceso. Un simple cambio de DNS puede afectar a muchos equipos dentro de su organización. Solicitar la opinión de esos equipos antes de que se realice el cambio -o incluso antes de que se acepte la propuesta de cambio- puede ahorrarle muchos dolores de cabeza más adelante.

El tamaño y la complejidad de su sistema de gestión de cambios dependerán naturalmente del tamaño y la complejidad de su organización y otros procesos de gestión de software.

Paso 6. Utilice un proveedor independiente de DNS

Un DNS de alta calidad requiere más que la gestión de la configuración. También requiere un ambiente operativo de alta calidad.

Muchos de sus proveedores de servicios existentes pueden proporcionar servicios de DNS que puede aprovechar fácilmente. En particular, los principales proveedores de la nube brindan servicios de DNS de alta calidad.

Sin embargo, tenga cuidado al usar un servicio de DNS proporcionado por una empresa que le brinda otros servicios, incluidos otros servicios en la nube.

Durante una caída del servicio, la herramienta más crítica que debe funcionar con normalidad es su DNS. Necesita DNS para ayudarle a diagnosticar y reparar la mayoría de las otras caídas. Si su DNS también está inactivo, la duración de su caída se extenderá significativamente.

Lo contrario también es cierto: si está lidiando con un problema de DNS, lo último que necesita es una caída causada por otro servicio en su ecosistema de aplicaciones.

Evite estos problemas utilizando un proveedor de DNS de alta calidad que solo le proporcione servicios de DNS y nada más. Esto le permite aislar su DNS (y cualquier problema con su DNS) de cualquier otro servicio en su aplicación, lo que reduce la probabilidad de una caída prolongada relacionada con el DNS.

¡Asegúrese de que el proveedor que seleccione no dependa de los proveedores de servicios, como los proveedores de la nube, en los que también confía! Si AWS tiene una caída, querrá que su proveedor de DNS independiente siga funcionando. Eso no sucede si su proveedor de DNS también depende de AWS.

Algunas organizaciones ejecutan su propio DNS. Si decide ejecutar su propio DNS, asegúrese de utilizar recursos que sean independientes del resto de su aplicación. Esto significa operar DNS en diferentes centros de datos, zonas de disponibilidad e incluso regiones de nube que el resto de su aplicación.

Paso 7. Separe el DNS interno y el externo

Llevemos ese último punto un paso más allá. Tiene necesidades de DNS que son internas de su empresa, y necesidades de DNS externas de las que dependen sus clientes. Su DNS interno brinda acceso a la documentación interna, los sistemas internos, incluidas las herramientas de correo electrónico y comunicaciones, y otros procesos y sistemas internos. Su DNS externo proporciona acceso a las aplicaciones, productos y servicios de su empresa a sus clientes.

Asegúrese de que estas dos necesidades de DNS sean manejadas por diferentes proveedores. Si su DNS externo se cae, solucionar ese problema será mucho más difícil si su DNS interno también se cae. Esta es una de las razones por las que Meta tardó tanto en arreglar su aplicación cuando Facebook dejó de funcionar en octubre del 2021.

Y, por el contrario, si su DNS interno falla, no querrá que ese problema se extienda a sus clientes externos.

El uso de diferentes proveedores, junto con diferentes configuraciones de DNS y procesos de configuración, es fundamental para evitar este tipo de problemas.

Paso 8. Duplique sus DNS en otro proveedor

Dando un paso más, configure su DNS de producción utilizando dos proveedores diferentes. Utilice uno como proveedor principal y el segundo como proveedor de backup. De esta manera, si su proveedor de DNS principal falla, es posible que pueda cambiar su DNS de producción a su proveedor de backup rápidamente.

El proveedor de respaldo debe tener una copia completa, operativa y totalmente probada de su configuración de DNS configurada y operativa, de modo que pueda ponerse en marcha de inmediato si es necesario. Este proceso será más fácil si ha implementado el proceso de implementación automatizado recomendado anteriormente. Este proceso automatizado puede ayudar a garantizar que sus cambios se mantengan sincronizados entre su proveedor principal y el de backup.

El DNS es un sistema crítico que debe diseñarse para una alta disponibilidad y confiabilidad desde el principio. También debe pensar en la seguridad al diseñar su infraestructura de DNS. Asegúrese de tener sistemas redundantes y que el acceso a su DNS esté estrictamente controlado.

Finalmente, monitorear el DNS es fundamental para garantizar que su sistema continúe funcionando sin problemas. Para que pueda tomar medidas que mitiguen el impacto lo más rápido posible, usted necesita herramientas que le alerten si ocurren problemas.

Las caídas de DNS son una ocurrencia común, pero no tienen por qué paralizar a toda su empresa. Al utilizar los procesos y herramientas adecuados, usted puede minimizar el impacto de cualquier caída y mantener su negocio funcionando sin problemas.