Questa pagina mostra come collegare gli hyperdisk alle macchine virtuali (VM) in un cluster Managed Service for Apache Spark. Puoi configurare i dischi in modo indipendente per i gruppi di nodi master, nodi worker primari e nodi worker secondari. Questi dischi sono collegati ai nodi del cluster in aggiunta al disco di avvio e a eventuali SSD locali collegati ai nodi del cluster.
Prima di iniziare
- Accedi al tuo Google Cloud account. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti senza costi per l'esecuzione, il test e il deployment dei workload.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that you have the permissions required to complete this guide.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Managed Service for Apache Spark API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that you have the permissions required to complete this guide.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Managed Service for Apache Spark API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.
Ruoli obbligatori
Per eseguire gli esempi in questa pagina sono necessari alcuni ruoli IAM. A seconda delle policy dell'organizzazione, questi ruoli potrebbero essere già stati concessi. Per verificare le concessioni dei ruoli, consulta Devi concedere i ruoli?.
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
Ruoli utente
Per ottenere le autorizzazioni necessarie per creare un cluster Managed Service for Apache Spark, chiedi all'amministratore di concederti i seguenti ruoli IAM:
-
Dataproc Editor (
roles/dataproc.editor) sul progetto -
Utente account di servizio (
roles/iam.serviceAccountUser) sul service account predefinito di Compute Engine
Ruolo dell'account di servizio
Per assicurarti che il account di servizio predefinito di Compute Engine disponga delle autorizzazioni necessarie per creare un cluster Managed Service for Apache Spark, chiedi all'amministratore di concedere il ruolo IAM Dataproc Worker (roles/dataproc.worker) al account di servizio predefinito di Compute Engine sul progetto.
Caratteristiche del disco
I dischi collegati hanno le seguenti caratteristiche:
- Ciclo di vita: la durata di un disco collegato corrisponde alla durata della VM a cui è collegato. Managed Service for Apache Spark crea il disco quando crea la VM ed elimina il disco quando elimina la VM.
- Immutabilità: non puoi aggiornare le proprietà di un disco collegato, come dimensioni, IOPS o throughput, dopo la creazione del cluster.
- Montaggio e utilizzo: Managed Service for Apache Spark monta i dischi in
/mnt/N, doveNè un numero intero positivo (ad esempio,/mnt/1,/mnt/2). I dati HDFS e temporanei, come gli output di shuffle, utilizzano i dischi collegati anziché il disco permanente di avvio.
Configurazione disco
Puoi specificare i seguenti parametri di configurazione del disco quando colleghi i dischi ai nodi del cluster Managed Service for Apache Spark:
Tipo di disco - obbligatorio: il tipo di disco da collegare alle istanze VM. Sono supportati i seguenti hyperdisk:
hyperdisk-balancedhyperdisk-extremehyperdisk-mlhyperdisk-throughput
Il
hyperdisk balanced high availabilitytipo e i dischi permanenti non possono essere collegati ai nodi del cluster.Dimensioni - facoltativo: le dimensioni del disco. Il valore deve essere un numero intero seguito da
GBper gigabyte oTBper terabyte. Ad esempio,10GBcollega un disco da 10 gigabyte. Per saperne di più, consulta Limiti di dimensioni degli hyperdisk.IOPS - facoltativo: indica le IOPS di cui eseguire il provisioning per il disco collegato. Questo parametro imposta il limite per le operazioni di I/O del disco al secondo. Per saperne di più, consulta Livelli di prestazioni predefiniti.
Throughput - facoltativo: indica il throughput di cui eseguire il provisioning per il disco collegato. Questo parametro imposta il limite per il throughput in
MiBal secondo. Per saperne di più, consulta Livelli di prestazioni predefiniti.
Collega dischi a un cluster
Puoi collegare i dischi quando crei un cluster Managed Service for Apache Spark utilizzando gcloud CLI o l'API Dataproc per specificare le configurazioni dei dischi.
Gcloud CLI
Per collegare i dischi quando crei un cluster, utilizza il
--master-attached-disks,--worker-attached-disks, o--secondary-worker-attached-disksflag con ilgcloud dataproc clusters createcomando.Ogni flag accetta un elenco di configurazioni dei dischi separate da punti e virgola. Ogni configurazione del disco è un elenco separato da virgole di coppie chiave-valore per
type,size,iops, ethroughput(vedi Configurazione del disco).
Esempio: il seguente comando crea un cluster e collega due hyperdisk a ogni nodo worker primario.
gcloud dataproc clusters create CLUSTER_NAME \
--region=REGION \
--worker-attached-disks='type=hyperdisk-balanced,size=100GB,iops=5000,throughput=200;type=hyperdisk-throughput,size=9000GB'
API
Per collegare i dischi, includi un
attachedDiskConfigsarray nell'diskConfigoggetto per ilmasterConfig,workerConfig, osecondaryWorkerConfiggruppo di istanze.Fornisci la configurazione nel corpo di una richiesta API
clusters.create.
Esempio: il seguente snippet JSON mostra un array attachedDiskConfigs che collega due hyperdisk:
[
{
"diskType": "HYPERDISK_BALANCED",
"diskSizeGb": 100,
"provisionedIops": 5000,
"provisionedThroughput": 200
},
{
"diskType": "HYPERDISK_THROUGHPUT",
"diskSizeGb": 9000
}
]