Ingrese el número exacto de autos para continuar

A lo largo de mi carrera, he tenido que administrar varias grandes empresas. Estamos hablando de un millón de servidores Linux y más. Cuando tienes tantos gatos a tu cuidado, a veces necesitas actuar con un grupo grande. De vez en cuando, con todos a la vez.



En mi experiencia, las empresas con una flota de servidores tan grande buscan crear herramientas de gestión masiva. Estas herramientas tienen diferentes nombres, pero la esencia es casi la misma: inicias sesión a través de ssh como root, ejecutas un comando y, quizás, obtienes algún tipo de código de salida y / o resultado.



En determinadas situaciones, esta es la única forma de apagar rápidamente un incendio y, en esos momentos, está agradecido de que exista la herramienta.



Pero una nota sobre otra cosa. Se enfoca en el otro lado de la moneda, cuando alguien usa una de estas herramientas y crea un problema. Quizás decidió implementar rápidamente algún cambio en todos los servidores, en lugar de usar las mejores prácticas (pruebas, ejecución de prueba, implementación para una parte de la audiencia, implementación gradual, etc.). Quizás decidí enviar inmediatamente un nuevo binario a cada máquina y, por lo tanto, todos se bloquean al mismo tiempo, sin dejar ninguna forma de iniciar el sitio real.



Hay una cosa que pedí agregar a mis herramientas para prevenir ciertos tipos de desastres. Esto es para resolver una situación específica en la que alguien está ejecutando un comando por error en demasiadas máquinas. Tal vez quería usar un bastidor de hosts de prueba (alrededor de 40), pero accidentalmente eligiótodo el mundo .



Cuando tenga una herramienta de este tipo, verá errores similares.



Mi solicitud es bastante simple: si va a solicitar una confirmación como verificación de cordura, * no * use el tipo Y / N. En su lugar, pida leer el número de la pantalla y vuelva a ingresarlo.



Se verá así:



<pre>-- 123456    . ?

    :</pre>


Luego, para ejecutar el comando, debe ingresar con precisión "123456".



La idea es que una persona perciba este número a través de sus dispositivos de entrada habituales (yo diría "ojos", pero algunas personas usan lectores de pantalla o algo similar), lo procese en su programa cerebral y luego, de alguna manera, lo devuelva a la computadora. Es de esperar que unos pocos pasos adicionales como este activen suficiente materia gris para que la persona se detenga antes de disparar toda su pierna con una pistola gigante.



Por supuesto, si se encuentra en una situación así con demasiada frecuencia y realmente necesita usar tantas máquinas, puede copiar y pegar la figura. En este caso, diría que usas esta herramienta con demasiada frecuencia y deberías pensar en cambiar el algoritmo de acciones para no depender tanto de esta herramienta.



Pero en una empresa real, no es fácil simplemente "dejar de usar" la herramienta. En tal situación, como opción, divida el número con espacios para que no se pueda copiar y pegar sin pensar.



Por ejemplo, imprima un número con uno de los separadores numéricos de su idioma, por ejemplo 123.456 o 123.456, o 123456, o lo que más le convenga. El truco no es aceptar esto como entrada, sino pedirle al cliente que elimine el separador e inserte solo números.



<pre>-- 123 456   . ?

    : 123456
! .</pre>


He visto esta técnica salvar a la gente en muchas ocasiones, y la estoy compartiendo aquí con la esperanza de que ayude a otros. Si está desarrollando algo lo suficientemente potente, considere proteger el sistema de esta manera.



Solo piense: los números saltan de la pantalla, saltan a una persona, saltan de un lado a otro en la cabeza y regresan a la computadora. Todo es parte de una red.



Rachel Kroll, administradora de sistemas de Facebook



All Articles