Había una vez un WordPress

Erase una vez un bonito blog WordPress … que corría feliz y libre por las tierras de una instancia. Allí era muy amígo de MySQL que también había nacido en esa misma instancia, y que se dedicaba a guardar los datos que, casi en secreto, le daba WordPress. Entre los dos habían creado una parcela en wp-config donde plantaban y cosechaban archivos. El orgulloso dueño de la instancia agregaba cada tanto algun plugin para lograr mejores resultados o modificaba el entorno para hacerlo más bonito, con cambios desde el galpón de themes.

Fue una época de felicidad.

Pero aparecieron «Los Innovadores» que le plantearon al dueño de la instancia muchas dudas: ¿que pasa si se cae? ¿hasta cuántos clientes simultáneos puedes recibir? ¿cómo lo migras? ¿es resiliente?

Y así el dueño de la instancia no conseguía conciliar el sueño. Por las noches se levantaba y miraba temeroso la instancia, consultaba las gráficas y el monitor, hasta hablaba con otros dueños de otras instancias.

Una noche, en que el dueño de la instancia caminaba por enésima vez en su sala, abrumado por el temor de que algo le pasara a su bonito blog, se presentó un hada que brillaba en la oscuridad y, tras enterarse de las preocupaciones del dueño de la instancia, solo le pronunción un conjuro mágico:

ku-ber-ne-tes

El rostro del dueño de la instancia se iluminó con el brillo equivalente al que emitida el hada. Esa noche, luego de mucho tiempo, logró volver a dormir y se selló el destino del blog.

A la mañana siguiente WordPress fue arrancado de la instancia que lo vió nacer para ser clonado en un laboratorio de última tecnología y nunca más se tuvo noticia ni de él ni de su felicidad. Ahora WordPress era una imágen que se ponía a correr, ya no en una instancia… ahora en un cluster, que es un lugar que no se sabe bien dónde queda.

MySQL, su fiel y productivo compañero, tuvo una peor suerte: fue sacrificado.

De aquella hermosa instancia solo quedó una valija con lo que había en la parcela wp-content y un pequeño estuche que contenía aquello que con amor habían juntado WordPress y MySQL: los datos SQL.

Ahora el blog pasó al control profesional de un Team de Desarrollo. Los datos SQL fueron entregados a la custodia de un Señor RDS, quién con mucha sobriedad entregó a cambio un Contrato de Calidad de Servicio. El contendio de aquella hermosa parcela wp-content fue desplegado en un volúmen (¿EBS?) que con entiquetas y unos pases mágicos de volumen claim permite que accedas a su contenido.

Nunca más se sintió felicidad, pero ahora el Team de Desarrollo tenía respuestas para todas aquellas dudas que atormentaron en el pasado.

Hasta el día que un desarrollador junior del del Team de Desarrollo abríó un mensaje en el Slack que decía:

«Voy a hacer una modificación, pero quisiera hacerlo en una copia ¿cómo hago?»

Eso… eso es otra historia… más triste aún.

Tamaño máximo de adjuntos en correos

El tamaño máximo de adjuntos en un correo varía de servicio en servicio.

Esto nos afecta, pues nuestro servicio puede tener un tamaño establecido que es mayor que el tamaño del servicio de destino y, si mis ajuntos son mayores, el correo no será ni acpetado ni entregado al destinatario. Mientras que correos que envío a cuentas en mi mismo servicio son entregados sin problema.

Por supuesto, es posible configurar un servidor de correo para soportar tamaños mayores a los indicados, pero hay que tener en cuenta que cuando se envíe un correo será el servicio de destino el que aplicará sus límites, antes de aceptar el correo, para entregar en la casilla del destinatario.

Esta es una lista de los tamaños de ajuntos soportado por distintos servicios:

Servicios internacionales:

Servicios nacionales (Uruguay):

Otros límites a un correo:

Hay que recordar también que los distintos servicios tienen límites aplicados a otras características de los correos electrónicos, que también puden afectar si mi correo llegará a destino.

  • Número máximo de direcciones de destinto (To:)
  • Tamaño máximo de mensaje (adjunto + cuerpo + cabezales)
  • Espacio máximo de casilla destino (esto puede afectar si el destinatario no vacía su casilla para alojar el correo que recibe)
  • Cantidad de correos que se aceptan recibir de un mismo dominio (por día)

Estos límites han creado un «estándar» que se observa desde hace muchos años y al que todos más o menos nos adaptamos, pero cada tanto alguien tiene requisitos por sobre estos límites y se encontrará que su correo no llega a destino.

Cuando su correo no llegue a destino por tamaño del adjunto, debe buscar la ayuda de otros servicio, como ser file.io, donde el adjunto viaja por un medio y el correo, con un enlace para recuperar el adjunto, llega al destinatario de manera normal.

