如何通过Cloud Composer设置Google Cloud Dataproc的CPUS配额?

时间:2019-05-25 04:41:47

标签: google-cloud-dataproc quota google-cloud-composer

在免费试用帐户中试用Google Cloud Composer Quickstart时,示例工作流DAG的第一个任务运行此运算符:

create_dataproc_cluster = dataproc_operator.DataprocClusterCreateOperator(
        task_id='create_dataproc_cluster',
        cluster_name='quickstart-cluster-{{ ds_nodash }}',
        num_workers=2,
        zone=models.Variable.get('gce_zone'),
        master_machine_type='n1-standard-1',
        worker_machine_type='n1-standard-1')

失败,并显示以下错误消息:

 - Insufficient 'CPUS' quota. Requested 6.0, available 2.0
 - This request exceeds CPU quota. Some things to try: request fewer workers (a minimum of 2 is required), use smaller master and/or worker machine types (such as n1-standard-2).

2已经是最小的工作节点数,而n1-standard-1已经是最小的机器类型。

。是否有办法让DataprocClusterCreateOperator()分配更高的“ CPUS”配额?
Airflow websiteCloud Dataproc Quotas doc即将推出。

。这是免费试用帐户的硬性限制吗?
IAM Quotas console page在4条中的3条上显示当前使用情况为6、75%,表示配额为8。

1 个答案:

答案 0 :(得分:3)

Dataproc工作机实际上是Compute Engine VM,因此CPU配额适用于Compute Engine API。

CPU配额与Airflow / Google Cloud Composer无关,因此无法从那里进行配置。 DataprocClusterCreateOperator只需调用Dataproc API,依次启动Compute Engine上的VM。

对于免费试用帐户,如您所见,CPU配额似乎为8。根据您在注释部分提供的详细信息,您的Composer环境使用了8个CPU(3 * n1-standard-2中的6个。请注意,您可以将较小的计算机用于Composer(1个CPU),但始终至少需要3个节点。因此,最小的Composer环境将使用1 * 3 = 3个CPU。如果需要,您可以在此处保存3个CPU,但是气流稳定性可能会受到影响。

您还可以为您的Dataproc工作程序(或更少的Dataproc工作程序)请求更小的VM(具有更少的CPU)。同样,我不建议这样做,因为对于Dataproc工作者,n1-standard-1(或更少)太小了。

请注意,使用非免费试用帐户,您可以request higher quotas。但是,我认为这是不可能的。