Nutanix Community Edition (CE) Single Node Cluster

Hola,
Desde hace un tiempo llevo mirando otras opciones de Virtualización, y esta, me ha parecido muy interesante.

La gente de Nutanix ha desarrollado, tanto su CVM (Controller VM) con una serie de servicios para hacer HCI, así como su propio Hipervisor, AHV.

También, han puesto a disposición de la comunidad la «Community Edition»,

La cual es su Hipervisor + CVM + Prism (gestión) totalmente funcional, hasta 4 discos por Nodo, hasta 4 nodos en el cluster, Perfecto para probar y conocer el producto.

Vamos a ver ahora, en unos pantallazos y explicaciones, como desplegar la Nutanix CE en nuestro lab, en mi caso, Nested en un host ESXi 8, de la forma Single Node Cluster.

Single Node Cluster, es un Nodo único, el cual tiene las capacidades de la CVM, Prism, y la gestión de la red y almacenamiento por si mismo, es un cluster de solo 1 integrante, fantástico para según qué aplicaciones, en nuestro caso, una toma de contacto inicial.

vamos…

Vamos a ir al siguiente enlace y seguiremos los sencillos pasos, básicamente registrarnos en la comunidad, descargar la iso desde un post, y continuar el proceso.

Nutanix requiere recursos, en mi caso, la máquina donde instalé el Single Node tenía
4 vCPUs, 32GB de RAM, 3 discos Duros: 64GB Sistema, 200GB SSD, 400GB HDD

Comenzamos creando la vm en ESXi
Aquí se ven las specs iniciales, disco, nics, vcpus, etc.
arranca el instalador desde la iso
aqui, importante, el instalador selecciona los discos de la mejor manera, le dejamos, y completamos las IPs, una para el Host, y otra para la CVM o Controller VM, presente en cada nodo, y DNS.
aceptamos términos y condiciones
Listo! tras un rato, termina la instalación, desmontamos la iso, Y de yes…. y al lio.
arranca nuestro AHV desde nuestra VM
tarda un rato, ya que debe levantar todos los servicios, CVM, y después ejecutar unos post install scripts, le dejé quieto hasta ver estos resultados en la consola de la vm.
a jugar, comenzamos, en un navegados, ponemos la IP de la CVM definida antes, con https
nos solicitará cambiar el password pre definido, nutanix/4u , por uno distinto
aqui, nos solicitan nuestras credenciales de la comunidad, para licenciar nuestro nodo/cluster
BOOM! error, no hay DNS definido en el CVM, por tanto, no se puede registrar, lo solucionamos
accedemos por SSH al nodo, con la IP definida al comienzo, usuario root, contraseña nutanix/4u
desde el nodo, debemos acceder a la CVM por ssh, recordar las IPs definidas antes, usuario admin , contraseña nutanix/4u
aquí el comando mágico para añadir DNS a la config de red de la CVM
ncli cluster add-to-name-servers servers=1.1.1.1

en este caso escogí la DNS 1.1.1.1 por usar una DNS externa, pero si tienes DNS interno, mismamente.

ahora ya le gusta!! seguimos
Aqui le tenemos, primera pantallas de nuestro Single Node Cluster funcionando!!!
Aquí vemos que es un Single Node Cluster, 1 Host, 1 Block con Hipervisor AHV

Hasta aquí esta entrada, en posteriores, lo tunearemos un poco, y haremos el primer inventario para comprobar que está todo up to date, sino, que se descargue sus actualizaciones y las aplicaremos.

Iremos probando configuraciones de red, disco, etc.

una gran forma de probar AHV y las funcionalidades de entrada de Nutanix.

un saludo.

Windows Server 2025, Descarga e Instalación!

Hola,
Vamos a poner el link de Microsoft Insider, donde podemos descargar la pre release de Windows Server 2025.

https://www.microsoft.com/en-us/software-download/windowsinsiderpreviewserver

Para poder descargarla, debeis inscribiros como Insiders, y luego seguir los pasos para tener acceso a la descarga de Windows Server 2025.

Una vez lo tengas, descargar así

Ahora, Vamos a ver, a pantallazos, la instalación de Windows Server 2025…

Go!

Configuración de la VM creada en vSphere 8
Booteamos desde la ISO
Seleccionamos datos
Aquí el Idioma del teclado
Vamos! Install!
No tengo product key…😔
En mi caso, WS 2025 Standard (Desktop Experience)
Lo quiero con escritorio, sistema completo!
Ya sabeis qué hacer aquí…!
Seleccionamos disco donde instalar el Sistema
Y nos vamos al Install
Como no tengo, Do this later…