Les Luthiers

Recuerdo de mi más tierna adolecencia es ir al centro de Montevideo hasta la casa de venta de discos Palacio de la Música (en la misma esquina de Av. 18 de Julio y la calle Paraguay) con algun amigo para encerrarme en alguna de las cabinas con toca-discos (de pasta) a escuchar Les Luthiers, con el pretexto de decidir si los compraba, cosa que nunca hice ….

Ya de más grande supe tener un par de CDs de ellos y la oportunidad de irlos a ver actuar en el Teatro El Galpón. Y en mi biblioteca está su libro «Les Luthiers de la L a la S»

Hemos sido muchos los que descubrimos, nos fascinamos y reimos con ese humor inteligente y ocurrente que apelaba a la excelencia para transportarnos al punto donde conviven las lágrimas y la risa.

Aquí una breve colección de sus frases:

  • Todo es relativo. El tiempo que dura un minuto depende del lado de la puerta del baño que te encuentres.
  • Evite accidentes. Hágalo a propósito.
  • Tener la conciencia limpia es síntoma de mala memoria.
  • Evite accidentes. Hágalo a propósito.
  • La confianza mata al hombre…y embaraza a la mujer.
  • El que nace pobre y feo tiene grandes posibilidades de que al crecer se le desarrollen ambas condiciones.
  • Digamos, ha estado usted razonando… fuera del recipiente.
  • Pez que lucha contra la corriente muere electrocutado.
  • Lo importante no es ganar, sino hacer perder al otro.
  • Lo importante es el dinero, la salud va y viene.
  • Los honestos son inadaptados sociales.
  • Dime con quién andas y te diré si voy contigo.
  • Toda cuestión tiene dos puntos de vista: el equivocado y el nuestro.
  • La verdad no es lo que importa, sino tener razón.
  • El dinero no hace la felicidad, la compra hecha.
  • Errar es humano, pero echarle la culpa a otro es más humano todavía.
  • La pereza es la madre de todos los vicios, y como madre hay que respetarla.
  • Hay dos palabras que te abrirán muchas puertas: tire y empuje.
  • Si no puedes convencerlos, confúndelos.
  • No te metas en el mundo de las drogas. Ya somos muchos y hay muy poca.
  • Todo tiempo pasado fue anterior.
  • Yo tengo muchos libros escritos… yo ya los compro escritos porque si no, es como si no me dijeran nada.

Referencias:

Google publica reportes de movilidad en tiempos de pandemia

Google ha publicado reportes de la variación de movilidad vinuclada con las políticas o costumbres, que muestran la variación producida en tiempos de pandemia.

Acceso al sitio: https://www.google.com/covid19/mobility/

Estos reportes de movilidad tienen como objetivo proporcionar información sobre lo que ha cambiado en respuesta a las políticas destinadas a combatir COVID-19. Los informes muestran las tendencias de movimiento a lo largo del tiempo por geografía, en diferentes categorías de lugares, como tiendas y recreación, supermercados y farmacias, parques, estaciones de tránsito, lugares de trabajo y residenciales.

Muy bueno buscar el que compete a nuestros entornos y darle una mirada.

No te olvides de tu contrato ADSL

Update 23.mar.2020

Distintas mediciones confirman que la baja de ancho de banda no esta siendo aplicada por Antel

Muchos hemos comenzado a trabajar desde nuestras casas y a estructurar nuestras actividades en base a una gestión remota (videconferencias, llamadas, VPNs, etc. etc.), pero debemos que hacer una revisión de nuestros contratos ADSL, pues la calidad y fluidez de nuestro trabajo o nuestra productividad dependerá de nuestro ancho de banda.

En mi caso dispongo de un enlace de fibra óptica con la empresa de telecomunicaciones estatal de Uruguay: Antel en el paquete llamado «Plan fibra en tu hogar premium» que ofrece 240 Mbps de bajada y 24 Mbps de subida, lo que permite una conexión muy fluída, incluyendo mis necesidades de teletrabajo.

Pero esta velocidad es solamente por los primeros 700 GB de tráfico, superado ese tráfico la velocidad que dispondré es solamente 12 Mbps de bajada y 1 Mbps de subida.

Así que los que tenemos este tipo de contrato, cada vez que nos acercamos a fin de mes la calidad de nuestro enlace cae notoriamente, en mi caso solo dispondré de un 5% de mi velocidad de la mayoría del mes.

  • Velocidad de bajada será 5% de la velocidad normal (12*100/240)
  • Velocidad de subida será 4.17% de la velocidad normal (1*100/24)

