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

Monitoreo de Docker

Podemos poner a correr uno, dos o más dockers sin problema, podemos armarnos un docker-compose.yml que se encargue de levantar redes, definir volúmenes, correr dockers en órden de dependencia, en fin, podemos tener dockers corriendo… pero después, ¿cómo sabemos por qué nuestro sistema está lento? ¿por qué el host se queda sin memoria?

Claro que tenemos las herramientas de siempre: top, vmstat, htop … por nombrar algunas. Pero desde el host vemos el 100% de los procesos, pero no los contenedores responsables.

Asi que esta es una lista de las herramientas que utilizo para monitoreo de docker:

CTOP

Un top, pero por contenedor, como si cada contenedor fuera un proceso

ctop

https://github.com/bcicen/ctop

y en mis servidores lo incluyo (mediante una task de ansible) en este alias:

alias ctop='docker run --rm -ti \
   -v /var/run/docker.sock:/var/run/docker.sock:ro \
   quay.io/vektorlab/ctop:latest'

LazyDocker

Un panel en la consola para todo tu docker (imágenes, docker corriendo, volúmenes) que te permite ver logs, stats, etc. y algunas acciones basicas como stop/start, delete, etc…. y todo todo sensible al mouse (click!) y por SSH

lazydocker

https://github.com/jesseduffield/lazydocker

y en mis servidores ansible lo deja configurado asi:

alias lazydocker='docker run --rm -it \
  -v /var/run/docker.sock:/var/run/docker.sock \
  lazyteam/lazydocker'

Si conoces alguna otra herramienta, compártela en los comentarios.

Vagrant: Ignoring gem because its extensions are not built.

Comenzando cursos actualicé a la última version de vagrant y comencé a tener un error en las gemas de ruby instaladas:

$ vagrant version
Ignoring nokogiri-1.10.5 because its extensions are not built.  Try: gem pristine nokogiri --version 1.10.5
Ignoring ovirt-engine-sdk-4.3.0 because its extensions are not built.  Try: gem pristine ovirt-engine-sdk --version 4.3.0
Installed Version: 2.2.7
Latest Version: 2.2.7

You're running an up-to-date version of Vagrant!

Si bien todo el funcionamiento de vagrant que probé no tenía problemas, el error aparecía previo a la ejecución de cada comando vagrant.

Las sugerencias sugeridas de correccion de ejecutar gem no funcionaron tuve unos errores de permisos.

Revisando documentación vi que el error podría estar en el código de los plugins de vagrant (que agregan funcionalidad) y ejecuté el comando para borrarlos y reinstalarlos:

$ vagrant plugin expunge --reinstall

This command permanently deletes all currently installed user plugins. It
should only be used when a repair command is unable to properly fix the
system.

Continue? [N]: y

All user installed plugins have been removed from this Vagrant environment!

Vagrant will now attempt to reinstall user plugins that were removed.
Installing the 'vagrant-aws' plugin. This can take a few minutes...
Fetching: iniparse-1.5.0.gem (100%)
Fetching: xmlrpc-0.3.0.gem (100%)
Fetching: formatador-0.2.5.gem (100%)
[...]
Fetching: faraday_middleware-0.14.0.gem (100%)
Fetching: vultr-0.4.3.gem (100%)
Fetching: vagrant-vultr-0.1.2.gem (100%)
Installed the plugin 'vagrant-aws (0.7.2)'!
Installing the 'vagrant-cachier' plugin. This can take a few minutes...
Installed the plugin 'vagrant-cachier (1.2.1)'!
Installing the 'vagrant-scp' plugin. This can take a few minutes...
Installed the plugin 'vagrant-scp (0.5.7)'!
Installing the 'vagrant-vultr' plugin. This can take a few minutes...
Installed the plugin 'vagrant-vultr (0.1.2)'!

La reinstalación como se puede ver, descargó nuevamente las gemas y las compiló junto con el plugin actualizado. Esto solucionó el problema definitivamente:

$ vagrant version
Installed Version: 2.2.7
Latest Version: 2.2.7

You're running an up-to-date version of Vagrant!

Espero esta información sea de utilidad pues me llevó un rato interesante llegar a la solución.