Gestione Risorse

Kuboide ti permette di allocare risorse (CPU e RAM) a ogni servizio in modo granulare. Una corretta allocazione delle risorse garantisce prestazioni ottimali e stabilità.

Concetti base

CPU

La CPU viene allocata in "quote" relative. Ogni servizio riceve una quota che determina la priorità di accesso alla CPU quando il server è sotto carico.

  • Valori tipici: 0.25, 0.5, 1, 2 CPU
  • Un servizio con 2 CPU ha doppia priorità rispetto a uno con 1 CPU

RAM

La RAM viene allocata in modo fisso a ogni servizio.

  • Valori tipici: 128MB, 256MB, 512MB, 1GB, 2GB
  • Il servizio non può superare la RAM allocata
  • Se supera il limite, potrebbe essere riavviato

Allocazione risorse

  1. Vai nei dettagli dell'ambiente
  2. Clicca sul servizio da configurare
  3. Nella sezione Risorse, imposta:
    • CPU: quota CPU da allocare
    • RAM: memoria massima
  4. Salva le modifiche
  5. Riavvia il servizio se necessario

Raccomandazioni per servizio

Nginx

Tipo ambiente CPU RAM
Development 0.25 128MB
Staging 0.5 256MB
Production 1 512MB

PHP-FPM

Tipo ambiente CPU RAM
Development 0.5 256MB
Staging 1 512MB
Production 2 1GB-2GB

La RAM dipende molto dalla tua applicazione. Applicazioni pesanti come Magento richiedono più risorse.

MySQL/MariaDB

Tipo ambiente CPU RAM
Development 0.5 512MB
Staging 1 1GB
Production 2 2GB-4GB

I database beneficiano molto dalla RAM per il caching delle query.

PostgreSQL

Tipo ambiente CPU RAM
Development 0.5 512MB
Staging 1 1GB
Production 2 2GB-4GB

Redis

Tipo ambiente CPU RAM
Development 0.25 64MB
Staging 0.5 128MB
Production 1 256MB-1GB

La RAM di Redis dipende dalla quantità di dati che vuoi cachare.

Node.js

Tipo ambiente CPU RAM
Development 0.5 256MB
Staging 1 512MB
Production 2 1GB

Calcolo risorse totali

La somma delle risorse allocate non deve superare le risorse del server:

terminal
Risorse server: 4 CPU, 8GB RAM

Esempio allocazione:
- Traefik: 0.25 CPU, 128MB RAM
- Nginx: 0.5 CPU, 256MB RAM
- PHP: 1.5 CPU, 2GB RAM
- MySQL: 1.5 CPU, 4GB RAM
- Redis: 0.25 CPU, 256MB RAM
---------------------------------
Totale: 4 CPU, 6.6GB RAM ✓

Lascia sempre un margine per il sistema operativo e i processi di sistema (almeno 512MB-1GB di RAM).

Monitoraggio risorse

Dopo aver configurato le risorse, monitora l'utilizzo effettivo:

  1. Vai nei dettagli dell'ambiente
  2. Controlla il pannello Monitoraggio
  3. Verifica l'utilizzo di CPU e RAM per ogni servizio

Se un servizio usa costantemente il 100% delle risorse allocate, considera di aumentarle.

Ottimizzazione

Servizio lento

  • Aumenta CPU e RAM
  • Verifica i log per errori
  • Controlla la configurazione del servizio

Server sovraccarico

  • Riduci le risorse dei servizi meno critici
  • Considera l'upgrade del server
  • Sposta alcuni servizi su un server dedicato

RAM insufficiente

  • I servizi vengono riavviati frequentemente
  • Errori "Out of Memory" nei log
  • Aumenta la RAM o ottimizza l'applicazione

CPU insufficiente

  • Risposte lente sotto carico
  • Alto "load average" sul server
  • Aumenta la quota CPU o ottimizza il codice

Preset per scenari comuni

Blog/Sito vetrina (basso traffico)

terminal
Nginx: 0.25 CPU, 128MB
PHP: 0.5 CPU, 256MB
MySQL: 0.5 CPU, 512MB
Redis: 0.25 CPU, 64MB
Totale: 1.5 CPU, ~1GB RAM

E-commerce medio

terminal
Nginx: 0.5 CPU, 256MB
PHP: 1.5 CPU, 1GB
MySQL: 1 CPU, 2GB
Redis: 0.5 CPU, 256MB
Totale: 3.5 CPU, ~3.5GB RAM

Applicazione Node.js

terminal
Nginx: 0.25 CPU, 128MB
Node.js: 1.5 CPU, 1GB
PostgreSQL: 1 CPU, 1GB
Redis: 0.25 CPU, 128MB
Totale: 3 CPU, ~2.3GB RAM

Best practices

  • Inizia conservativo: parti con risorse basse e aumenta se necessario
  • Monitora: controlla regolarmente l'utilizzo reale
  • Testa sotto carico: verifica le performance con traffico simulato
  • Documenta: annota le configurazioni che funzionano bene

Prossimi Passi

Hai completato la configurazione degli ambienti! Ora puoi:

  • Tornare alla Panoramica
  • Esplorare le Chiavi SSH per approfondimenti
  • Consultare la documentazione dei singoli servizi (coming soon)