Ya lo tenemos instalado, ahora, un par de pantallazos con las cosas «chulas» que trae, como siempre, los roles y features que podemos desplegar!

Esta me ha llamado mucho la atención, wow, Azure Arc
Esto viene pisando muy fuerte, y promete!

https://www.microsoft.com/en-us/software-download/windowsinsiderpreviewserver

Por último, otro dato curioso, ya viene, por si no os habéis fijado, Hyper-V en el Menu de Add Roles del servidor, ya no es un comando aparte o feature añadida, ya está «integrada».

Saludos.

Object First – OOTBI

Por fin ha llegado el día!!

He podido abrir mi caja, la cual llevaba unas semanas esperándome, y tras un pequeño esfuerzo, por fin hemos podido hacer el «unboxing».

Se trata de un Appliance OOTBI de Object First,
Como bien sabeis, se trata de una solución de almacenamiento S3 inmutable para Veeam,
Os dejo aquí un poquito más de información!

Bueno, vamos al lío, os voy poniendo fotos, y explicando un poquito lo que va apareciendo:

Comienza la diversión, bien empaquetado, rotulado, etc.
Nos encontramos una caja con accesorios y los railes para instalarlo en un Rack
Poster con instrucciones, me encanta, lo colgaré en mi despacho!
Cara B del Poster
Oh si, el frontal que todos estábamos esperando
chuches…
al lio
wow
Frontal de ensueño, 12 bahías de 3,5″
Trae la friolera de 11 Discos como este, este appliance es el modelo de 128TB Efectivos
El disco que tiene el Caddy rotulado como NVMe, el super disco para el caché!
La parte trasera, ese back plane con dos discos de 2,5″ es precioso!
sin olvidar los 2 Ethernet 10Gbps, 2 SFP+ 10Gbps y el puerto IPMI
Los disos de la parte trasera de 2,5″
Fuentes extrapoles, trae dos como la que estamos viendo, para redundancia
Así se ve la parte trasera con los cables de red conectados
Ultimo vistazo trasero, que maravilla!
Así luce por dentro, muy limpio y ordenado, con sus ventiladores, tarjeta SFP+, Controladora de discos y batería, back plane, procesadores y memoria.
No me he podido resistir a ver bajo el capó lo que llevaba, una bestia!

Hasta aquí la impresión física y primer encendido,

He de decir que se ve de una calidad excelente, el más alto nivel de Supermicro,
Junto con los discos de gran calidad, capacidad y velocidad!

En la próxima, el arranque del SO, integración en Veeam VBR 12.1 y primeros trabajos e impresiones.

Os vuelvo a poner la foto del frontal, el cual, simplemente me parece precioso!!
Quedaría fantástico colgado en la pared de mi despacho, a modo de cuadro!

Saludos!!

Lab DNS Server – Pi-Hole!!

Tras estar de remodelación en el Laboratorio, que se ha convertido en un «borrón y cuenta nueva», estaba echando de menos un servidor DNS, simplemente DNS, para poder hacer pruebas, resolver interno y a la vez usarlo en casa con un poquito de filtrado.

Primera idea, un Windows server, pero era demasiado, y VM siempre corriendo, y la idea es poder apagar el laboratorio (Consumo de luz, y que sino me echan de casa!)

Así que me puse a mirar a mi alrededor, y Boom!!!!

Raspberri Pi vieja vieja…. HDMI «Grande» y salida RCA de video!!!

Ahí me dije, si solo quiero un DNS, y que no meta ruido y consuma poco, a ver si podemos echarla a andar….

Muy noble mi Pi, arrancó, ahora, a buscar una SD «grande» para poder hacer algo.

Os acordais de esto? XD una SD!!

Ahora, solo quedaba bajarse la app para preparar la tarjeta, en mi caso, uso Mac, por tanto
usaremos el Raspberry Pi Imager:

https://www.raspberrypi.com/software/

una vez instalado, lo ejecutamos, pinchamos nuestra tarjeta, y es tan sencillo como elegir la imagen, destino y dispositivo (para filtrar opciones)

Tras hacer la tarjeta, estamos listos para enchufarla y arrancar la PI!

y Voilá! arrancó!!!

Ahora, ssh a nuestra pi, y lanzamos la instalación del Pi-Hole.

Nos vamos a la web, y lanzamos, con sudo, el comando mágico de instalación:

https://docs.pi-hole.net/main/basic-install/

curl -sSL https://install.pi-hole.net | bash

Y acción!

