El Nuevo Tejado de Turch

Finalmente, llegó el momento de renovar el tejado de la casa de Turch, nuestra tortuga, que vive desterrada en nuestra terraza y que precisa de iluminación artificial ultravioleta (simulando el sol) y mantener una temperatura estable por encima de 22 grados para que no se nos congele.

Con una sierra de calar, he serrado un trozo de madera con el tamaño de su terrario y le he hecho dos agujeros, uno para la bombilla de calor y el otro para los ultravioletas. Por debajo de la tapa he puesto un medidor de temperatura WIFI para saber en todo momento como va el calorcito dentro de su casa.

Las dos bombillas están conectadas a enchufes WIFI y controladas a través de Alexa. La luz ultravioleta se enciende al amanecer y se apaga al anochecer automáticamente gracias a las «Rutinas» del asistente de Amazon.

Además, con una bisagra, he hecho una especie de tapa con su tirador para poder abrir fácilmente al terrario cada día para ponerle la comida (hojas de lechuga variadas).

El resultado es bastante bueno y la temperatura se ha incrementado en unos 6-8 grados de media. Turch parece estar bastante satisfecha.

Scripts Básicos en Bitnami

El título, para ser preciso, debería ser algo así como «Comandos y scripts básicos para Bitnami si utilizas Lightsail en Amazon Web Services cuando instalas blueprints , por ejemplo, de WordPress o Magento» pero obviamente era muy largo. Sin embargo, y en términos generales, estos scripts también funcionarán fuera de AWS para otros proveedores de hosting que utilicen Bitnami.

Yo diría que los 3 comandos que tenemos que tener más a mano cuando realizamos la instalación de una de sus más de 130 aplicaciones que tienen en catálogo son los siguientes:

Recuperar usuario y contraseña después de la primera instalación cat ./bitnami_credentials
Instalar certificado SSLsudo /opt/bitnami/bncert-tool
Eliminar el banner inferior derecho de Bitnami de nuestras instalacionessudo /opt/bitnami/apps/APPNAME/bnconfig.disabled –disable_banner 1

Donde APPNAME se tiene que sustituir por el directorio donde está instalada nuestra aplicación. Generalmente será WordPress, Magento, etc…

En algunas instalaciones puede ser «bnconfig» en vez de «bnconfig.disabled».

Cada uno de ellos puede requerir algunos pasos o preguntas pero en general su ejecución es bastante sencilla.

Hosted Zones en Route 53

Cuando registras dominios con AWS y quieres vincularlos a instancias de EC2 o Lightsail, tienes que crear «Hosted Zones» utilizando Route 53. Una Hosted Zone tiene diferentes «Record Sets» y hay que ser cuidadoso para crearlos bien, especialmente en lo referente a los prefijos «www.» u otros.

En mi caso, estos son los Record Sets que tengo creados:

Una mala configuración puede hacer que nuestra web funcione mal e incluso que deje de funcionar si instalamos un certificado SSL y redirigimos tráfico de «www.» al dominio simple.

No hace falta decir que la IP, en mi caso la 3.127.33.7, tiene que ser fija.

YAM YM-101

Hace unos días monté en el techo de mi comedor un foco de luz que se alimenta de la lámpara principal y que se enciende y apaga utilizando un mando a distancia y el interruptor inalámbrico YAM YM-101 que me ha costado unos 8€ en Amazon y que viene con ese mando.

El montaje es muy sencillo: uno de los cables negros y el azul se tienen que conectar al foco mientras que el otro negro y el rojo a los dos polos de corriente de 220V o en mi caso a los dos cables de la otra lámpara. El cable blanco funciona como antena y no se tiene que conectar.

Aunque aun no he conseguido entender porqué el mando a distancia tiene tantos botones, el encendido y apagado funciona perfectamente con dos de ellos y el único aspecto mejorable es que cuando recibe electricidad, su estado inicial es encendido y no apagado. Es decir, cuando enciendo la lámpara principal, el foco también se enciende y tengo que apagarlo con el mando si no lo quiero mantener encendido.

