VEEAM ONE – Automatizzare l’avvio di una VM spenta

Monitorare lo stato delle macchine virtuali (VM) è fondamentale per garantire la continuità operativa dell’infrastruttura virtuale. Con Veeam ONE, puoi creare un allarme personalizzato per notificarti quando una macchina virtuale è spenta automatizzandone la ripartenza.


1. Accedi a Veeam ONE Monitor

  1. Apri Veeam ONE Monitor e accedi con le tue credenziali.
  2. Dal pannello di navigazione sulla sinistra, vai alla sezione Alarms (Allarmi).

2. Scegli l’ambito dell’allarme

Per configurare un allarme che monitora lo stato delle VM:

  1. Naviga nella gerarchia delle entità virtuali (come vCenter Server o cluster).
  2. Seleziona il livello di interesse. Per monitorare tutte le VM, scegli un livello superiore (es. l’intera infrastruttura). Se vuoi monitorare solo specifiche VM, selezionale manualmente.

3. Crea un Nuovo Allarme

  1. Fai clic su Create Alarm (Crea Allarme) nella barra degli strumenti.
  2. Assegna un nome all’allarme, ad esempio “VM Spenta”.
  3. Fornisci una descrizione chiara, come: “Questo allarme si attiva quando una VM è spenta per prevenire interruzioni di servizio non pianificate.”

4. Configura i Trigger dell’Allarme

I trigger definiscono le condizioni per l’attivazione dell’allarme. Per configurare il trigger:

  1. Vai alla scheda Rules (Regole).
  2. Fai clic su Add (Aggiungi) per creare una nuova regola.
  3. Seleziona il parametro VM state (Stato della VM) come criterio di monitoraggio.
  4. Sotto Condition (Condizione), scegli Equals (Uguale) e imposta il valore su Powered Off (Spenta).
  5. Puoi anche aggiungere un timer per evitare falsi positivi, ad esempio impostando il trigger affinché si attivi solo se la VM rimane spenta per più di 5 minuti.

5. Configura le Notifiche

Per ricevere notifiche quando l’allarme si attiva:

  1. Vai alla scheda Notifications (Notifiche).
  2. Seleziona il metodo di notifica preferito:
    • Email Notification: Configura gli indirizzi email dove inviare l’allarme.
    • Run Script: Puoi configurare uno script personalizzato per eseguire azioni specifiche.
  3. Specifica il contenuto della notifica, includendo dettagli come il nome della VM e l’ora in cui è stata spenta.

6. Salva e Attiva l’Allarme

  1. Fai clic su Finish (Fine) per salvare l’allarme.
  2. L’allarme sarà attivo e inizierà immediatamente a monitorare lo stato delle VM.

7. Testa il Funzionamento dell’Allarme

Per verificare che l’allarme funzioni correttamente:

  1. Spegni manualmente una macchina virtuale per simulare la condizione.
  2. Controlla se l’allarme appare nella sezione Triggered Alarms (Allarmi Attivati) del Veeam ONE Monitor.
  3. Verifica di aver ricevuto la notifica configurata.

Suggerimenti per l’Ottimizzazione

  • Filtri Specifici: Se non vuoi monitorare tutte le VM, applica filtri per escludere quelle che possono essere spente intenzionalmente, come macchine di test.
  • Azioni Proattive: Associa lo stato dell’allarme con l’esecuzione di uno script che accenda automaticamente la VM o avvisi un amministratore specifico.

Conclusione

Creare un allarme su Veeam ONE per monitorare lo stato di una VM spenta è semplice e ti permette di agire rapidamente in caso di problemi. Con questa configurazione, puoi migliorare la disponibilità del sistema e ridurre i tempi di inattività non pianificati.

Ricorda di rivedere e aggiornare periodicamente i criteri di allarme per garantire che rimangano pertinenti alle esigenze della tua infrastruttura.

VRO: Orchestrazione di un Servizio – Parte 1

Creazione delle 3 VM Ubuntu e installazione dei servizi Backend, Frontend e DB

Obiettivo

In questa prima parte della guida descriviamo come creare tre macchine virtuali Ubuntu e configurare ciascuna con i servizi necessari:

  • Frontend: server web statico con HTML
  • Backend: applicazione Node.js con API REST
  • DB01: server PostgreSQL

1. Creazione delle VM Ubuntu

Requisiti minimi per ciascuna VM

Sistema operativo: Ubuntu Server 22.04 LTS

CPU: 1 vCPU

RAM: 1-2 GB

Disco: 10 GB

Scheda di rete: Bridged o NAT (consigliato Bridged)

Nomi e indirizzi IP

VM Nome Host IP
Frontend frontend 192.168.16.151
Backend backend 192.168.16.152
DB01 db01 192.168.16.153

Configurare ogni VM con IP statico via Netplan.

2. Installazione e configurazione del Database (DB01)

Installazione di PostgreSQL

sudo apt update && sudo apt install postgresql -y

Creazione utente e database

sudo -u postgres psql
CREATE DATABASE myapp;
CREATE USER backend_user WITH ENCRYPTED PASSWORD ‘backend_pass’;
GRANT ALL PRIVILEGES ON DATABASE myapp TO backend_user;
\q

3. Installazione del Backend (backend)

sudo apt install nodejs npm -y

Struttura base del progetto

mio-backend/
├── server.js
├── db.js
├── routes/
│ └── users.js
├── package.json

Esempio di server.js

const express = require(‘express’);
const cors = require(‘cors’);
const app = express();

app.use(cors());
app.use(express.json());
const usersRoute = require(‘./routes/users’);
app.use(‘/api/users’, usersRoute);

app.listen(3000, () => {
console.log(‘Server backend in ascolto sulla porta 3000’);
});

Connessione al DB (db.js)

onst { Pool } = require(‘pg’);
const pool = new Pool({
user: ‘backend_user’,
host: ‘192.168.16.153’,
database: ‘myapp’,
password: ‘backend_pass’,
port: 5432,
});

module.exports = pool;

Installazione dipendenze

npm init -y
npm install express cors pg

4. Installazione del Frontend (frontend)

Creazione file index.html

<!DOCTYPE html>
<html>
<head>
<title>Gestione Utenti</title>
<script>
const backendURL = “http://192.168.16.152:3000/api/users”;
async function getUsers() {
const res = await fetch(backendURL);
const users = await res.json();
document.body.innerHTML += JSON.stringify(users);
}
window.onload = getUsers;
</script>
</head>
<body>
<h1>Lista Utenti</h1>
</body>
</html>

Installazione di un web server (es. Apache)

sudo apt install apache2 -y
sudo cp index.html /var/www/html/index.html

Nella prossima parte vedremo come configurare lo switch automatico di rete e IP per scenari di Disaster Recovery (DR) utilizzando Netplan e systemd.