Para saber cómo estamos cada uno de nosotros los proveedores presentan varios paneles o apps que nos informan, en el caso de Antel es Mi Antel

Como tengo un promedio de consumo de 30 GB al día, para el próximo miércoles que tengo agendada mi primer clase por teleconferencia estaré por encima del humbral de los 700GB mensuales de tráfico y con solo el 5% de mi velocidad.

700GB a 240/24Mbps, después 12/1 Mbps

Así que deberé tomar recaudos durante el horario de mi clase para que mi señal de voz y video sea aceptable, como desconectar las tabletas del wifi, evitar el uso por otros miembros de mi hogar, desconectar celulares del wifi, apagar las cámaras que graban en la nube, evitar sincronizaciones de archivos, etc. etc. Aun así, tengo temor que ese 1 Mbps que subirá mi video y voz presente intermitencias para mis alumnos.

Es lo que hay, Valor !

.

corona-stats.online

Un API para obtener los datos de la pandemia del Coronavirus COVID-19 se puede acceder para consultas en el sitio

https://corona-status.online

Algunas de las consultas:

$ curl -s https://corona-stats.online/UY?format=json | jq
[
  {
    "country": "Uruguay",
    "province": "",
    "countryCode": "UY",
    "confirmed": 94,
    "recovered": 0,
    "deaths": 0,
    "confirmedByDay": [
      0,
      0,
      0,
      4,
      4,
      8,
      29,
      50,
      79,
      94
    ],

Y por terminal se pueden conseguir unos resultados interesantes, como muestran estas capturas:

Si deseas colaborar, el proyecto se puede forkear a partir de este repositorio

https://github.com/sagarkarira/coronavirus-tracker-cli

Gracias a este twit tuve noticia de esta iniciativa:

https://twitter.com/radhios/status/1241374172674220034

Certbot: No module named pip.__main__; ‘pip’ is a package and cannot be directly executed

De un tiempo a esta parte he tenido sistemas de certificados Let’s Encrypt que han dejado de renovar el certificado automáticamente, al ejecutar certbot-auto obtengo el siguiente mensaje de error:

/opt/eff.org/certbot/venv/bin/python: No module named pip.__main__; 'pip' is a package and cannot be directly executed
Traceback (most recent call last):
  File "/tmp/tmp.p48KR72ZCs/pipstrap.py", line 177, in <module>
    sys.exit(main())
  File "/tmp/tmp.p48KR72ZCs/pipstrap.py", line 149, in main
    pip_version = StrictVersion(check_output([python, '-m', 'pip', '--version'])
  File "/usr/lib/python2.7/subprocess.py", line 544, in check_output
    raise CalledProcessError(retcode, cmd, output=output)
subprocess.CalledProcessError: Command '['/opt/eff.org/certbot/venv/bin/python', '-m', 'pip', '--version']' returned non-zero exit status 1

Opcion 1

La solución que he encontrado es actualizar a mano certbot-auto e indicarle que corra sin tratar de actualizarse. Estos serían los comandos:

rm ./certbot-auto*
wget https://raw.githubusercontent.com/certbot/certbot/75499277be6699fd5a9b884837546391950a3ec9/certbot-auto
chmod +x ./certbot-auto
./certbot-auto --no-self-upgrade

La referencia a este procedimiento la he conseguido de este post en foro de la comunidad Let’s Encrypt.

Opcion 2

Es posible parchar certbot-auto directamente con estos cambios

pip_version = StrictVersion(check_output([python, '-m', 'pip', '--version'])

cambiar por:

pip_version = StrictVersion(check_output(['pip', '--version'])

y

command = [python, ‘-m’, ‘pip’, ‘install’, ‘–no-index’, ‘–no-deps’, ‘-U’]

cambiar por:

command = ['pip', 'install', '--no-index', '--no-deps', '-U']
exito ok

whois para nuevos TLDs

Los nuevos TLDs como guru, americanfamily, showtime y muchos otros son un desafío para el comando whois con cierta antigüedad, ya que no los pueden resolver y muestra el error:

No whois server is known for this kind of object.

La solución es configurar un archivo /etc/whois.conf con las referencias a los nuevos TLDs y los servidores whois que los resuelven.

Este gist es un archivo /etc/whois.conf pronto para pegar y tener resuelto el problema para la siguiente consulta whois que se haga con los nuevos TLDs.

Tabla periódica del DevOps

La empresa XebiaLabs mantiene una tabla periódica de las herramientas para DevOps que es una forma muy interesante de tener tanto nombre y herramientas ordenados en una forma visual y comprensible.

Las herramientas listadas tiene cada una un enlace que lleva a información adicional.

Fuente: PERIODIC TABLE OF DEVOPS TOOLS