Cuando creas un clúster, HDFS se usa como el sistema de archivos predeterminado. Puedes anular este comportamiento; para ello, configura defaultFS como un bucket de Cloud Storage. De Dataproc también crea una etapa de pruebas de Cloud Storage y El bucket temporal de Cloud Storage en tu proyecto o reutiliza el bucket existente Buckets temporales y de etapa de pruebas creados por Dataproc desde el clúster anterior solicitudes de creación.
Bucket de staging: se usa para almacenar en etapa intermedia las dependencias de trabajos de clústeres, los resultados del controlador de trabajos y los archivos de configuración de clústeres. También recibe resultados del comando gcloud dataproc clusters diagnose de la CLI de gcloud.
Bucket temporal: se usa para almacenar datos de trabajos y clústeres efímeros, como los archivos de historial de Spark y MapReduce.
Si no especificas una etapa de pruebas o un bucket temporal cuando creas un clúster Dataproc establece una ubicación de Cloud Storage en US, ASIA, o EU para la etapa de pruebas y los buckets temporales del clúster según la zona de Compute Engine en la que esté implementado tu clúster y, luego, crea y administra estos buckets a nivel de proyecto por ubicación. La etapa de pruebas y los buckets temporales creados por Dataproc son compartidas entre clústeres de la misma región y se crean con un Retención de eliminación no definitiva de Cloud Storage establecida en 0 segundos.
El bucket temporal contiene datos efímeros y tiene un TTL de 90 días. El bucket de preparación, que puede contener datos de configuración y archivos de dependencia que necesitan varios clústeres, no tiene un TTL. Sin embargo, puedes aplicar una regla de ciclo de vida a tus archivos de dependencia (archivos con una extensión de nombre de archivo ".jar" ubicados en la carpeta del bucket de etapa de pruebas) para programar la eliminación de tus archivos de dependencia cuando ya no estén necesarios para los clústeres.
Crea tus propios buckets temporales y de etapa de pruebas
En lugar de depender de la creación de un bucket temporal y de staging predeterminado, puedes especificar los buckets de Cloud Storage existentes que Dataproc usará como bucket temporal y de etapa de pruebas del clúster.
Comando de gcloud
Ejecuta el comando gcloud dataproc clusters create
con las marcas --bucket
o --temp-bucket
de forma local en una ventana de la terminal o en Cloud Shell para especificar la etapa de pruebas o el bucket temporal de tu clúster.
gcloud dataproc clusters create cluster-name \ --region=region \ --bucket=bucket-name \ --temp-bucket=bucket-name \ other args ...
API de REST
Usa los campos ClusterConfig.configBucket
y ClusterConfig.tempBucket
en una solicitud clusters.create para especificar los depósitos temporales y de etapa de pruebas de tu clúster.
Console
En la consola de Google Cloud, abre la página Create a cluster (Crear un clúster) de Dataproc. Selecciona el panel Personalizar clúster y, luego, usa el campo Almacenamiento de archivos para especificar o seleccionar el bucket de etapa de pruebas del clúster.
Nota: Actualmente, puedes especificar un bucket temporal con la consola de Google Cloud. no es compatible.
Dataproc usa una estructura de carpetas definida para los depósitos de Cloud Storage adjuntos a los clústeres. Dataproc también admite adjuntar más de un clúster a un bucket de Cloud Storage. Se usa la siguiente estructura de carpetas para guardar el resultado del controlador del trabajo en Cloud Storage:
cloud-storage-bucket-name - google-cloud-dataproc-metainfo - list of cluster IDs - list of job IDs - list of output logs for a job
Puedes usar la herramienta de línea de comandos de gcloud
, la API de Dataproc o
La consola de Google Cloud para mostrar el nombre de los buckets temporales y de etapa de pruebas de un clúster
Console
- Consulta los detalles del clúster, incluido el nombre del bucket de etapa de pruebas del clúster, en la página Clústeres de Dataproc en la consola de Google Cloud.
- En la consola de Google Cloud Navegador de Cloud Storage filtrar resultados que contengan "dataproc-temp-".
Comando de gcloud
Ejecuta el comando gcloud dataproc clusters describe
de forma local en una ventana de la terminal o en Cloud Shell.
Los depósitos de estapas de pruebas y temporales asociados con tu clúster se enumeran en el resultado.
gcloud dataproc clusters describe cluster-name \ --region=region \ ... clusterName: cluster-name clusterUuid: daa40b3f-5ff5-4e89-9bf1-bcbfec ... config: configBucket: dataproc-... ... tempBucket: dataproc-temp...
API de REST
Llama a clusters.get para ver una lista de los detalles del clúster, incluido el nombre de los buckets temporales y de etapa de pruebas del clúster.
{ "projectId": "vigilant-sunup-163401", "clusterName": "cluster-name", "config": { "configBucket": "dataproc-...", ... "tempBucket": "dataproc-temp-...", }
defaultFS
Puedes configurar core:fs.defaultFS
en una ubicación de bucket en Cloud Storage (gs://defaultFS-bucket-name
) para configurar Cloud Storage como el sistema de archivos predeterminado. Esto también establece core:fs.gs.reported.permissions
, el permiso informado que muestra el conector de Cloud Storage para todos los archivos, en 777
.
Si Cloud Storage no está configurado como el sistema de archivos predeterminado, se usará HDFS y la propiedad core:fs.gs.reported.permissions
mostrará 700
, el valor predeterminado.
gcloud dataproc clusters create cluster-name \ --properties=core:fs.defaultFS=gs://defaultFS-bucket-name \ --region=region \ --bucket=staging-bucket-name \ --temp-bucket=temp-bucket-name \ other args ...