Con unos sencillos pasos, llegamos a una ventana final, en la cual , nos indica el password de acceso a la consola web, el cual debemos guardar, ya que luego desaparece, y si queremos volver a acceder, debemos resetearlo.
Leer las pantallas, ya que son preguntas muy sencillas, como la consola de administración web, etc.
Recalcar que desde el wizard podemos poner IP estática a la raspberri, o dejarla por DHCP, dependerá de vosotros, en mi caso tiene IP estática, ya que más adelante, la usaré como servidor DHCP también!

Accedemos, y se verá la consola así:

Ahora ya solo queda que cambies en tu DHCP el DNS que entrega por la IP de tu Pi-Hole,
y estarás en marcha.

Es muy intuitiva y fácil de usar,
podemos activar varios proveedores de DNS, como Comodo, OpenDNS, Google, etc.
Bloquear dominios listados en adlists, añadir nosotros blacklisted domains, hacer entradas DNS propias, etc…

una chulada.

saludos.

Telegram Notifications from Ubuntu Server – all SSH Logins

Recently I added to my home lab, my first Ubuntu Server with a Hardened Repository for Veeam Backup, you can find more info here.

Now, the thing is, I want to be able to get notified if some user logs into the server via ssh, as a extra control, since I disable the SSH service when I dont use it.

Also the idea came, to be able to get notified from other applications via telegram, so wasn’t a crazy idea at the end.

from previous entries, or the internet, you can easily find how to create a Bot, and how to get your ID, so Im not going to dive into that,

So first, once we have created and activated our bot and user ID, lets go a create our Telegram messaging program,

in our home, lets create a file like this:

nano send-over-telegram.sh
#!/bin/bash
GROUP_ID=
BOT_TOKEN=

# this 3 checks (if) are not necessary but should be convenient
if [ "$1" == "-h" ]; then
  echo "Usage: `basename $0` \"text message\""
  exit 0
fi

if [ -z "$1" ]
  then
    echo "Add message text as second arguments"
    exit 0
fi

if [ "$#" -ne 1 ]; then
    echo "You can pass only one argument. For string with spaces put it on quotes"
    exit 0
fi
curl -s --data "text=$1" --data "chat_id=$GROUP_ID" 'https://api.telegram.org/bot'$BOT_TOKEN'/sendMessage' > /dev/null

GROUP_ID: Your Group ID from your telegram suscription
BOT_TOKEN: your token received when you created your bot.

