Issue | dataproc internal_ip_only with false value doesn't work

Hello community,

Im facing an issue with deploying my Dataproc cluster within GCP, im using the last version of google provider 5.17.0 but it looks that internal_ip_only support just True as a value even within the documentation mentioned that the default value is False and also forcing it with False value.

every time i run the apply or plan command i got that my cluster will be recreated
image

terraform versions : 1.0.3 and 1.7.4
google provider : 5.17.0

thanks

1 Like

having the same issue today

[Wild Guess]

Changing the internal_ip_only setting from true to false in the Terraform configuration for a GCP Dataproc cluster will force Terraform to recreate the cluster due to the immutable nature of that setting. This behavior is expected with certain fields in managed services like GCP’s Dataproc and is typically documented in the Terraform provider’s documentation. If recreation is a concern, you’ll need to manually manage the transition to avoid downtime.

yah the recreation behavior is expected but internal_ip_only still have a True value even i configured my terraform with False, so my question is why GCP Dataproc doesn’t support False value for internal_ip_only from terraform.

And many thanks for your replay

1 Like

[Just a guess] used a GCP RAG

The internal_ip_only setting not accepting False via Terraform for GCP Dataproc might be due to limitations in the Terraform Google Provider, GCP project or network policies, or a mismatch in API expectations. Ensure you’re using the latest version of the Terraform provider and check GCP settings and Terraform documentation for any known issues or restrictions.

yah as i said previously i tested the last version of google provider : 5.17.0

BTW i tried to create the cluster with gcloud command with config file, as a result the internal_ip_only with false value works fine

config:
gceClusterConfig:
internalIpOnly: false

2 Likes

Good job! GCP can be a challenging environment I know that for sure

It works with gcloud command line but it still needs to work with terraform!!

when I enable debug I see following in log in regards to internal_ip_only flag which seem to confirm that flag should be False but somehow internal “computing of values” makes it True somewhere?

[WARN] Provider “Terraform Registry” produced an invalid plan for google_dataproc_cluster.my-cluster, but we are tolerating it because it is using the legacy plugin SDK.
** The following problems may be the cause of any confusing errors from downstream operations:**
** - .graceful_decommission_timeout: planned value cty.StringVal(“0s”) for a non-computed attribute**
** - .cluster_config[0].gce_cluster_config[0].internal_ip_only: planned value cty.False for a non-computed attribute**

Hi ,

image

terraform plan -var-file=variables.tfvars

│ Error: Unsupported argument

│ on main.tf line 11, in resource “google_dataproc_cluster” “mycluster”:
│ 11: internal_ip_only = true

│ An argument named “internal_ip_only” is not expected here.

I need only internal_ip =true but not able to set …

Can anyone please help here

Regards,
Sneh Singh