Una recomendación importante es que no intentes seguir las instrucciones que aparecen impresas en el YM-101 porque he sido incapaz de entender el inglés en que está escrito todo y que lo he releído bastantes veces. Si alguien es capaz de descifrarlo, quizás arroje luz sobre el funcionamiento de todos los botones del mando.

Migrar WordPress de Bluehost a AWS Lightsail

Como comentaba en mi último post, hace unos días terminé de migrar mi blog en WordPress de Bluehost a AWS Lightsail.

Aunque no es tan simple como un «siguiente-siguiente-siguiente», siguiendo algunos detalles clave, se puede completar en unas pocas horas. Estos son los pasos a seguir:

      • Crear una instancia en Lightsail, por ejemplo en Linux, y seleccionar la instalación de WordPress.
      • Una vez creada la instancia, crear una IP fija en vez de la IP dinámica que se asigna por defecto.
      • En Bluehost, instalar el plugin «All-in-One WP Migration«. Lo utilizaremos para realizar una copia de todos los posts, archivos, imágenes, configuraciones, plugins, etc.
      • Crear una copia del contenido de WordPress en Bluehost utilizando el plugin anterior. El archivo tenemos que guardarlo en nuestro ordenador.
      • Ir al WordPress que hemos instalado en Lightsail e instalar «All-in-One WP Migration».
      • Asegurar que hemos creado en el WP de Lightsail los usuarios que utilizaremos posteriormente.
      • Importar el archivo de copia que hemos guardado en nuestro ordenador anteriormente. Probablemente tengamos que descargarnos una extensión del plugin (gratuita) para poder importar archivos grandes.
      • Comprobar con la IP fija de la instancia de Lightsail que todo funciona correctamente, tanto a nivel de lectura como de administrador de WP.
      • Iniciar la migración del dominio desde Bluehost utilizando Route53. Este paso puede durar algunos días.
      • Mientras esperamos que Bluehost autorice el movimiento del dominio, crear las zonas DNS que queramos utilizar en Route53.
      • Una vez que ha finalizado el movimiento del dominio, tenemos que instalar un certificado de seguridad para habilitar HTTPS. Se puede hacer fácilmente a través de un script de Bitnami. Es gratuito.

Y ya está. Algunos de los pasos son algo complejos pero hay mucha información a través de Bitnami por lo que no es excesivamente complicado. Los dos pasos más delicados son la exportación e importación de datos de WP y la transferencia del dominio.

Ya estoy en AWS

Ya he terminado la migración de www.albertsampietro.com desde Bluehost a Amazon Web Services.

He estado en el hosting de Bluehost, con base en Utah, un total de 13 años y aunque no he estado del todo descontento con ellos, el hecho de que hayan incrementado el precio de sus servicios, su «discreta» usabilidad en algunas de sus funcionalidades (dificultad para actualizar a la última versión de PHP, gestión de dominios,…), algunos problemas de seguridad y la falta de claridad en el rendimiento de sus aplicaciones me han decidido a cambiarme a AWS.

En Amazon Web Services, utilizo principalmente Lightsail para crear instancias de cada una de mis webs y Route53 para la gestión de dominios y zonas DNS.

Lo más interesante de Lightsail, además del precio, es que es muy rápido instalar aplicaciones como WordPress o Magento gracias a su catálogo de scripts así como la forma en que monitoriza los costes y el rendimiento de cada una de las instancias. La cónsola de administración, en mi caso en Linux, a través de línea de comandos es muy útil para realizar tareas básicas de administración tales como recuperar usuarios perdidos, habilitar certificados para https, etc.

La migración de Bluehost a Lightsail no es trivial y requiere de varios pasos que explicaré en un post aparte.

Recuperar Usuarios y Contraseñas en WordPress

La mejor opción cuando has perdido el nombre de usuario, la contraseña y el correo electrónico de tu usuario en WordPress es acceder a través de línea de comando. Para ello necesitas tener acceso al servidor donde está instalada la aplicación.