let`s convert this into a «program» to do so, lets move (or copy) our file into the route /usr/sbin

sudo mv send-over-telegram.sh /usr/sbin/send-over-telegram

Everything inside /usr/sbin is owned by root, so lets change the ownership to our file

sudo chown root:root /usr/sbin/send-over-telegram

Finally, we want any user to execute this «program» so lets also modify the permissions for that

sudo chmod 0755 /usr/sbin/send-over-telegram

now we can test it out:

send-over-telegram test

you should get the «test» text message into your Telegram Group!

Now, let’s get notified any time a user logs into our server via SSH, to do so, we are going to create a script, and move it to a specific folder.

nano login-notification.sh
#!/bin/bash
    
# prepare any message you want
login_ip="$(echo $SSH_CONNECTION | cut -d " " -f 1)"
login_date="$(date +"%e %b %Y, %a %r")"
login_name="$(whoami)"

# For new line I use $'\n' here
message="New login to server"$'\n'"$login_name"$'\n'"$login_ip"$'\n'"$login_dat>

#send it to telegram
send-over-telegram "$message"

As you can see, here we are sending the information to our previously created «command» send-over-telegram

now, lets move (copy) the script where needs to be to trigger the alert:

sudo mv login-notification.sh /etc/profile.d/login-notification.sh
sudo chown root:root /etc/profile.d/login-notification.sh
sudo chmod 0755 /etc/profile.d/login-notification.sh

We are done!
Now, lets log off and back on to our Ubuntu Server,

You should get your Telegram Message with the information like this:

Remember!!

After using your SSH access, you should always disable it from the server, to avoid unwanted accesses to your server remotely, and do local changes or enable it just when you need to

To disable SSH:

sudo systemctl stop ssh
sudo systemctl disable ssh

Cheers!

Creando nuestro propio Ubuntu Server + Harden Repository Linux para Veeam V12

En una entrada anterior, veíamos como desplegar el Ubuntu VHL «paquetizado» directamente, ya aplicando todo el Hardening y opciones del script «por defecto» e incluso endureciendo los permisos de usuarios.

Ahora bien, si el caso es, que quieres instalar tu propio Ubuntu Server, y luego aplicar el Hardening, te traigo unos pantallazos con una Instalación estándar más la ejecución del script.

al lío –
Instalamos Nuestro Ubuntu Server:

Ya tenemos instalado el S.O. Base, ahora
Vamos a descargar el Script desde el siguiente enlace, lo subimos a nuestro servidor, y lo ejecutamos, atentos:

Nos vamos a la sección de descarga «Download»
Nos envía a un repositorio git, ahí tenemos el script.
Yo me lo bajé a mi ordenador, y lo subí via ssh a mi servidor Ubuntu. a vuestra elección.
Aqui importante, una vez copiado el archivo, le damos permisos de ejecución, y lo ejecutamos con permisos de «super user».
comienza el script a hacer lo suyo….
Listo, todo aplicado e instalado
aquí, tras un reinicio y login, vemos el mensaje arriba del todo, el famoso «Disclaimer»
También vemos la salida de puntos de montaje, vemos el sistema y /backups, que será donde guardemos nuestros backups inmutables más adelante.

Listo!

Ya tenemos nuestro Ubuntu Server con el Harden aplicado, y ya podemos seguir los pasos del artículo siguiente para añadir nuestro repo a Veeam B&R V12 y hacerlo inmutable, desde la parte de la adición del repo a VBR V12.

saludos.

Instalación e integración de VHR en VBR V12!

(Veeam Hardened Repository)

Hola, Hoy por fin me he animado a desplegar y probar el fantástico proyecto de Veeam, el VHR «Veeam Hardened Repository»

Se trata de un despliegue «paquetizado» de un Ubuntu Server, el cual ha sido «endurecido» o «reforzado» con las pautas de seguridad DISA STIG.

Existe la opción de instalar el S.O. por tu cuenta, y después correr el script de Hardened, pero me ha parecido más interesante probar este «paquetizado«

Voy a ir poniendo pantallazos y algunos comentarios, el proceso es muy sencillo.
Para las pruebas, lo he desplegado en una maquina virtual, pero este VHR está diseñado para ser desplegado en un servidor físico, no en vm.

Toda la información y descargas las podemos encontrar aquí!

Comenzamos:

Como pre requisito, este deploy buscará en los discos el más pequeño para el S.O. y el más grande para el repositorio, yo en mi caso he desplegado un disco de 20GB y otro de 100Gb y los ha reconocido solo.
Recomendado si hacéis el despliegue en servidor, que tenga controladora RAID, un RAID 1 «Pequeño» para el S.O. y un Raid 5 ò 6 para el repositorio.

Booteamos la ISO
Configuración de red, recomendado bond de 2 tarjetas de red, muy fácil de hacer con el asistente.
en mi caso al ser laboratorio, solo he dejado una tarjeta y por DHCP
Si tenemos servidor Proxy para la conexión a internet, importante definirlo, ya que se bajará actualizaciones de seguridad en el proceso de instalación.
OJO! Vamos a destruir todo el contenido de los discos, e instalar el S.O, y el repositorio,
si estais re instalando el S.O por fallo, no hagas esto, o lo perderéis todo.
Definimos usuario
arranca la magia
Sigue la magia con actualizaciones
acabamos, ahora, a reiniciar.
Arranque inicial, nos «logueamos» con el usuario creado previamente…
Ojo al disclammer, nos indica que tras este setup inicial, y reiniciemos, el S.O. se va a «endurecer» deshabilitando todos los comandos para el usuario, a excepción de reboot y shutdown!!
Haremos nuestros ajustes, y ante de reiniciar, lo añadiremos al servidor de Veeam VBR!!!
En nuestro VBR, vamos al Wizard de añadir repositorio de backup.
HARDENED!!!
Añadimos nuestro servidor VHR recién desplegado
Las credenciales como single use, sino, nos va a fallar, es un hardened repo, todo debe ser lo más seguro posible!
Continuamos con el proceso,
Seleccionamos nuestra unidad donde vamos a almacenar los backups, el Repo!
Aquí definimos la inmutabilidad, en días, lo he dejado por defecto, 7!
Seguimos con la configuración convencional de nuestros repos
Listo!

Vemos aquí nuestro repo Inmutable listo para ser usado, independiente, en SORB, etc…

OJO, continuamos ahora en el Servidor VHR que desplegamos, para terminar el Hardening!!

Como veis, ya lo hemos añadido a nuestro VBR, por tanto, ahora, a reiniciar, tras lo cual, se ejecutará el script de «endurecido» quedando el usuario solamente con la opción de shutdown y reboot.
Listo! ya nos dice el disclamer que el Hardening se ha efectuado.
Todo listo para usar nuestro repositorio en nuestro servidor seguro.

ara poder hacer troubleshooting, tendremos que reiniciar y lomearnos en el servidor como root desde el modo Standalone desde el arranque del Grub, ya que el root está deshabilitado, y nuestro usuario únicamente tiene permisos de Reboot y Shutdown.

Espero os haya gustado, y os facilite el despliegue de esta fantástica opción,
yo lo tengo en mi laboratorio, y como bien dice la documentación, usarlo a vuestro criterio, y no tiene soporte, no habrás tickets en soporte!

Para monitorear los discos en caso de fallo, etc, deberes configurar la ILO, IPMI, DRAC, etc… que tenga vuestro servidor, ya que el S.O. del VHR no mandará notificaciones.

un saludo.

USB Storage over the Network!

Hi everyone!

I had a case during this week, and I wanted to share my experience / workaround with y’all.

I wanted to export a backup to an external drive, the VBR was a virtual machine, and no access to the Hypervisor to plug the USB and push it to the vm.

Now you may think, mount it somewhere and share it over the network as a shared folder…

I did, and was not working, some windows stuff that we were not allowed to share any unit, and was driving us crazy!

We did some research, and remembered that there was a way to share / mount remote USB Devices over the Network! now, time to give it a shot!

The idea is very straight forward, a Server machine, where the USB Devices is located at, and a client, to mount the remote resource as “local”.

The tool name is VIRTUALHERE

USB SERVER(Local USB Drive)→NETWORK→USB CLIENT“Remotely mounted USB Drive”

You simply download the Server and client, and execute them in the decided machines, couple of easy configs, and you are good to go, let me show you some screenshots.

VirtualHere Server running in the workstation out of the Vsphere environment.
Client running in the VBR Server
We right click into the device we would like to mount remotely – locally.
Boom! now shows the USB Drive like being plugged locally, its not!
VBR Sees the unit from the system, so now we are good to export the backup to it.
Some networking traffic going on, sending the files to the USB drive.
After the usage, we unmount the unit by right clicking and stop using the device.
Now we can see here at the “Server” that the unit has the files into it! worked perfectly.
Finally, you can see that the USB Drive is unmounted in the VBR server, all the files copied ok.

Hope you liked this little workaround, 

now, planning and thinking in future usages for this great tool.

Just wanted to highlight that I used the “Free” Version, which only allows to mount one USB Device at a time, there is a licensed version, but not used for now.
Also wanted to tell you that I have no relationship at all with them, just found it and wanted to share it with all of you.

cheers!

Exportando Backup de Veeam VBR 12 a vmdk

Hola,
Este paso curioso me llegó, dado que un amigo me pidió ayuda con un tema,
un servidor, el cual necesita una copia del mismo para hacer una auditoría, solo de las unidades de disco.

Lo primero que me vino a la cabeza fue, restaurar la vm desde un backup, y ya de ahí coger los vmdks pertinentes y hacer lo que sea.

De ahí, otra idea, si es un servidor virtual, restaurar los ficheros de vm, no el contenido, no?
Este parece ser el paso más sencillo y adecuado, siendo una vm.

Pero luego, dándole vueltas, caí en la cuenta, y si es físico? cómo podríamos hacerlo?
Por qué no mejor coger y pedirle a veeam directamente los vmdks?

Veeam no solo nos «convierte» o «entrega vmdks (vmware), sino también puede ser vhd (Hyper-V o Azure) o vhdx (Hyper-V).

Vamos a verlo con unos sencillos pantallazos, por si a más de uno le puede ser útil:

ya los tenemos,
Saludos.

Detalle / error a la hora de hacer un Move backup a S3(i)

Hola, en un post anterior vimos la funcionalidad Backup Move en VBR 12, una maravilla.

Ahora bien, me he encontrado con un pequeño error, el cual no me permitía mover los backups de un repo a otro, en concreto, de un repo local a un repo S3 en Wasabi (immutable).

Tal y como podemos leer en el error, se trata de nuestra configuración de la tarea, la cual tiene puesto un Synthetic Full los sábados, y no le ha gustado nada.

Lo cambiamos a Active full, realizamos un Full, y ya nos permitirá hacer el cambio de Repo.

Pequeño detalle a tener en cuenta a la hora de querer hacer nuestros movimientos.
Ojo con el espacio disponible, ya que un Active Full ocupa, y según tengamos nuestros recursos disponibles, podemos tener problemas.

Detalle también a tener en cuenta a la hora de crear nuestras tareas en el inicio,
si prevemos que haremos este tipo de movimientos, conviene tenerlo preparado.

saludos.