AlloyDB Omni viene eseguito tramite un'immagine Docker, che consente diverse forme di personalizzazione. Questa pagina mostra alcune delle personalizzazioni comuni utilizzate.
Per iniziare rapidamente a utilizzare AlloyDB Omni con la configurazione predefinita, consulta Guida rapida: AlloyDB Omni.
Prima di iniziare
La tabella seguente elenca la configurazione hardware e software consigliata per AlloyDB Omni.
| Sistema operativo/piattaforma | Configurazione hardware consigliata | Configurazione software consigliata |
|---|---|---|
| Linux |
|
|
| macOS |
|
|
| (*) Il supporto di Arm è in anteprima. | ||
AlloyDB Omni viene eseguito in un container. Installa un runtime del container come Docker o Podman sulla tua macchina prima di installare AlloyDB Omni.
Server singolo
Monta una directory di dati esterni
Per impostazione predefinita, il comando in Guida rapida: installa AlloyDB Omni archivia i dati del database in un'area gestita da Docker. Questa operazione è utile per iniziare, ma rende difficile trovare e utilizzare la directory dei dati. In alternativa, puoi configurare un montaggio di binding per mappare la directory dei dati a una posizione nota sul disco.
docker run --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
-v DATA_DIR:/var/lib/postgresql/data \
-p HOST_PORT:5432 -d google/alloydbomni:15.5.4Sostituisci quanto segue:
CONTAINER_NAME: il nome da assegnare a questo nuovo container AlloyDB Omni nel registro dei container della macchina host, ad esempiomy-omni.NEW_PASSWORD: la password assegnata all'utentepostgresdel nuovo container dopo la sua creazione.DATA_DIR: il percorso del file system che vuoi che AlloyDB Omni utilizzi per la directory dei dati.HOST_PORT: la porta TCP sulla macchina host a cui il container deve pubblicare la propria porta 5432. Per utilizzare anche la porta predefinita di PostgreSQL sulla macchina host, specifica5432.
Attiva ulimits
I parametri ulimit specificano vari limiti di processo che il container Docker è autorizzato a utilizzare. Per prestazioni ottimali, AlloyDB Omni regola le priorità dei processi per consentire ai processi PostgreSQL critici di essere eseguiti con una priorità più alta, ovvero di ottenere una maggiore allocazione delle CPU disponibili. Per consentire questa operazione, specifica -20:-20, che rimuove le limitazioni per il container AlloyDB Omni.
docker run --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
--ulimit=nice=-20:-20 \
-p HOST_PORT:5432 -d google/alloydbomni:15.5.4Specifica un driver di logging
Per impostazione predefinita, Docker non esegue rotazioni dei log. Questa operazione può utilizzare una grande quantità di spazio su disco e, alla fine, portare all'esaurimento dello spazio su disco. Puoi configurare Docker in modo che utilizzi un driver di logging diverso. Ad esempio, per eseguire il logging in journald:
docker run --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
--log-driver=journald \
-p HOST_PORT:5432 -d google/alloydbomni:15.5.4Per ulteriori informazioni su Docker e sui driver di logging, consulta la documentazione di Docker Configurare i driver di logging.
Puoi anche configurare il logging utilizzando PostgreSQL. Per ulteriori informazioni, consulta la documentazione di PostgreSQL Segnalazione degli errori e logging.
Monta un volume di memoria condivisa
Se prevedi di utilizzare il motore colonnare AlloyDB con AlloyDB Omni, ti consigliiamo di rendere disponibile la memoria condivisa per il container AlloyDB Omni. Il metodo per farlo varia a seconda del sistema operativo host, come mostrato negli esempi seguenti.
Linux
Per rendere disponibile la memoria condivisa per il container, monta /dev/shm:
docker run --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
-p HOST_PORT:5432 \
-v /dev/shm:/dev/shm \
-d google/alloydbomni:15.5.4macOS
Per rendere disponibile la memoria condivisa per il container, includi il flag --shm-size:
docker run --name CONTAINER_NAME \
-e POSTGRES_PASSWORD=NEW_PASSWORD \
-p HOST_PORT:5432 \
--shm-size=SHARED_MEMORY_SIZE \
-d google/alloydbomni:15.5.4Sostituisci SHARED_MEMORY_SIZE con le dimensioni da impostare per /dev/shm nel
container, nel formato descritto in Esecuzione di container.
Ad esempio, per specificare un gigabyte, utilizza il valore 1g.
Ti consigliamo di impostare le dimensioni della memoria condivisa su un numero di megabyte pari a
almeno il valore del database per il flag google_job_scheduler.max_parallel_workers_per_job, moltiplicato per 250. Per ulteriori informazioni
sul motore colonnare, consulta Configurare il motore colonnare in AlloyDB Omni.
Ad esempio, se il flag del database google_job_scheduler.max_parallel_workers_per_job è impostato sul valore predefinito 2, valuta la possibilità di aggiungere un flag --shm-size=500m o superiore quando avvii il server di database.
Per ulteriori informazioni sul flag --shm-size, consulta Esecuzione di container.