WP-CLI es la interfaz por línea de comando de WordPress y a través de ella es posible realizar multitud de tareas. Para recuperar usuarios y contraseñas tenemos que comenzar con:

$ wp user list

Con ella accederemos al listado de usuarios de nuestra instalación en WordPress junto con sus permisos. Una vez hemos identificado el ID del usuario que queremos recuperar tenemos que utilizar la siguiente instrucción:

$ wp user update 1 --user_pass=newpassword

donde «1» es el ID del usuario y «newpassword» es la contraseña que queremos asignarle.

La forma en la que tenemos que acceder a la línea de comandos es diferente dependiendo del sistema operativo que utilicemos. Por ejemplo, en Windows 10, tenemos que pulsar la tecla de Windows+R y ejecutar la aplicación «cmd».

Sonoff TH10

Me compré el Sonoff TH10 hace un año para poder monitorizar temperaturas de forma remota gracias a su sonda y a la aplicación móvil (ver aquí el post que publiqué). El TH10 además incorpora un interruptor controlable a distancia por lo que puede trabajar como termostato tan solo por 18€.

El manual de instrucciones, que adjunto, es muy conciso y claro y describe todo lo que el TH10 puede hacer y la forma de conectarlo.

La sonda de temperatura es externa y se conecta a través de un cable al Sonoff.

Modificaciones en Twenty Sixteen

Finalmente, me he puesto en serio y estoy comenzando a hacer algunas modificaciones en la plantilla Twenty Sixteen de WordPress.

En vez de modificar el PHP como explicaba en este post, en esta ocasión simplemente he añadido nuevo código al archivo de CSS personalizado (Aparencia>Editar CSS).

/*
Quitar blancos en la cabecera - Albert Sampietro 18-09-2019
*/
masthead {
padding-top: 10px;
padding-bottom: 50px;
}

/*
Quitar columna izquierda de metadata y ponerla al final del post - Albert Sampietro 18-09-2019
*/
@media screen and (min-width: 61.5625em) {
body:not(.search-results) article:not(.type-page) .entry-footer
{
float: none;
margin-top: 1.5em;
width: 100%;
}
.single .byline, .full-size-link,
body.group-blog:not(.search-results) .byline,
body:not(.search-results) .entry-format,
body:not(.search-results) .cat-links,
body:not(.search-results) .tags-links,
body:not(.search-results) article:not(.sticky) .posted-on,
body:not(.search-results) article:not(.type-page) .comments-link,
body:not(.search-results) article:not(.type-page) .entry-footer .edit-link
{
display: inline;
}
body:not(.search-results) article:not(.type-page) .entry-footer > span:not(:last-child):after
{
display: inline;
}
body:not(.search-results) article:not(.type-page) .entry-content
{
float: none;
width: 100%;
}
body:not(.search-results) article:not(.type-page) .entry-footer .avatar
{
display: inline;
margin: auto 0.3em 1em auto;
width: 27px;
}}

Los dos cambios que he insertado son la eliminación de blancos antes y después del título del blog y mover la información de metadata (autor, fecha, comentarios,…) de la columna izquierda del post al final.

Garmin Forerunner 935

Finalmente he retirado mi viejo Garmin FR10 y mi Fitbit y me he hecho con el Forerunner 935 que combina GPS con medidor de pasos.

Mis Fitbit, FR10 y FR935

Ya hace más de un mes que me cambié y estoy cada día más contento por varias razones: la batería en modo «normal» dura entre 2 y 3 semanas y en modo GPS unas 10 horas, suficientes para terminal cualquier maratón. Además, en un solo reloj tengo todo lo que necesito y puedo configurar las aplicaciones que quiera y las plantillas de visualización.

Lo he probado corriendo y nadando y va de fábula con una precisión muy buena, captando todos los satélites en menos de 30 segundos esté donde esté (con el FR10 podía tardar a veces hasta 10 minutos).

En fin, que estoy muy contento con el cambio.