pulumi-gcp 8.41.0a1755723613__py3-none-any.whl → 8.41.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (310) hide show
  1. pulumi_gcp/__init__.py +8 -0
  2. pulumi_gcp/accesscontextmanager/access_policy_iam_binding.py +2 -0
  3. pulumi_gcp/accesscontextmanager/access_policy_iam_member.py +2 -0
  4. pulumi_gcp/accesscontextmanager/access_policy_iam_policy.py +2 -0
  5. pulumi_gcp/apigateway/api_config_iam_binding.py +2 -0
  6. pulumi_gcp/apigateway/api_config_iam_member.py +2 -0
  7. pulumi_gcp/apigateway/api_config_iam_policy.py +2 -0
  8. pulumi_gcp/apigateway/api_iam_binding.py +2 -0
  9. pulumi_gcp/apigateway/api_iam_member.py +2 -0
  10. pulumi_gcp/apigateway/api_iam_policy.py +2 -0
  11. pulumi_gcp/apigateway/gateway_iam_binding.py +2 -0
  12. pulumi_gcp/apigateway/gateway_iam_member.py +2 -0
  13. pulumi_gcp/apigateway/gateway_iam_policy.py +2 -0
  14. pulumi_gcp/apigee/environment_iam_binding.py +2 -0
  15. pulumi_gcp/apigee/environment_iam_member.py +2 -0
  16. pulumi_gcp/apigee/environment_iam_policy.py +2 -0
  17. pulumi_gcp/artifactregistry/__init__.py +2 -0
  18. pulumi_gcp/artifactregistry/get_tag.py +187 -0
  19. pulumi_gcp/artifactregistry/get_tags.py +200 -0
  20. pulumi_gcp/artifactregistry/outputs.py +30 -0
  21. pulumi_gcp/artifactregistry/repository_iam_binding.py +2 -0
  22. pulumi_gcp/artifactregistry/repository_iam_member.py +2 -0
  23. pulumi_gcp/artifactregistry/repository_iam_policy.py +2 -0
  24. pulumi_gcp/beyondcorp/application_iam_binding.py +8 -0
  25. pulumi_gcp/beyondcorp/application_iam_member.py +8 -0
  26. pulumi_gcp/beyondcorp/application_iam_policy.py +8 -0
  27. pulumi_gcp/beyondcorp/get_application_iam_policy.py +4 -0
  28. pulumi_gcp/beyondcorp/security_gateway_application_iam_binding.py +2 -0
  29. pulumi_gcp/beyondcorp/security_gateway_application_iam_member.py +2 -0
  30. pulumi_gcp/beyondcorp/security_gateway_application_iam_policy.py +2 -0
  31. pulumi_gcp/beyondcorp/security_gateway_iam_binding.py +2 -0
  32. pulumi_gcp/beyondcorp/security_gateway_iam_member.py +2 -0
  33. pulumi_gcp/beyondcorp/security_gateway_iam_policy.py +2 -0
  34. pulumi_gcp/bigquery/connection_iam_binding.py +2 -0
  35. pulumi_gcp/bigquery/connection_iam_member.py +2 -0
  36. pulumi_gcp/bigquery/connection_iam_policy.py +2 -0
  37. pulumi_gcp/bigquery/iam_binding.py +2 -0
  38. pulumi_gcp/bigquery/iam_member.py +2 -0
  39. pulumi_gcp/bigquery/iam_policy.py +2 -0
  40. pulumi_gcp/bigquery/reservation.py +535 -0
  41. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_binding.py +2 -0
  42. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_member.py +2 -0
  43. pulumi_gcp/bigqueryanalyticshub/data_exchange_iam_policy.py +2 -0
  44. pulumi_gcp/bigqueryanalyticshub/listing_iam_binding.py +2 -0
  45. pulumi_gcp/bigqueryanalyticshub/listing_iam_member.py +2 -0
  46. pulumi_gcp/bigqueryanalyticshub/listing_iam_policy.py +2 -0
  47. pulumi_gcp/bigquerydatapolicy/data_policy_iam_binding.py +2 -0
  48. pulumi_gcp/bigquerydatapolicy/data_policy_iam_member.py +2 -0
  49. pulumi_gcp/bigquerydatapolicy/data_policy_iam_policy.py +2 -0
  50. pulumi_gcp/binaryauthorization/attestor_iam_binding.py +2 -0
  51. pulumi_gcp/binaryauthorization/attestor_iam_member.py +2 -0
  52. pulumi_gcp/binaryauthorization/attestor_iam_policy.py +2 -0
  53. pulumi_gcp/certificateauthority/ca_pool_iam_binding.py +2 -0
  54. pulumi_gcp/certificateauthority/ca_pool_iam_member.py +2 -0
  55. pulumi_gcp/certificateauthority/ca_pool_iam_policy.py +2 -0
  56. pulumi_gcp/certificateauthority/certificate_template_iam_binding.py +2 -0
  57. pulumi_gcp/certificateauthority/certificate_template_iam_member.py +2 -0
  58. pulumi_gcp/certificateauthority/certificate_template_iam_policy.py +2 -0
  59. pulumi_gcp/cloudbuildv2/connection_iam_binding.py +2 -0
  60. pulumi_gcp/cloudbuildv2/connection_iam_member.py +2 -0
  61. pulumi_gcp/cloudbuildv2/connection_iam_policy.py +2 -0
  62. pulumi_gcp/clouddeploy/_inputs.py +48 -48
  63. pulumi_gcp/clouddeploy/deploy_policy.py +54 -74
  64. pulumi_gcp/clouddeploy/outputs.py +32 -32
  65. pulumi_gcp/cloudfunctions/function_iam_binding.py +2 -0
  66. pulumi_gcp/cloudfunctions/function_iam_member.py +2 -0
  67. pulumi_gcp/cloudfunctions/function_iam_policy.py +2 -0
  68. pulumi_gcp/cloudfunctionsv2/function_iam_binding.py +2 -0
  69. pulumi_gcp/cloudfunctionsv2/function_iam_member.py +2 -0
  70. pulumi_gcp/cloudfunctionsv2/function_iam_policy.py +2 -0
  71. pulumi_gcp/cloudrun/iam_binding.py +2 -0
  72. pulumi_gcp/cloudrun/iam_member.py +2 -0
  73. pulumi_gcp/cloudrun/iam_policy.py +2 -0
  74. pulumi_gcp/cloudrunv2/job_iam_binding.py +2 -0
  75. pulumi_gcp/cloudrunv2/job_iam_member.py +2 -0
  76. pulumi_gcp/cloudrunv2/job_iam_policy.py +2 -0
  77. pulumi_gcp/cloudrunv2/service_iam_binding.py +2 -0
  78. pulumi_gcp/cloudrunv2/service_iam_member.py +2 -0
  79. pulumi_gcp/cloudrunv2/service_iam_policy.py +2 -0
  80. pulumi_gcp/cloudrunv2/worker_pool_iam_binding.py +2 -0
  81. pulumi_gcp/cloudrunv2/worker_pool_iam_member.py +2 -0
  82. pulumi_gcp/cloudrunv2/worker_pool_iam_policy.py +2 -0
  83. pulumi_gcp/cloudtasks/queue_iam_binding.py +2 -0
  84. pulumi_gcp/cloudtasks/queue_iam_member.py +2 -0
  85. pulumi_gcp/cloudtasks/queue_iam_policy.py +2 -0
  86. pulumi_gcp/colab/runtime_template_iam_binding.py +2 -0
  87. pulumi_gcp/colab/runtime_template_iam_member.py +2 -0
  88. pulumi_gcp/colab/runtime_template_iam_policy.py +2 -0
  89. pulumi_gcp/compute/disk_iam_binding.py +2 -0
  90. pulumi_gcp/compute/disk_iam_member.py +2 -0
  91. pulumi_gcp/compute/disk_iam_policy.py +2 -0
  92. pulumi_gcp/compute/image_iam_binding.py +2 -0
  93. pulumi_gcp/compute/image_iam_member.py +2 -0
  94. pulumi_gcp/compute/image_iam_policy.py +2 -0
  95. pulumi_gcp/compute/instance_iam_binding.py +2 -0
  96. pulumi_gcp/compute/instance_iam_member.py +2 -0
  97. pulumi_gcp/compute/instance_iam_policy.py +2 -0
  98. pulumi_gcp/compute/instance_template_iam_binding.py +2 -0
  99. pulumi_gcp/compute/instance_template_iam_member.py +2 -0
  100. pulumi_gcp/compute/instance_template_iam_policy.py +2 -0
  101. pulumi_gcp/compute/instant_snapshot_iam_binding.py +2 -0
  102. pulumi_gcp/compute/instant_snapshot_iam_member.py +2 -0
  103. pulumi_gcp/compute/instant_snapshot_iam_policy.py +2 -0
  104. pulumi_gcp/compute/machine_image_iam_binding.py +2 -0
  105. pulumi_gcp/compute/machine_image_iam_member.py +2 -0
  106. pulumi_gcp/compute/machine_image_iam_policy.py +2 -0
  107. pulumi_gcp/compute/region_disk_iam_binding.py +2 -0
  108. pulumi_gcp/compute/region_disk_iam_member.py +2 -0
  109. pulumi_gcp/compute/region_disk_iam_policy.py +2 -0
  110. pulumi_gcp/compute/snapshot_iam_binding.py +2 -0
  111. pulumi_gcp/compute/snapshot_iam_member.py +2 -0
  112. pulumi_gcp/compute/snapshot_iam_policy.py +2 -0
  113. pulumi_gcp/compute/storage_pool_iam_binding.py +2 -0
  114. pulumi_gcp/compute/storage_pool_iam_member.py +2 -0
  115. pulumi_gcp/compute/storage_pool_iam_policy.py +2 -0
  116. pulumi_gcp/compute/subnetwork_iam_binding.py +2 -0
  117. pulumi_gcp/compute/subnetwork_iam_member.py +2 -0
  118. pulumi_gcp/compute/subnetwork_iam_policy.py +2 -0
  119. pulumi_gcp/config/__init__.pyi +0 -4
  120. pulumi_gcp/config/vars.py +0 -8
  121. pulumi_gcp/container/_inputs.py +1728 -42
  122. pulumi_gcp/container/outputs.py +1935 -16
  123. pulumi_gcp/containeranalysis/note_iam_binding.py +2 -0
  124. pulumi_gcp/containeranalysis/note_iam_member.py +2 -0
  125. pulumi_gcp/containeranalysis/note_iam_policy.py +2 -0
  126. pulumi_gcp/datacatalog/entry_group_iam_binding.py +2 -0
  127. pulumi_gcp/datacatalog/entry_group_iam_member.py +2 -0
  128. pulumi_gcp/datacatalog/entry_group_iam_policy.py +2 -0
  129. pulumi_gcp/datacatalog/policy_tag_iam_binding.py +2 -0
  130. pulumi_gcp/datacatalog/policy_tag_iam_member.py +2 -0
  131. pulumi_gcp/datacatalog/policy_tag_iam_policy.py +2 -0
  132. pulumi_gcp/datacatalog/tag_template_iam_binding.py +2 -0
  133. pulumi_gcp/datacatalog/tag_template_iam_member.py +2 -0
  134. pulumi_gcp/datacatalog/tag_template_iam_policy.py +2 -0
  135. pulumi_gcp/datacatalog/taxonomy_iam_binding.py +2 -0
  136. pulumi_gcp/datacatalog/taxonomy_iam_member.py +2 -0
  137. pulumi_gcp/datacatalog/taxonomy_iam_policy.py +2 -0
  138. pulumi_gcp/datafusion/instance.py +18 -4
  139. pulumi_gcp/dataplex/aspect_type_iam_binding.py +2 -0
  140. pulumi_gcp/dataplex/aspect_type_iam_member.py +2 -0
  141. pulumi_gcp/dataplex/aspect_type_iam_policy.py +2 -0
  142. pulumi_gcp/dataplex/asset_iam_binding.py +2 -0
  143. pulumi_gcp/dataplex/asset_iam_member.py +2 -0
  144. pulumi_gcp/dataplex/asset_iam_policy.py +2 -0
  145. pulumi_gcp/dataplex/datascan_iam_binding.py +2 -0
  146. pulumi_gcp/dataplex/datascan_iam_member.py +2 -0
  147. pulumi_gcp/dataplex/datascan_iam_policy.py +2 -0
  148. pulumi_gcp/dataplex/entry_group_iam_binding.py +2 -0
  149. pulumi_gcp/dataplex/entry_group_iam_member.py +2 -0
  150. pulumi_gcp/dataplex/entry_group_iam_policy.py +2 -0
  151. pulumi_gcp/dataplex/entry_type_iam_binding.py +2 -0
  152. pulumi_gcp/dataplex/entry_type_iam_member.py +2 -0
  153. pulumi_gcp/dataplex/entry_type_iam_policy.py +2 -0
  154. pulumi_gcp/dataplex/glossary_iam_binding.py +2 -0
  155. pulumi_gcp/dataplex/glossary_iam_member.py +2 -0
  156. pulumi_gcp/dataplex/glossary_iam_policy.py +2 -0
  157. pulumi_gcp/dataplex/lake_iam_binding.py +2 -0
  158. pulumi_gcp/dataplex/lake_iam_member.py +2 -0
  159. pulumi_gcp/dataplex/lake_iam_policy.py +2 -0
  160. pulumi_gcp/dataplex/task_iam_binding.py +2 -0
  161. pulumi_gcp/dataplex/task_iam_member.py +2 -0
  162. pulumi_gcp/dataplex/task_iam_policy.py +2 -0
  163. pulumi_gcp/dataplex/zone_iam_binding.py +2 -0
  164. pulumi_gcp/dataplex/zone_iam_member.py +2 -0
  165. pulumi_gcp/dataplex/zone_iam_policy.py +2 -0
  166. pulumi_gcp/dataproc/autoscaling_policy_iam_binding.py +2 -0
  167. pulumi_gcp/dataproc/autoscaling_policy_iam_member.py +2 -0
  168. pulumi_gcp/dataproc/autoscaling_policy_iam_policy.py +2 -0
  169. pulumi_gcp/dataproc/metastore_database_iam_binding.py +2 -0
  170. pulumi_gcp/dataproc/metastore_database_iam_member.py +2 -0
  171. pulumi_gcp/dataproc/metastore_database_iam_policy.py +2 -0
  172. pulumi_gcp/dataproc/metastore_federation_iam_binding.py +2 -0
  173. pulumi_gcp/dataproc/metastore_federation_iam_member.py +2 -0
  174. pulumi_gcp/dataproc/metastore_federation_iam_policy.py +2 -0
  175. pulumi_gcp/dataproc/metastore_service_iam_binding.py +2 -0
  176. pulumi_gcp/dataproc/metastore_service_iam_member.py +2 -0
  177. pulumi_gcp/dataproc/metastore_service_iam_policy.py +2 -0
  178. pulumi_gcp/dataproc/metastore_table_iam_binding.py +2 -0
  179. pulumi_gcp/dataproc/metastore_table_iam_member.py +2 -0
  180. pulumi_gcp/dataproc/metastore_table_iam_policy.py +2 -0
  181. pulumi_gcp/diagflow/__init__.py +1 -0
  182. pulumi_gcp/diagflow/_inputs.py +2661 -0
  183. pulumi_gcp/diagflow/conversation_profile.py +959 -0
  184. pulumi_gcp/diagflow/outputs.py +2213 -0
  185. pulumi_gcp/dns/dns_managed_zone_iam_binding.py +2 -0
  186. pulumi_gcp/dns/dns_managed_zone_iam_member.py +2 -0
  187. pulumi_gcp/dns/dns_managed_zone_iam_policy.py +2 -0
  188. pulumi_gcp/endpoints/service_iam_binding.py +2 -0
  189. pulumi_gcp/endpoints/service_iam_member.py +2 -0
  190. pulumi_gcp/endpoints/service_iam_policy.py +2 -0
  191. pulumi_gcp/gemini/repository_group_iam_binding.py +2 -0
  192. pulumi_gcp/gemini/repository_group_iam_member.py +2 -0
  193. pulumi_gcp/gemini/repository_group_iam_policy.py +2 -0
  194. pulumi_gcp/gkebackup/backup_plan_iam_binding.py +2 -0
  195. pulumi_gcp/gkebackup/backup_plan_iam_member.py +2 -0
  196. pulumi_gcp/gkebackup/backup_plan_iam_policy.py +2 -0
  197. pulumi_gcp/gkebackup/restore_plan_iam_binding.py +2 -0
  198. pulumi_gcp/gkebackup/restore_plan_iam_member.py +2 -0
  199. pulumi_gcp/gkebackup/restore_plan_iam_policy.py +2 -0
  200. pulumi_gcp/gkehub/feature_iam_binding.py +2 -0
  201. pulumi_gcp/gkehub/feature_iam_member.py +2 -0
  202. pulumi_gcp/gkehub/feature_iam_policy.py +2 -0
  203. pulumi_gcp/gkehub/membership_iam_binding.py +2 -0
  204. pulumi_gcp/gkehub/membership_iam_member.py +2 -0
  205. pulumi_gcp/gkehub/membership_iam_policy.py +2 -0
  206. pulumi_gcp/gkehub/scope_iam_binding.py +2 -0
  207. pulumi_gcp/gkehub/scope_iam_member.py +2 -0
  208. pulumi_gcp/gkehub/scope_iam_policy.py +2 -0
  209. pulumi_gcp/healthcare/consent_store_iam_binding.py +2 -0
  210. pulumi_gcp/healthcare/consent_store_iam_member.py +2 -0
  211. pulumi_gcp/healthcare/consent_store_iam_policy.py +2 -0
  212. pulumi_gcp/iam/workforce_pool_iam_binding.py +2 -0
  213. pulumi_gcp/iam/workforce_pool_iam_member.py +2 -0
  214. pulumi_gcp/iam/workforce_pool_iam_policy.py +2 -0
  215. pulumi_gcp/iap/app_engine_service_iam_binding.py +2 -0
  216. pulumi_gcp/iap/app_engine_service_iam_member.py +2 -0
  217. pulumi_gcp/iap/app_engine_service_iam_policy.py +2 -0
  218. pulumi_gcp/iap/app_engine_version_iam_binding.py +2 -0
  219. pulumi_gcp/iap/app_engine_version_iam_member.py +2 -0
  220. pulumi_gcp/iap/app_engine_version_iam_policy.py +2 -0
  221. pulumi_gcp/iap/tunnel_dest_group_iam_binding.py +2 -0
  222. pulumi_gcp/iap/tunnel_dest_group_iam_member.py +2 -0
  223. pulumi_gcp/iap/tunnel_dest_group_iam_policy.py +2 -0
  224. pulumi_gcp/iap/tunnel_iam_binding.py +2 -0
  225. pulumi_gcp/iap/tunnel_iam_member.py +2 -0
  226. pulumi_gcp/iap/tunnel_iam_policy.py +2 -0
  227. pulumi_gcp/iap/tunnel_instance_iam_binding.py +2 -0
  228. pulumi_gcp/iap/tunnel_instance_iam_member.py +2 -0
  229. pulumi_gcp/iap/tunnel_instance_iam_policy.py +2 -0
  230. pulumi_gcp/iap/web_backend_service_iam_binding.py +2 -0
  231. pulumi_gcp/iap/web_backend_service_iam_member.py +2 -0
  232. pulumi_gcp/iap/web_backend_service_iam_policy.py +2 -0
  233. pulumi_gcp/iap/web_cloud_run_service_iam_binding.py +2 -0
  234. pulumi_gcp/iap/web_cloud_run_service_iam_member.py +2 -0
  235. pulumi_gcp/iap/web_cloud_run_service_iam_policy.py +2 -0
  236. pulumi_gcp/iap/web_iam_binding.py +2 -0
  237. pulumi_gcp/iap/web_iam_member.py +2 -0
  238. pulumi_gcp/iap/web_iam_policy.py +2 -0
  239. pulumi_gcp/iap/web_region_backend_service_iam_binding.py +2 -0
  240. pulumi_gcp/iap/web_region_backend_service_iam_member.py +2 -0
  241. pulumi_gcp/iap/web_region_backend_service_iam_policy.py +2 -0
  242. pulumi_gcp/iap/web_type_app_enging_iam_binding.py +2 -0
  243. pulumi_gcp/iap/web_type_app_enging_iam_member.py +2 -0
  244. pulumi_gcp/iap/web_type_app_enging_iam_policy.py +2 -0
  245. pulumi_gcp/iap/web_type_compute_iam_binding.py +2 -0
  246. pulumi_gcp/iap/web_type_compute_iam_member.py +2 -0
  247. pulumi_gcp/iap/web_type_compute_iam_policy.py +2 -0
  248. pulumi_gcp/kms/crypto_key.py +7 -0
  249. pulumi_gcp/kms/ekm_connection_iam_binding.py +2 -0
  250. pulumi_gcp/kms/ekm_connection_iam_member.py +2 -0
  251. pulumi_gcp/kms/ekm_connection_iam_policy.py +2 -0
  252. pulumi_gcp/kms/outputs.py +2 -0
  253. pulumi_gcp/logging/log_view_iam_binding.py +2 -0
  254. pulumi_gcp/logging/log_view_iam_member.py +2 -0
  255. pulumi_gcp/logging/log_view_iam_policy.py +2 -0
  256. pulumi_gcp/networkmanagement/vpc_flow_logs_config.py +213 -168
  257. pulumi_gcp/notebooks/instance.py +18 -18
  258. pulumi_gcp/notebooks/instance_iam_binding.py +2 -0
  259. pulumi_gcp/notebooks/instance_iam_member.py +2 -0
  260. pulumi_gcp/notebooks/instance_iam_policy.py +2 -0
  261. pulumi_gcp/notebooks/runtime_iam_binding.py +2 -0
  262. pulumi_gcp/notebooks/runtime_iam_member.py +2 -0
  263. pulumi_gcp/notebooks/runtime_iam_policy.py +2 -0
  264. pulumi_gcp/organizations/folder.py +56 -0
  265. pulumi_gcp/organizations/get_folder.py +29 -1
  266. pulumi_gcp/projects/api_key.py +88 -1
  267. pulumi_gcp/provider.py +0 -40
  268. pulumi_gcp/pubsub/schema_iam_binding.py +2 -0
  269. pulumi_gcp/pubsub/schema_iam_member.py +2 -0
  270. pulumi_gcp/pubsub/schema_iam_policy.py +2 -0
  271. pulumi_gcp/pubsub/topic_iam_binding.py +2 -0
  272. pulumi_gcp/pubsub/topic_iam_member.py +2 -0
  273. pulumi_gcp/pubsub/topic_iam_policy.py +2 -0
  274. pulumi_gcp/pulumi-plugin.json +1 -1
  275. pulumi_gcp/secretmanager/regional_secret_iam_binding.py +2 -0
  276. pulumi_gcp/secretmanager/regional_secret_iam_member.py +2 -0
  277. pulumi_gcp/secretmanager/regional_secret_iam_policy.py +2 -0
  278. pulumi_gcp/secretmanager/secret_iam_binding.py +2 -0
  279. pulumi_gcp/secretmanager/secret_iam_member.py +2 -0
  280. pulumi_gcp/secretmanager/secret_iam_policy.py +2 -0
  281. pulumi_gcp/securesourcemanager/repository_iam_binding.py +2 -0
  282. pulumi_gcp/securesourcemanager/repository_iam_member.py +2 -0
  283. pulumi_gcp/securesourcemanager/repository_iam_policy.py +2 -0
  284. pulumi_gcp/securitycenter/instance_iam_binding.py +18 -4
  285. pulumi_gcp/securitycenter/instance_iam_member.py +18 -4
  286. pulumi_gcp/securitycenter/instance_iam_policy.py +18 -4
  287. pulumi_gcp/securitycenter/v2_organization_source_iam_binding.py +2 -0
  288. pulumi_gcp/securitycenter/v2_organization_source_iam_member.py +2 -0
  289. pulumi_gcp/securitycenter/v2_organization_source_iam_policy.py +2 -0
  290. pulumi_gcp/servicedirectory/namespace_iam_binding.py +2 -0
  291. pulumi_gcp/servicedirectory/namespace_iam_member.py +2 -0
  292. pulumi_gcp/servicedirectory/namespace_iam_policy.py +2 -0
  293. pulumi_gcp/servicedirectory/service_iam_binding.py +2 -0
  294. pulumi_gcp/servicedirectory/service_iam_member.py +2 -0
  295. pulumi_gcp/servicedirectory/service_iam_policy.py +2 -0
  296. pulumi_gcp/sourcerepo/repository_iam_binding.py +2 -0
  297. pulumi_gcp/sourcerepo/repository_iam_member.py +2 -0
  298. pulumi_gcp/sourcerepo/repository_iam_policy.py +2 -0
  299. pulumi_gcp/tags/tag_key_iam_binding.py +2 -0
  300. pulumi_gcp/tags/tag_key_iam_member.py +2 -0
  301. pulumi_gcp/tags/tag_key_iam_policy.py +2 -0
  302. pulumi_gcp/tags/tag_value_iam_binding.py +2 -0
  303. pulumi_gcp/tags/tag_value_iam_member.py +2 -0
  304. pulumi_gcp/tags/tag_value_iam_policy.py +2 -0
  305. pulumi_gcp/tpu/get_tensorflow_versions.py +10 -0
  306. pulumi_gcp/vertex/ai_index.py +21 -7
  307. {pulumi_gcp-8.41.0a1755723613.dist-info → pulumi_gcp-8.41.1.dist-info}/METADATA +1 -1
  308. {pulumi_gcp-8.41.0a1755723613.dist-info → pulumi_gcp-8.41.1.dist-info}/RECORD +310 -307
  309. {pulumi_gcp-8.41.0a1755723613.dist-info → pulumi_gcp-8.41.1.dist-info}/WHEEL +0 -0
  310. {pulumi_gcp-8.41.0a1755723613.dist-info → pulumi_gcp-8.41.1.dist-info}/top_level.txt +0 -0
@@ -325,6 +325,12 @@ __all__ = [
325
325
  'ClusterNodeConfigHostMaintenancePolicyArgsDict',
326
326
  'ClusterNodeConfigKubeletConfigArgs',
327
327
  'ClusterNodeConfigKubeletConfigArgsDict',
328
+ 'ClusterNodeConfigKubeletConfigEvictionMinimumReclaimArgs',
329
+ 'ClusterNodeConfigKubeletConfigEvictionMinimumReclaimArgsDict',
330
+ 'ClusterNodeConfigKubeletConfigEvictionSoftArgs',
331
+ 'ClusterNodeConfigKubeletConfigEvictionSoftArgsDict',
332
+ 'ClusterNodeConfigKubeletConfigEvictionSoftGracePeriodArgs',
333
+ 'ClusterNodeConfigKubeletConfigEvictionSoftGracePeriodArgsDict',
328
334
  'ClusterNodeConfigLinuxNodeConfigArgs',
329
335
  'ClusterNodeConfigLinuxNodeConfigArgsDict',
330
336
  'ClusterNodeConfigLinuxNodeConfigHugepagesConfigArgs',
@@ -425,6 +431,12 @@ __all__ = [
425
431
  'ClusterNodePoolNodeConfigHostMaintenancePolicyArgsDict',
426
432
  'ClusterNodePoolNodeConfigKubeletConfigArgs',
427
433
  'ClusterNodePoolNodeConfigKubeletConfigArgsDict',
434
+ 'ClusterNodePoolNodeConfigKubeletConfigEvictionMinimumReclaimArgs',
435
+ 'ClusterNodePoolNodeConfigKubeletConfigEvictionMinimumReclaimArgsDict',
436
+ 'ClusterNodePoolNodeConfigKubeletConfigEvictionSoftArgs',
437
+ 'ClusterNodePoolNodeConfigKubeletConfigEvictionSoftArgsDict',
438
+ 'ClusterNodePoolNodeConfigKubeletConfigEvictionSoftGracePeriodArgs',
439
+ 'ClusterNodePoolNodeConfigKubeletConfigEvictionSoftGracePeriodArgsDict',
428
440
  'ClusterNodePoolNodeConfigLinuxNodeConfigArgs',
429
441
  'ClusterNodePoolNodeConfigLinuxNodeConfigArgsDict',
430
442
  'ClusterNodePoolNodeConfigLinuxNodeConfigHugepagesConfigArgs',
@@ -555,6 +567,12 @@ __all__ = [
555
567
  'NodePoolNodeConfigHostMaintenancePolicyArgsDict',
556
568
  'NodePoolNodeConfigKubeletConfigArgs',
557
569
  'NodePoolNodeConfigKubeletConfigArgsDict',
570
+ 'NodePoolNodeConfigKubeletConfigEvictionMinimumReclaimArgs',
571
+ 'NodePoolNodeConfigKubeletConfigEvictionMinimumReclaimArgsDict',
572
+ 'NodePoolNodeConfigKubeletConfigEvictionSoftArgs',
573
+ 'NodePoolNodeConfigKubeletConfigEvictionSoftArgsDict',
574
+ 'NodePoolNodeConfigKubeletConfigEvictionSoftGracePeriodArgs',
575
+ 'NodePoolNodeConfigKubeletConfigEvictionSoftGracePeriodArgsDict',
558
576
  'NodePoolNodeConfigLinuxNodeConfigArgs',
559
577
  'NodePoolNodeConfigLinuxNodeConfigArgsDict',
560
578
  'NodePoolNodeConfigLinuxNodeConfigHugepagesConfigArgs',
@@ -8992,7 +9010,7 @@ if not MYPY:
8992
9010
  """
8993
9011
  sole_tenant_config: NotRequired[pulumi.Input['ClusterNodeConfigSoleTenantConfigArgsDict']]
8994
9012
  """
8995
- Allows specifying multiple [node affinities](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes#node_affinity_and_anti-affinity) useful for running workloads on [sole tenant nodes](https://cloud.google.com/kubernetes-engine/docs/how-to/sole-tenancy). `node_affinity` structure is documented below.
9013
+ Allows specifying multiple [node affinities](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes#node_affinity_and_anti-affinity) useful for running workloads on [sole tenant nodes](https://cloud.google.com/kubernetes-engine/docs/how-to/sole-tenancy). Structure is documented below.
8996
9014
  """
8997
9015
  spot: NotRequired[pulumi.Input[_builtins.bool]]
8998
9016
  """
@@ -9172,7 +9190,7 @@ class ClusterNodeConfigArgs:
9172
9190
  :param pulumi.Input[_builtins.str] service_account: The service account to be used by the Node VMs.
9173
9191
  If not specified, the "default" service account is used.
9174
9192
  :param pulumi.Input['ClusterNodeConfigShieldedInstanceConfigArgs'] shielded_instance_config: Shielded Instance options. Structure is documented below.
9175
- :param pulumi.Input['ClusterNodeConfigSoleTenantConfigArgs'] sole_tenant_config: Allows specifying multiple [node affinities](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes#node_affinity_and_anti-affinity) useful for running workloads on [sole tenant nodes](https://cloud.google.com/kubernetes-engine/docs/how-to/sole-tenancy). `node_affinity` structure is documented below.
9193
+ :param pulumi.Input['ClusterNodeConfigSoleTenantConfigArgs'] sole_tenant_config: Allows specifying multiple [node affinities](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes#node_affinity_and_anti-affinity) useful for running workloads on [sole tenant nodes](https://cloud.google.com/kubernetes-engine/docs/how-to/sole-tenancy). Structure is documented below.
9176
9194
  :param pulumi.Input[_builtins.bool] spot: A boolean that represents whether the underlying node VMs are spot.
9177
9195
  See the [official documentation](https://cloud.google.com/kubernetes-engine/docs/concepts/spot-vms)
9178
9196
  for more information. Defaults to false.
@@ -9807,7 +9825,7 @@ class ClusterNodeConfigArgs:
9807
9825
  @pulumi.getter(name="soleTenantConfig")
9808
9826
  def sole_tenant_config(self) -> Optional[pulumi.Input['ClusterNodeConfigSoleTenantConfigArgs']]:
9809
9827
  """
9810
- Allows specifying multiple [node affinities](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes#node_affinity_and_anti-affinity) useful for running workloads on [sole tenant nodes](https://cloud.google.com/kubernetes-engine/docs/how-to/sole-tenancy). `node_affinity` structure is documented below.
9828
+ Allows specifying multiple [node affinities](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes#node_affinity_and_anti-affinity) useful for running workloads on [sole tenant nodes](https://cloud.google.com/kubernetes-engine/docs/how-to/sole-tenancy). Structure is documented below.
9811
9829
  """
9812
9830
  return pulumi.get(self, "sole_tenant_config")
9813
9831
 
@@ -10820,6 +10838,22 @@ if not MYPY:
10820
10838
  Prior to the 6.4.0 this field was marked as required. The workaround for the required field
10821
10839
  is setting the empty string `""`, which will function identically to not setting this field.
10822
10840
  """
10841
+ eviction_max_pod_grace_period_seconds: NotRequired[pulumi.Input[_builtins.int]]
10842
+ """
10843
+ Defines the maximum allowed grace period (in seconds) to use when terminating pods in response to a soft eviction threshold being met. The integer must be positive and not exceed 300.
10844
+ """
10845
+ eviction_minimum_reclaim: NotRequired[pulumi.Input['ClusterNodeConfigKubeletConfigEvictionMinimumReclaimArgsDict']]
10846
+ """
10847
+ Defines a map of signal names to percentage that defines minimum reclaims. It describes the minimum amount of a given resource the kubelet will reclaim when performing a pod eviction. Structure is documented below.
10848
+ """
10849
+ eviction_soft: NotRequired[pulumi.Input['ClusterNodeConfigKubeletConfigEvictionSoftArgsDict']]
10850
+ """
10851
+ Defines a map of signal names to quantities or percentage that defines soft eviction thresholds. Structure is documented below.
10852
+ """
10853
+ eviction_soft_grace_period: NotRequired[pulumi.Input['ClusterNodeConfigKubeletConfigEvictionSoftGracePeriodArgsDict']]
10854
+ """
10855
+ Defines a map of signal names to durations that defines grace periods for soft eviction thresholds. Each soft eviction threshold must have a corresponding grace period. Structure is documented below.
10856
+ """
10823
10857
  image_gc_high_threshold_percent: NotRequired[pulumi.Input[_builtins.int]]
10824
10858
  """
10825
10859
  Defines the percent of disk usage after which image garbage collection is always run. The integer must be between 10 and 85, inclusive.
@@ -10840,6 +10874,10 @@ if not MYPY:
10840
10874
  """
10841
10875
  Controls whether the kubelet read-only port is enabled. It is strongly recommended to set this to `FALSE`. Possible values: `TRUE`, `FALSE`.
10842
10876
  """
10877
+ max_parallel_image_pulls: NotRequired[pulumi.Input[_builtins.int]]
10878
+ """
10879
+ Set the maximum number of image pulls in parallel. The integer must be between 2 and 5, inclusive.
10880
+ """
10843
10881
  pod_pids_limit: NotRequired[pulumi.Input[_builtins.int]]
10844
10882
  """
10845
10883
  Controls the maximum number of processes allowed to run in a pod. The value must be greater than or equal to 1024 and less than 4194304.
@@ -10860,11 +10898,16 @@ class ClusterNodeConfigKubeletConfigArgs:
10860
10898
  cpu_cfs_quota: Optional[pulumi.Input[_builtins.bool]] = None,
10861
10899
  cpu_cfs_quota_period: Optional[pulumi.Input[_builtins.str]] = None,
10862
10900
  cpu_manager_policy: Optional[pulumi.Input[_builtins.str]] = None,
10901
+ eviction_max_pod_grace_period_seconds: Optional[pulumi.Input[_builtins.int]] = None,
10902
+ eviction_minimum_reclaim: Optional[pulumi.Input['ClusterNodeConfigKubeletConfigEvictionMinimumReclaimArgs']] = None,
10903
+ eviction_soft: Optional[pulumi.Input['ClusterNodeConfigKubeletConfigEvictionSoftArgs']] = None,
10904
+ eviction_soft_grace_period: Optional[pulumi.Input['ClusterNodeConfigKubeletConfigEvictionSoftGracePeriodArgs']] = None,
10863
10905
  image_gc_high_threshold_percent: Optional[pulumi.Input[_builtins.int]] = None,
10864
10906
  image_gc_low_threshold_percent: Optional[pulumi.Input[_builtins.int]] = None,
10865
10907
  image_maximum_gc_age: Optional[pulumi.Input[_builtins.str]] = None,
10866
10908
  image_minimum_gc_age: Optional[pulumi.Input[_builtins.str]] = None,
10867
10909
  insecure_kubelet_readonly_port_enabled: Optional[pulumi.Input[_builtins.str]] = None,
10910
+ max_parallel_image_pulls: Optional[pulumi.Input[_builtins.int]] = None,
10868
10911
  pod_pids_limit: Optional[pulumi.Input[_builtins.int]] = None,
10869
10912
  single_process_oom_kill: Optional[pulumi.Input[_builtins.bool]] = None):
10870
10913
  """
@@ -10886,11 +10929,16 @@ class ClusterNodeConfigKubeletConfigArgs:
10886
10929
  One of `"none"` or `"static"`. If unset (or set to the empty string `""`), the API will treat the field as if set to "none".
10887
10930
  Prior to the 6.4.0 this field was marked as required. The workaround for the required field
10888
10931
  is setting the empty string `""`, which will function identically to not setting this field.
10932
+ :param pulumi.Input[_builtins.int] eviction_max_pod_grace_period_seconds: Defines the maximum allowed grace period (in seconds) to use when terminating pods in response to a soft eviction threshold being met. The integer must be positive and not exceed 300.
10933
+ :param pulumi.Input['ClusterNodeConfigKubeletConfigEvictionMinimumReclaimArgs'] eviction_minimum_reclaim: Defines a map of signal names to percentage that defines minimum reclaims. It describes the minimum amount of a given resource the kubelet will reclaim when performing a pod eviction. Structure is documented below.
10934
+ :param pulumi.Input['ClusterNodeConfigKubeletConfigEvictionSoftArgs'] eviction_soft: Defines a map of signal names to quantities or percentage that defines soft eviction thresholds. Structure is documented below.
10935
+ :param pulumi.Input['ClusterNodeConfigKubeletConfigEvictionSoftGracePeriodArgs'] eviction_soft_grace_period: Defines a map of signal names to durations that defines grace periods for soft eviction thresholds. Each soft eviction threshold must have a corresponding grace period. Structure is documented below.
10889
10936
  :param pulumi.Input[_builtins.int] image_gc_high_threshold_percent: Defines the percent of disk usage after which image garbage collection is always run. The integer must be between 10 and 85, inclusive.
10890
10937
  :param pulumi.Input[_builtins.int] image_gc_low_threshold_percent: Defines the percent of disk usage before which image garbage collection is never run. Lowest disk usage to garbage collect to. The integer must be between 10 and 85, inclusive.
10891
10938
  :param pulumi.Input[_builtins.str] image_maximum_gc_age: Defines the maximum age an image can be unused before it is garbage collected. Specified as a sequence of decimal numbers, each with optional fraction and a unit suffix, such as `"300s"`, `"1.5m"`, and `"2h45m"`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". The value must be a positive duration.
10892
10939
  :param pulumi.Input[_builtins.str] image_minimum_gc_age: Defines the minimum age for an unused image before it is garbage collected. Specified as a sequence of decimal numbers, each with optional fraction and a unit suffix, such as `"300s"`, `"1.5m"`. The value cannot be greater than "2m".
10893
10940
  :param pulumi.Input[_builtins.str] insecure_kubelet_readonly_port_enabled: Controls whether the kubelet read-only port is enabled. It is strongly recommended to set this to `FALSE`. Possible values: `TRUE`, `FALSE`.
10941
+ :param pulumi.Input[_builtins.int] max_parallel_image_pulls: Set the maximum number of image pulls in parallel. The integer must be between 2 and 5, inclusive.
10894
10942
  :param pulumi.Input[_builtins.int] pod_pids_limit: Controls the maximum number of processes allowed to run in a pod. The value must be greater than or equal to 1024 and less than 4194304.
10895
10943
  :param pulumi.Input[_builtins.bool] single_process_oom_kill: Defines whether to enable single process OOM killer. If true, the processes in the container will be OOM killed individually instead of as a group.
10896
10944
  """
@@ -10906,6 +10954,14 @@ class ClusterNodeConfigKubeletConfigArgs:
10906
10954
  pulumi.set(__self__, "cpu_cfs_quota_period", cpu_cfs_quota_period)
10907
10955
  if cpu_manager_policy is not None:
10908
10956
  pulumi.set(__self__, "cpu_manager_policy", cpu_manager_policy)
10957
+ if eviction_max_pod_grace_period_seconds is not None:
10958
+ pulumi.set(__self__, "eviction_max_pod_grace_period_seconds", eviction_max_pod_grace_period_seconds)
10959
+ if eviction_minimum_reclaim is not None:
10960
+ pulumi.set(__self__, "eviction_minimum_reclaim", eviction_minimum_reclaim)
10961
+ if eviction_soft is not None:
10962
+ pulumi.set(__self__, "eviction_soft", eviction_soft)
10963
+ if eviction_soft_grace_period is not None:
10964
+ pulumi.set(__self__, "eviction_soft_grace_period", eviction_soft_grace_period)
10909
10965
  if image_gc_high_threshold_percent is not None:
10910
10966
  pulumi.set(__self__, "image_gc_high_threshold_percent", image_gc_high_threshold_percent)
10911
10967
  if image_gc_low_threshold_percent is not None:
@@ -10916,6 +10972,8 @@ class ClusterNodeConfigKubeletConfigArgs:
10916
10972
  pulumi.set(__self__, "image_minimum_gc_age", image_minimum_gc_age)
10917
10973
  if insecure_kubelet_readonly_port_enabled is not None:
10918
10974
  pulumi.set(__self__, "insecure_kubelet_readonly_port_enabled", insecure_kubelet_readonly_port_enabled)
10975
+ if max_parallel_image_pulls is not None:
10976
+ pulumi.set(__self__, "max_parallel_image_pulls", max_parallel_image_pulls)
10919
10977
  if pod_pids_limit is not None:
10920
10978
  pulumi.set(__self__, "pod_pids_limit", pod_pids_limit)
10921
10979
  if single_process_oom_kill is not None:
@@ -11005,6 +11063,54 @@ class ClusterNodeConfigKubeletConfigArgs:
11005
11063
  def cpu_manager_policy(self, value: Optional[pulumi.Input[_builtins.str]]):
11006
11064
  pulumi.set(self, "cpu_manager_policy", value)
11007
11065
 
11066
+ @_builtins.property
11067
+ @pulumi.getter(name="evictionMaxPodGracePeriodSeconds")
11068
+ def eviction_max_pod_grace_period_seconds(self) -> Optional[pulumi.Input[_builtins.int]]:
11069
+ """
11070
+ Defines the maximum allowed grace period (in seconds) to use when terminating pods in response to a soft eviction threshold being met. The integer must be positive and not exceed 300.
11071
+ """
11072
+ return pulumi.get(self, "eviction_max_pod_grace_period_seconds")
11073
+
11074
+ @eviction_max_pod_grace_period_seconds.setter
11075
+ def eviction_max_pod_grace_period_seconds(self, value: Optional[pulumi.Input[_builtins.int]]):
11076
+ pulumi.set(self, "eviction_max_pod_grace_period_seconds", value)
11077
+
11078
+ @_builtins.property
11079
+ @pulumi.getter(name="evictionMinimumReclaim")
11080
+ def eviction_minimum_reclaim(self) -> Optional[pulumi.Input['ClusterNodeConfigKubeletConfigEvictionMinimumReclaimArgs']]:
11081
+ """
11082
+ Defines a map of signal names to percentage that defines minimum reclaims. It describes the minimum amount of a given resource the kubelet will reclaim when performing a pod eviction. Structure is documented below.
11083
+ """
11084
+ return pulumi.get(self, "eviction_minimum_reclaim")
11085
+
11086
+ @eviction_minimum_reclaim.setter
11087
+ def eviction_minimum_reclaim(self, value: Optional[pulumi.Input['ClusterNodeConfigKubeletConfigEvictionMinimumReclaimArgs']]):
11088
+ pulumi.set(self, "eviction_minimum_reclaim", value)
11089
+
11090
+ @_builtins.property
11091
+ @pulumi.getter(name="evictionSoft")
11092
+ def eviction_soft(self) -> Optional[pulumi.Input['ClusterNodeConfigKubeletConfigEvictionSoftArgs']]:
11093
+ """
11094
+ Defines a map of signal names to quantities or percentage that defines soft eviction thresholds. Structure is documented below.
11095
+ """
11096
+ return pulumi.get(self, "eviction_soft")
11097
+
11098
+ @eviction_soft.setter
11099
+ def eviction_soft(self, value: Optional[pulumi.Input['ClusterNodeConfigKubeletConfigEvictionSoftArgs']]):
11100
+ pulumi.set(self, "eviction_soft", value)
11101
+
11102
+ @_builtins.property
11103
+ @pulumi.getter(name="evictionSoftGracePeriod")
11104
+ def eviction_soft_grace_period(self) -> Optional[pulumi.Input['ClusterNodeConfigKubeletConfigEvictionSoftGracePeriodArgs']]:
11105
+ """
11106
+ Defines a map of signal names to durations that defines grace periods for soft eviction thresholds. Each soft eviction threshold must have a corresponding grace period. Structure is documented below.
11107
+ """
11108
+ return pulumi.get(self, "eviction_soft_grace_period")
11109
+
11110
+ @eviction_soft_grace_period.setter
11111
+ def eviction_soft_grace_period(self, value: Optional[pulumi.Input['ClusterNodeConfigKubeletConfigEvictionSoftGracePeriodArgs']]):
11112
+ pulumi.set(self, "eviction_soft_grace_period", value)
11113
+
11008
11114
  @_builtins.property
11009
11115
  @pulumi.getter(name="imageGcHighThresholdPercent")
11010
11116
  def image_gc_high_threshold_percent(self) -> Optional[pulumi.Input[_builtins.int]]:
@@ -11065,6 +11171,18 @@ class ClusterNodeConfigKubeletConfigArgs:
11065
11171
  def insecure_kubelet_readonly_port_enabled(self, value: Optional[pulumi.Input[_builtins.str]]):
11066
11172
  pulumi.set(self, "insecure_kubelet_readonly_port_enabled", value)
11067
11173
 
11174
+ @_builtins.property
11175
+ @pulumi.getter(name="maxParallelImagePulls")
11176
+ def max_parallel_image_pulls(self) -> Optional[pulumi.Input[_builtins.int]]:
11177
+ """
11178
+ Set the maximum number of image pulls in parallel. The integer must be between 2 and 5, inclusive.
11179
+ """
11180
+ return pulumi.get(self, "max_parallel_image_pulls")
11181
+
11182
+ @max_parallel_image_pulls.setter
11183
+ def max_parallel_image_pulls(self, value: Optional[pulumi.Input[_builtins.int]]):
11184
+ pulumi.set(self, "max_parallel_image_pulls", value)
11185
+
11068
11186
  @_builtins.property
11069
11187
  @pulumi.getter(name="podPidsLimit")
11070
11188
  def pod_pids_limit(self) -> Optional[pulumi.Input[_builtins.int]]:
@@ -11090,6 +11208,402 @@ class ClusterNodeConfigKubeletConfigArgs:
11090
11208
  pulumi.set(self, "single_process_oom_kill", value)
11091
11209
 
11092
11210
 
11211
+ if not MYPY:
11212
+ class ClusterNodeConfigKubeletConfigEvictionMinimumReclaimArgsDict(TypedDict):
11213
+ imagefs_available: NotRequired[pulumi.Input[_builtins.str]]
11214
+ """
11215
+ Defines percentage of minimum reclaim for imagefs.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
11216
+ """
11217
+ imagefs_inodes_free: NotRequired[pulumi.Input[_builtins.str]]
11218
+ """
11219
+ Defines percentage of minimum reclaim for imagefs.inodesFree. The value must be a percentage no more than `"10%"`, such as `"5%"`.
11220
+ """
11221
+ memory_available: NotRequired[pulumi.Input[_builtins.str]]
11222
+ """
11223
+ Defines percentage of minimum reclaim for memory.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
11224
+ """
11225
+ nodefs_available: NotRequired[pulumi.Input[_builtins.str]]
11226
+ """
11227
+ Defines percentage of minimum reclaim for nodefs.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
11228
+ """
11229
+ nodefs_inodes_free: NotRequired[pulumi.Input[_builtins.str]]
11230
+ """
11231
+ Defines percentage of minimum reclaim for nodefs.inodesFree. The value must be a percentage no more than `"10%"`, such as `"5%"`.
11232
+ """
11233
+ pid_available: NotRequired[pulumi.Input[_builtins.str]]
11234
+ """
11235
+ Defines percentage of minimum reclaim for pid.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
11236
+ """
11237
+ elif False:
11238
+ ClusterNodeConfigKubeletConfigEvictionMinimumReclaimArgsDict: TypeAlias = Mapping[str, Any]
11239
+
11240
+ @pulumi.input_type
11241
+ class ClusterNodeConfigKubeletConfigEvictionMinimumReclaimArgs:
11242
+ def __init__(__self__, *,
11243
+ imagefs_available: Optional[pulumi.Input[_builtins.str]] = None,
11244
+ imagefs_inodes_free: Optional[pulumi.Input[_builtins.str]] = None,
11245
+ memory_available: Optional[pulumi.Input[_builtins.str]] = None,
11246
+ nodefs_available: Optional[pulumi.Input[_builtins.str]] = None,
11247
+ nodefs_inodes_free: Optional[pulumi.Input[_builtins.str]] = None,
11248
+ pid_available: Optional[pulumi.Input[_builtins.str]] = None):
11249
+ """
11250
+ :param pulumi.Input[_builtins.str] imagefs_available: Defines percentage of minimum reclaim for imagefs.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
11251
+ :param pulumi.Input[_builtins.str] imagefs_inodes_free: Defines percentage of minimum reclaim for imagefs.inodesFree. The value must be a percentage no more than `"10%"`, such as `"5%"`.
11252
+ :param pulumi.Input[_builtins.str] memory_available: Defines percentage of minimum reclaim for memory.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
11253
+ :param pulumi.Input[_builtins.str] nodefs_available: Defines percentage of minimum reclaim for nodefs.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
11254
+ :param pulumi.Input[_builtins.str] nodefs_inodes_free: Defines percentage of minimum reclaim for nodefs.inodesFree. The value must be a percentage no more than `"10%"`, such as `"5%"`.
11255
+ :param pulumi.Input[_builtins.str] pid_available: Defines percentage of minimum reclaim for pid.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
11256
+ """
11257
+ if imagefs_available is not None:
11258
+ pulumi.set(__self__, "imagefs_available", imagefs_available)
11259
+ if imagefs_inodes_free is not None:
11260
+ pulumi.set(__self__, "imagefs_inodes_free", imagefs_inodes_free)
11261
+ if memory_available is not None:
11262
+ pulumi.set(__self__, "memory_available", memory_available)
11263
+ if nodefs_available is not None:
11264
+ pulumi.set(__self__, "nodefs_available", nodefs_available)
11265
+ if nodefs_inodes_free is not None:
11266
+ pulumi.set(__self__, "nodefs_inodes_free", nodefs_inodes_free)
11267
+ if pid_available is not None:
11268
+ pulumi.set(__self__, "pid_available", pid_available)
11269
+
11270
+ @_builtins.property
11271
+ @pulumi.getter(name="imagefsAvailable")
11272
+ def imagefs_available(self) -> Optional[pulumi.Input[_builtins.str]]:
11273
+ """
11274
+ Defines percentage of minimum reclaim for imagefs.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
11275
+ """
11276
+ return pulumi.get(self, "imagefs_available")
11277
+
11278
+ @imagefs_available.setter
11279
+ def imagefs_available(self, value: Optional[pulumi.Input[_builtins.str]]):
11280
+ pulumi.set(self, "imagefs_available", value)
11281
+
11282
+ @_builtins.property
11283
+ @pulumi.getter(name="imagefsInodesFree")
11284
+ def imagefs_inodes_free(self) -> Optional[pulumi.Input[_builtins.str]]:
11285
+ """
11286
+ Defines percentage of minimum reclaim for imagefs.inodesFree. The value must be a percentage no more than `"10%"`, such as `"5%"`.
11287
+ """
11288
+ return pulumi.get(self, "imagefs_inodes_free")
11289
+
11290
+ @imagefs_inodes_free.setter
11291
+ def imagefs_inodes_free(self, value: Optional[pulumi.Input[_builtins.str]]):
11292
+ pulumi.set(self, "imagefs_inodes_free", value)
11293
+
11294
+ @_builtins.property
11295
+ @pulumi.getter(name="memoryAvailable")
11296
+ def memory_available(self) -> Optional[pulumi.Input[_builtins.str]]:
11297
+ """
11298
+ Defines percentage of minimum reclaim for memory.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
11299
+ """
11300
+ return pulumi.get(self, "memory_available")
11301
+
11302
+ @memory_available.setter
11303
+ def memory_available(self, value: Optional[pulumi.Input[_builtins.str]]):
11304
+ pulumi.set(self, "memory_available", value)
11305
+
11306
+ @_builtins.property
11307
+ @pulumi.getter(name="nodefsAvailable")
11308
+ def nodefs_available(self) -> Optional[pulumi.Input[_builtins.str]]:
11309
+ """
11310
+ Defines percentage of minimum reclaim for nodefs.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
11311
+ """
11312
+ return pulumi.get(self, "nodefs_available")
11313
+
11314
+ @nodefs_available.setter
11315
+ def nodefs_available(self, value: Optional[pulumi.Input[_builtins.str]]):
11316
+ pulumi.set(self, "nodefs_available", value)
11317
+
11318
+ @_builtins.property
11319
+ @pulumi.getter(name="nodefsInodesFree")
11320
+ def nodefs_inodes_free(self) -> Optional[pulumi.Input[_builtins.str]]:
11321
+ """
11322
+ Defines percentage of minimum reclaim for nodefs.inodesFree. The value must be a percentage no more than `"10%"`, such as `"5%"`.
11323
+ """
11324
+ return pulumi.get(self, "nodefs_inodes_free")
11325
+
11326
+ @nodefs_inodes_free.setter
11327
+ def nodefs_inodes_free(self, value: Optional[pulumi.Input[_builtins.str]]):
11328
+ pulumi.set(self, "nodefs_inodes_free", value)
11329
+
11330
+ @_builtins.property
11331
+ @pulumi.getter(name="pidAvailable")
11332
+ def pid_available(self) -> Optional[pulumi.Input[_builtins.str]]:
11333
+ """
11334
+ Defines percentage of minimum reclaim for pid.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
11335
+ """
11336
+ return pulumi.get(self, "pid_available")
11337
+
11338
+ @pid_available.setter
11339
+ def pid_available(self, value: Optional[pulumi.Input[_builtins.str]]):
11340
+ pulumi.set(self, "pid_available", value)
11341
+
11342
+
11343
+ if not MYPY:
11344
+ class ClusterNodeConfigKubeletConfigEvictionSoftArgsDict(TypedDict):
11345
+ imagefs_available: NotRequired[pulumi.Input[_builtins.str]]
11346
+ """
11347
+ Defines percentage of soft eviction threshold for imagefs.available. The value must be a percentage between `15%` and `50%`, such as `"20%"`.
11348
+ """
11349
+ imagefs_inodes_free: NotRequired[pulumi.Input[_builtins.str]]
11350
+ """
11351
+ Defines percentage of soft eviction threshold for imagefs.inodesFree. The value must be a percentage between `5%` and `50%`, such as `"20%"`.
11352
+ """
11353
+ memory_available: NotRequired[pulumi.Input[_builtins.str]]
11354
+ """
11355
+ Defines quantity of soft eviction threshold for memory.available. The value must be a quantity, such as `"100Mi"`. The value must be greater than or equal to the GKE default hard eviction threshold of `"100Mi"` and less than 50% of machine memory.
11356
+ """
11357
+ nodefs_available: NotRequired[pulumi.Input[_builtins.str]]
11358
+ """
11359
+ Defines percentage of soft eviction threshold for nodefs.available. The value must be a percentage between `10%` and `50%`, such as `"20%"`.
11360
+ """
11361
+ nodefs_inodes_free: NotRequired[pulumi.Input[_builtins.str]]
11362
+ """
11363
+ Defines percentage of soft eviction threshold for nodefs.inodesFree. The value must be a percentage between `5%` and `50%`, such as `"20%"`.
11364
+ """
11365
+ pid_available: NotRequired[pulumi.Input[_builtins.str]]
11366
+ """
11367
+ Defines percentage of soft eviction threshold for pid.available. The value must be a percentage between `10%` and `50%`, such as `"20%"`.
11368
+ """
11369
+ elif False:
11370
+ ClusterNodeConfigKubeletConfigEvictionSoftArgsDict: TypeAlias = Mapping[str, Any]
11371
+
11372
+ @pulumi.input_type
11373
+ class ClusterNodeConfigKubeletConfigEvictionSoftArgs:
11374
+ def __init__(__self__, *,
11375
+ imagefs_available: Optional[pulumi.Input[_builtins.str]] = None,
11376
+ imagefs_inodes_free: Optional[pulumi.Input[_builtins.str]] = None,
11377
+ memory_available: Optional[pulumi.Input[_builtins.str]] = None,
11378
+ nodefs_available: Optional[pulumi.Input[_builtins.str]] = None,
11379
+ nodefs_inodes_free: Optional[pulumi.Input[_builtins.str]] = None,
11380
+ pid_available: Optional[pulumi.Input[_builtins.str]] = None):
11381
+ """
11382
+ :param pulumi.Input[_builtins.str] imagefs_available: Defines percentage of soft eviction threshold for imagefs.available. The value must be a percentage between `15%` and `50%`, such as `"20%"`.
11383
+ :param pulumi.Input[_builtins.str] imagefs_inodes_free: Defines percentage of soft eviction threshold for imagefs.inodesFree. The value must be a percentage between `5%` and `50%`, such as `"20%"`.
11384
+ :param pulumi.Input[_builtins.str] memory_available: Defines quantity of soft eviction threshold for memory.available. The value must be a quantity, such as `"100Mi"`. The value must be greater than or equal to the GKE default hard eviction threshold of `"100Mi"` and less than 50% of machine memory.
11385
+ :param pulumi.Input[_builtins.str] nodefs_available: Defines percentage of soft eviction threshold for nodefs.available. The value must be a percentage between `10%` and `50%`, such as `"20%"`.
11386
+ :param pulumi.Input[_builtins.str] nodefs_inodes_free: Defines percentage of soft eviction threshold for nodefs.inodesFree. The value must be a percentage between `5%` and `50%`, such as `"20%"`.
11387
+ :param pulumi.Input[_builtins.str] pid_available: Defines percentage of soft eviction threshold for pid.available. The value must be a percentage between `10%` and `50%`, such as `"20%"`.
11388
+ """
11389
+ if imagefs_available is not None:
11390
+ pulumi.set(__self__, "imagefs_available", imagefs_available)
11391
+ if imagefs_inodes_free is not None:
11392
+ pulumi.set(__self__, "imagefs_inodes_free", imagefs_inodes_free)
11393
+ if memory_available is not None:
11394
+ pulumi.set(__self__, "memory_available", memory_available)
11395
+ if nodefs_available is not None:
11396
+ pulumi.set(__self__, "nodefs_available", nodefs_available)
11397
+ if nodefs_inodes_free is not None:
11398
+ pulumi.set(__self__, "nodefs_inodes_free", nodefs_inodes_free)
11399
+ if pid_available is not None:
11400
+ pulumi.set(__self__, "pid_available", pid_available)
11401
+
11402
+ @_builtins.property
11403
+ @pulumi.getter(name="imagefsAvailable")
11404
+ def imagefs_available(self) -> Optional[pulumi.Input[_builtins.str]]:
11405
+ """
11406
+ Defines percentage of soft eviction threshold for imagefs.available. The value must be a percentage between `15%` and `50%`, such as `"20%"`.
11407
+ """
11408
+ return pulumi.get(self, "imagefs_available")
11409
+
11410
+ @imagefs_available.setter
11411
+ def imagefs_available(self, value: Optional[pulumi.Input[_builtins.str]]):
11412
+ pulumi.set(self, "imagefs_available", value)
11413
+
11414
+ @_builtins.property
11415
+ @pulumi.getter(name="imagefsInodesFree")
11416
+ def imagefs_inodes_free(self) -> Optional[pulumi.Input[_builtins.str]]:
11417
+ """
11418
+ Defines percentage of soft eviction threshold for imagefs.inodesFree. The value must be a percentage between `5%` and `50%`, such as `"20%"`.
11419
+ """
11420
+ return pulumi.get(self, "imagefs_inodes_free")
11421
+
11422
+ @imagefs_inodes_free.setter
11423
+ def imagefs_inodes_free(self, value: Optional[pulumi.Input[_builtins.str]]):
11424
+ pulumi.set(self, "imagefs_inodes_free", value)
11425
+
11426
+ @_builtins.property
11427
+ @pulumi.getter(name="memoryAvailable")
11428
+ def memory_available(self) -> Optional[pulumi.Input[_builtins.str]]:
11429
+ """
11430
+ Defines quantity of soft eviction threshold for memory.available. The value must be a quantity, such as `"100Mi"`. The value must be greater than or equal to the GKE default hard eviction threshold of `"100Mi"` and less than 50% of machine memory.
11431
+ """
11432
+ return pulumi.get(self, "memory_available")
11433
+
11434
+ @memory_available.setter
11435
+ def memory_available(self, value: Optional[pulumi.Input[_builtins.str]]):
11436
+ pulumi.set(self, "memory_available", value)
11437
+
11438
+ @_builtins.property
11439
+ @pulumi.getter(name="nodefsAvailable")
11440
+ def nodefs_available(self) -> Optional[pulumi.Input[_builtins.str]]:
11441
+ """
11442
+ Defines percentage of soft eviction threshold for nodefs.available. The value must be a percentage between `10%` and `50%`, such as `"20%"`.
11443
+ """
11444
+ return pulumi.get(self, "nodefs_available")
11445
+
11446
+ @nodefs_available.setter
11447
+ def nodefs_available(self, value: Optional[pulumi.Input[_builtins.str]]):
11448
+ pulumi.set(self, "nodefs_available", value)
11449
+
11450
+ @_builtins.property
11451
+ @pulumi.getter(name="nodefsInodesFree")
11452
+ def nodefs_inodes_free(self) -> Optional[pulumi.Input[_builtins.str]]:
11453
+ """
11454
+ Defines percentage of soft eviction threshold for nodefs.inodesFree. The value must be a percentage between `5%` and `50%`, such as `"20%"`.
11455
+ """
11456
+ return pulumi.get(self, "nodefs_inodes_free")
11457
+
11458
+ @nodefs_inodes_free.setter
11459
+ def nodefs_inodes_free(self, value: Optional[pulumi.Input[_builtins.str]]):
11460
+ pulumi.set(self, "nodefs_inodes_free", value)
11461
+
11462
+ @_builtins.property
11463
+ @pulumi.getter(name="pidAvailable")
11464
+ def pid_available(self) -> Optional[pulumi.Input[_builtins.str]]:
11465
+ """
11466
+ Defines percentage of soft eviction threshold for pid.available. The value must be a percentage between `10%` and `50%`, such as `"20%"`.
11467
+ """
11468
+ return pulumi.get(self, "pid_available")
11469
+
11470
+ @pid_available.setter
11471
+ def pid_available(self, value: Optional[pulumi.Input[_builtins.str]]):
11472
+ pulumi.set(self, "pid_available", value)
11473
+
11474
+
11475
+ if not MYPY:
11476
+ class ClusterNodeConfigKubeletConfigEvictionSoftGracePeriodArgsDict(TypedDict):
11477
+ imagefs_available: NotRequired[pulumi.Input[_builtins.str]]
11478
+ """
11479
+ Defines grace period for the imagefs.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
11480
+ """
11481
+ imagefs_inodes_free: NotRequired[pulumi.Input[_builtins.str]]
11482
+ """
11483
+ Defines grace period for the imagefs.inodesFree soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
11484
+ """
11485
+ memory_available: NotRequired[pulumi.Input[_builtins.str]]
11486
+ """
11487
+ Defines grace period for the memory.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`, such as `"30s"`, `"1m30s"`, `"2.5m"`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".
11488
+ """
11489
+ nodefs_available: NotRequired[pulumi.Input[_builtins.str]]
11490
+ """
11491
+ Defines grace period for the nodefs.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
11492
+ """
11493
+ nodefs_inodes_free: NotRequired[pulumi.Input[_builtins.str]]
11494
+ """
11495
+ Defines grace period for the nodefs.inodesFree soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
11496
+ """
11497
+ pid_available: NotRequired[pulumi.Input[_builtins.str]]
11498
+ """
11499
+ Defines grace period for the pid.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
11500
+ """
11501
+ elif False:
11502
+ ClusterNodeConfigKubeletConfigEvictionSoftGracePeriodArgsDict: TypeAlias = Mapping[str, Any]
11503
+
11504
+ @pulumi.input_type
11505
+ class ClusterNodeConfigKubeletConfigEvictionSoftGracePeriodArgs:
11506
+ def __init__(__self__, *,
11507
+ imagefs_available: Optional[pulumi.Input[_builtins.str]] = None,
11508
+ imagefs_inodes_free: Optional[pulumi.Input[_builtins.str]] = None,
11509
+ memory_available: Optional[pulumi.Input[_builtins.str]] = None,
11510
+ nodefs_available: Optional[pulumi.Input[_builtins.str]] = None,
11511
+ nodefs_inodes_free: Optional[pulumi.Input[_builtins.str]] = None,
11512
+ pid_available: Optional[pulumi.Input[_builtins.str]] = None):
11513
+ """
11514
+ :param pulumi.Input[_builtins.str] imagefs_available: Defines grace period for the imagefs.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
11515
+ :param pulumi.Input[_builtins.str] imagefs_inodes_free: Defines grace period for the imagefs.inodesFree soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
11516
+ :param pulumi.Input[_builtins.str] memory_available: Defines grace period for the memory.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`, such as `"30s"`, `"1m30s"`, `"2.5m"`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".
11517
+ :param pulumi.Input[_builtins.str] nodefs_available: Defines grace period for the nodefs.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
11518
+ :param pulumi.Input[_builtins.str] nodefs_inodes_free: Defines grace period for the nodefs.inodesFree soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
11519
+ :param pulumi.Input[_builtins.str] pid_available: Defines grace period for the pid.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
11520
+ """
11521
+ if imagefs_available is not None:
11522
+ pulumi.set(__self__, "imagefs_available", imagefs_available)
11523
+ if imagefs_inodes_free is not None:
11524
+ pulumi.set(__self__, "imagefs_inodes_free", imagefs_inodes_free)
11525
+ if memory_available is not None:
11526
+ pulumi.set(__self__, "memory_available", memory_available)
11527
+ if nodefs_available is not None:
11528
+ pulumi.set(__self__, "nodefs_available", nodefs_available)
11529
+ if nodefs_inodes_free is not None:
11530
+ pulumi.set(__self__, "nodefs_inodes_free", nodefs_inodes_free)
11531
+ if pid_available is not None:
11532
+ pulumi.set(__self__, "pid_available", pid_available)
11533
+
11534
+ @_builtins.property
11535
+ @pulumi.getter(name="imagefsAvailable")
11536
+ def imagefs_available(self) -> Optional[pulumi.Input[_builtins.str]]:
11537
+ """
11538
+ Defines grace period for the imagefs.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
11539
+ """
11540
+ return pulumi.get(self, "imagefs_available")
11541
+
11542
+ @imagefs_available.setter
11543
+ def imagefs_available(self, value: Optional[pulumi.Input[_builtins.str]]):
11544
+ pulumi.set(self, "imagefs_available", value)
11545
+
11546
+ @_builtins.property
11547
+ @pulumi.getter(name="imagefsInodesFree")
11548
+ def imagefs_inodes_free(self) -> Optional[pulumi.Input[_builtins.str]]:
11549
+ """
11550
+ Defines grace period for the imagefs.inodesFree soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
11551
+ """
11552
+ return pulumi.get(self, "imagefs_inodes_free")
11553
+
11554
+ @imagefs_inodes_free.setter
11555
+ def imagefs_inodes_free(self, value: Optional[pulumi.Input[_builtins.str]]):
11556
+ pulumi.set(self, "imagefs_inodes_free", value)
11557
+
11558
+ @_builtins.property
11559
+ @pulumi.getter(name="memoryAvailable")
11560
+ def memory_available(self) -> Optional[pulumi.Input[_builtins.str]]:
11561
+ """
11562
+ Defines grace period for the memory.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`, such as `"30s"`, `"1m30s"`, `"2.5m"`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".
11563
+ """
11564
+ return pulumi.get(self, "memory_available")
11565
+
11566
+ @memory_available.setter
11567
+ def memory_available(self, value: Optional[pulumi.Input[_builtins.str]]):
11568
+ pulumi.set(self, "memory_available", value)
11569
+
11570
+ @_builtins.property
11571
+ @pulumi.getter(name="nodefsAvailable")
11572
+ def nodefs_available(self) -> Optional[pulumi.Input[_builtins.str]]:
11573
+ """
11574
+ Defines grace period for the nodefs.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
11575
+ """
11576
+ return pulumi.get(self, "nodefs_available")
11577
+
11578
+ @nodefs_available.setter
11579
+ def nodefs_available(self, value: Optional[pulumi.Input[_builtins.str]]):
11580
+ pulumi.set(self, "nodefs_available", value)
11581
+
11582
+ @_builtins.property
11583
+ @pulumi.getter(name="nodefsInodesFree")
11584
+ def nodefs_inodes_free(self) -> Optional[pulumi.Input[_builtins.str]]:
11585
+ """
11586
+ Defines grace period for the nodefs.inodesFree soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
11587
+ """
11588
+ return pulumi.get(self, "nodefs_inodes_free")
11589
+
11590
+ @nodefs_inodes_free.setter
11591
+ def nodefs_inodes_free(self, value: Optional[pulumi.Input[_builtins.str]]):
11592
+ pulumi.set(self, "nodefs_inodes_free", value)
11593
+
11594
+ @_builtins.property
11595
+ @pulumi.getter(name="pidAvailable")
11596
+ def pid_available(self) -> Optional[pulumi.Input[_builtins.str]]:
11597
+ """
11598
+ Defines grace period for the pid.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
11599
+ """
11600
+ return pulumi.get(self, "pid_available")
11601
+
11602
+ @pid_available.setter
11603
+ def pid_available(self, value: Optional[pulumi.Input[_builtins.str]]):
11604
+ pulumi.set(self, "pid_available", value)
11605
+
11606
+
11093
11607
  if not MYPY:
11094
11608
  class ClusterNodeConfigLinuxNodeConfigArgsDict(TypedDict):
11095
11609
  cgroup_mode: NotRequired[pulumi.Input[_builtins.str]]
@@ -11111,6 +11625,14 @@ if not MYPY:
11111
11625
  `net.core.wmem_max`, to a string value. Currently supported attributes can be found [here](https://cloud.google.com/sdk/gcloud/reference/beta/container/node-pools/create#--system-config-from-file).
11112
11626
  Note that validations happen all server side. All attributes are optional.
11113
11627
  """
11628
+ transparent_hugepage_defrag: NotRequired[pulumi.Input[_builtins.str]]
11629
+ """
11630
+ The Linux kernel transparent hugepage defrag setting.
11631
+ """
11632
+ transparent_hugepage_enabled: NotRequired[pulumi.Input[_builtins.str]]
11633
+ """
11634
+ The Linux kernel transparent hugepage setting.
11635
+ """
11114
11636
  elif False:
11115
11637
  ClusterNodeConfigLinuxNodeConfigArgsDict: TypeAlias = Mapping[str, Any]
11116
11638
 
@@ -11119,7 +11641,9 @@ class ClusterNodeConfigLinuxNodeConfigArgs:
11119
11641
  def __init__(__self__, *,
11120
11642
  cgroup_mode: Optional[pulumi.Input[_builtins.str]] = None,
11121
11643
  hugepages_config: Optional[pulumi.Input['ClusterNodeConfigLinuxNodeConfigHugepagesConfigArgs']] = None,
11122
- sysctls: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None):
11644
+ sysctls: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
11645
+ transparent_hugepage_defrag: Optional[pulumi.Input[_builtins.str]] = None,
11646
+ transparent_hugepage_enabled: Optional[pulumi.Input[_builtins.str]] = None):
11123
11647
  """
11124
11648
  :param pulumi.Input[_builtins.str] cgroup_mode: Possible cgroup modes that can be used.
11125
11649
  Accepted values are:
@@ -11131,6 +11655,8 @@ class ClusterNodeConfigLinuxNodeConfigArgs:
11131
11655
  and all pods running on the nodes. Specified as a map from the key, such as
11132
11656
  `net.core.wmem_max`, to a string value. Currently supported attributes can be found [here](https://cloud.google.com/sdk/gcloud/reference/beta/container/node-pools/create#--system-config-from-file).
11133
11657
  Note that validations happen all server side. All attributes are optional.
11658
+ :param pulumi.Input[_builtins.str] transparent_hugepage_defrag: The Linux kernel transparent hugepage defrag setting.
11659
+ :param pulumi.Input[_builtins.str] transparent_hugepage_enabled: The Linux kernel transparent hugepage setting.
11134
11660
  """
11135
11661
  if cgroup_mode is not None:
11136
11662
  pulumi.set(__self__, "cgroup_mode", cgroup_mode)
@@ -11138,6 +11664,10 @@ class ClusterNodeConfigLinuxNodeConfigArgs:
11138
11664
  pulumi.set(__self__, "hugepages_config", hugepages_config)
11139
11665
  if sysctls is not None:
11140
11666
  pulumi.set(__self__, "sysctls", sysctls)
11667
+ if transparent_hugepage_defrag is not None:
11668
+ pulumi.set(__self__, "transparent_hugepage_defrag", transparent_hugepage_defrag)
11669
+ if transparent_hugepage_enabled is not None:
11670
+ pulumi.set(__self__, "transparent_hugepage_enabled", transparent_hugepage_enabled)
11141
11671
 
11142
11672
  @_builtins.property
11143
11673
  @pulumi.getter(name="cgroupMode")
@@ -11182,6 +11712,30 @@ class ClusterNodeConfigLinuxNodeConfigArgs:
11182
11712
  def sysctls(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
11183
11713
  pulumi.set(self, "sysctls", value)
11184
11714
 
11715
+ @_builtins.property
11716
+ @pulumi.getter(name="transparentHugepageDefrag")
11717
+ def transparent_hugepage_defrag(self) -> Optional[pulumi.Input[_builtins.str]]:
11718
+ """
11719
+ The Linux kernel transparent hugepage defrag setting.
11720
+ """
11721
+ return pulumi.get(self, "transparent_hugepage_defrag")
11722
+
11723
+ @transparent_hugepage_defrag.setter
11724
+ def transparent_hugepage_defrag(self, value: Optional[pulumi.Input[_builtins.str]]):
11725
+ pulumi.set(self, "transparent_hugepage_defrag", value)
11726
+
11727
+ @_builtins.property
11728
+ @pulumi.getter(name="transparentHugepageEnabled")
11729
+ def transparent_hugepage_enabled(self) -> Optional[pulumi.Input[_builtins.str]]:
11730
+ """
11731
+ The Linux kernel transparent hugepage setting.
11732
+ """
11733
+ return pulumi.get(self, "transparent_hugepage_enabled")
11734
+
11735
+ @transparent_hugepage_enabled.setter
11736
+ def transparent_hugepage_enabled(self, value: Optional[pulumi.Input[_builtins.str]]):
11737
+ pulumi.set(self, "transparent_hugepage_enabled", value)
11738
+
11185
11739
 
11186
11740
  if not MYPY:
11187
11741
  class ClusterNodeConfigLinuxNodeConfigHugepagesConfigArgsDict(TypedDict):
@@ -11517,7 +12071,11 @@ if not MYPY:
11517
12071
  class ClusterNodeConfigSoleTenantConfigArgsDict(TypedDict):
11518
12072
  node_affinities: pulumi.Input[Sequence[pulumi.Input['ClusterNodeConfigSoleTenantConfigNodeAffinityArgsDict']]]
11519
12073
  """
11520
- .
12074
+ The node affinity settings for the sole tenant node pool. Structure is documented below.
12075
+ """
12076
+ min_node_cpus: NotRequired[pulumi.Input[_builtins.int]]
12077
+ """
12078
+ Specifies the minimum number of vCPUs that each sole tenant node must have to use CPU overcommit. If not specified, the CPU overcommit feeature is disabled. The value should be greater than or equal to half of the machine type's CPU count.
11521
12079
  """
11522
12080
  elif False:
11523
12081
  ClusterNodeConfigSoleTenantConfigArgsDict: TypeAlias = Mapping[str, Any]
@@ -11525,17 +12083,21 @@ elif False:
11525
12083
  @pulumi.input_type
11526
12084
  class ClusterNodeConfigSoleTenantConfigArgs:
11527
12085
  def __init__(__self__, *,
11528
- node_affinities: pulumi.Input[Sequence[pulumi.Input['ClusterNodeConfigSoleTenantConfigNodeAffinityArgs']]]):
12086
+ node_affinities: pulumi.Input[Sequence[pulumi.Input['ClusterNodeConfigSoleTenantConfigNodeAffinityArgs']]],
12087
+ min_node_cpus: Optional[pulumi.Input[_builtins.int]] = None):
11529
12088
  """
11530
- :param pulumi.Input[Sequence[pulumi.Input['ClusterNodeConfigSoleTenantConfigNodeAffinityArgs']]] node_affinities: .
12089
+ :param pulumi.Input[Sequence[pulumi.Input['ClusterNodeConfigSoleTenantConfigNodeAffinityArgs']]] node_affinities: The node affinity settings for the sole tenant node pool. Structure is documented below.
12090
+ :param pulumi.Input[_builtins.int] min_node_cpus: Specifies the minimum number of vCPUs that each sole tenant node must have to use CPU overcommit. If not specified, the CPU overcommit feeature is disabled. The value should be greater than or equal to half of the machine type's CPU count.
11531
12091
  """
11532
12092
  pulumi.set(__self__, "node_affinities", node_affinities)
12093
+ if min_node_cpus is not None:
12094
+ pulumi.set(__self__, "min_node_cpus", min_node_cpus)
11533
12095
 
11534
12096
  @_builtins.property
11535
12097
  @pulumi.getter(name="nodeAffinities")
11536
12098
  def node_affinities(self) -> pulumi.Input[Sequence[pulumi.Input['ClusterNodeConfigSoleTenantConfigNodeAffinityArgs']]]:
11537
12099
  """
11538
- .
12100
+ The node affinity settings for the sole tenant node pool. Structure is documented below.
11539
12101
  """
11540
12102
  return pulumi.get(self, "node_affinities")
11541
12103
 
@@ -11543,6 +12105,18 @@ class ClusterNodeConfigSoleTenantConfigArgs:
11543
12105
  def node_affinities(self, value: pulumi.Input[Sequence[pulumi.Input['ClusterNodeConfigSoleTenantConfigNodeAffinityArgs']]]):
11544
12106
  pulumi.set(self, "node_affinities", value)
11545
12107
 
12108
+ @_builtins.property
12109
+ @pulumi.getter(name="minNodeCpus")
12110
+ def min_node_cpus(self) -> Optional[pulumi.Input[_builtins.int]]:
12111
+ """
12112
+ Specifies the minimum number of vCPUs that each sole tenant node must have to use CPU overcommit. If not specified, the CPU overcommit feeature is disabled. The value should be greater than or equal to half of the machine type's CPU count.
12113
+ """
12114
+ return pulumi.get(self, "min_node_cpus")
12115
+
12116
+ @min_node_cpus.setter
12117
+ def min_node_cpus(self, value: Optional[pulumi.Input[_builtins.int]]):
12118
+ pulumi.set(self, "min_node_cpus", value)
12119
+
11546
12120
 
11547
12121
  if not MYPY:
11548
12122
  class ClusterNodeConfigSoleTenantConfigNodeAffinityArgsDict(TypedDict):
@@ -13453,7 +14027,7 @@ if not MYPY:
13453
14027
  """
13454
14028
  sole_tenant_config: NotRequired[pulumi.Input['ClusterNodePoolNodeConfigSoleTenantConfigArgsDict']]
13455
14029
  """
13456
- Allows specifying multiple [node affinities](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes#node_affinity_and_anti-affinity) useful for running workloads on [sole tenant nodes](https://cloud.google.com/kubernetes-engine/docs/how-to/sole-tenancy). `node_affinity` structure is documented below.
14030
+ Allows specifying multiple [node affinities](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes#node_affinity_and_anti-affinity) useful for running workloads on [sole tenant nodes](https://cloud.google.com/kubernetes-engine/docs/how-to/sole-tenancy). Structure is documented below.
13457
14031
  """
13458
14032
  spot: NotRequired[pulumi.Input[_builtins.bool]]
13459
14033
  """
@@ -13633,7 +14207,7 @@ class ClusterNodePoolNodeConfigArgs:
13633
14207
  :param pulumi.Input[_builtins.str] service_account: The service account to be used by the Node VMs.
13634
14208
  If not specified, the "default" service account is used.
13635
14209
  :param pulumi.Input['ClusterNodePoolNodeConfigShieldedInstanceConfigArgs'] shielded_instance_config: Shielded Instance options. Structure is documented below.
13636
- :param pulumi.Input['ClusterNodePoolNodeConfigSoleTenantConfigArgs'] sole_tenant_config: Allows specifying multiple [node affinities](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes#node_affinity_and_anti-affinity) useful for running workloads on [sole tenant nodes](https://cloud.google.com/kubernetes-engine/docs/how-to/sole-tenancy). `node_affinity` structure is documented below.
14210
+ :param pulumi.Input['ClusterNodePoolNodeConfigSoleTenantConfigArgs'] sole_tenant_config: Allows specifying multiple [node affinities](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes#node_affinity_and_anti-affinity) useful for running workloads on [sole tenant nodes](https://cloud.google.com/kubernetes-engine/docs/how-to/sole-tenancy). Structure is documented below.
13637
14211
  :param pulumi.Input[_builtins.bool] spot: A boolean that represents whether the underlying node VMs are spot.
13638
14212
  See the [official documentation](https://cloud.google.com/kubernetes-engine/docs/concepts/spot-vms)
13639
14213
  for more information. Defaults to false.
@@ -14268,7 +14842,7 @@ class ClusterNodePoolNodeConfigArgs:
14268
14842
  @pulumi.getter(name="soleTenantConfig")
14269
14843
  def sole_tenant_config(self) -> Optional[pulumi.Input['ClusterNodePoolNodeConfigSoleTenantConfigArgs']]:
14270
14844
  """
14271
- Allows specifying multiple [node affinities](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes#node_affinity_and_anti-affinity) useful for running workloads on [sole tenant nodes](https://cloud.google.com/kubernetes-engine/docs/how-to/sole-tenancy). `node_affinity` structure is documented below.
14845
+ Allows specifying multiple [node affinities](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes#node_affinity_and_anti-affinity) useful for running workloads on [sole tenant nodes](https://cloud.google.com/kubernetes-engine/docs/how-to/sole-tenancy). Structure is documented below.
14272
14846
  """
14273
14847
  return pulumi.get(self, "sole_tenant_config")
14274
14848
 
@@ -15281,6 +15855,22 @@ if not MYPY:
15281
15855
  Prior to the 6.4.0 this field was marked as required. The workaround for the required field
15282
15856
  is setting the empty string `""`, which will function identically to not setting this field.
15283
15857
  """
15858
+ eviction_max_pod_grace_period_seconds: NotRequired[pulumi.Input[_builtins.int]]
15859
+ """
15860
+ Defines the maximum allowed grace period (in seconds) to use when terminating pods in response to a soft eviction threshold being met. The integer must be positive and not exceed 300.
15861
+ """
15862
+ eviction_minimum_reclaim: NotRequired[pulumi.Input['ClusterNodePoolNodeConfigKubeletConfigEvictionMinimumReclaimArgsDict']]
15863
+ """
15864
+ Defines a map of signal names to percentage that defines minimum reclaims. It describes the minimum amount of a given resource the kubelet will reclaim when performing a pod eviction. Structure is documented below.
15865
+ """
15866
+ eviction_soft: NotRequired[pulumi.Input['ClusterNodePoolNodeConfigKubeletConfigEvictionSoftArgsDict']]
15867
+ """
15868
+ Defines a map of signal names to quantities or percentage that defines soft eviction thresholds. Structure is documented below.
15869
+ """
15870
+ eviction_soft_grace_period: NotRequired[pulumi.Input['ClusterNodePoolNodeConfigKubeletConfigEvictionSoftGracePeriodArgsDict']]
15871
+ """
15872
+ Defines a map of signal names to durations that defines grace periods for soft eviction thresholds. Each soft eviction threshold must have a corresponding grace period. Structure is documented below.
15873
+ """
15284
15874
  image_gc_high_threshold_percent: NotRequired[pulumi.Input[_builtins.int]]
15285
15875
  """
15286
15876
  Defines the percent of disk usage after which image garbage collection is always run. The integer must be between 10 and 85, inclusive.
@@ -15301,6 +15891,10 @@ if not MYPY:
15301
15891
  """
15302
15892
  Controls whether the kubelet read-only port is enabled. It is strongly recommended to set this to `FALSE`. Possible values: `TRUE`, `FALSE`.
15303
15893
  """
15894
+ max_parallel_image_pulls: NotRequired[pulumi.Input[_builtins.int]]
15895
+ """
15896
+ Set the maximum number of image pulls in parallel. The integer must be between 2 and 5, inclusive.
15897
+ """
15304
15898
  pod_pids_limit: NotRequired[pulumi.Input[_builtins.int]]
15305
15899
  """
15306
15900
  Controls the maximum number of processes allowed to run in a pod. The value must be greater than or equal to 1024 and less than 4194304.
@@ -15321,11 +15915,16 @@ class ClusterNodePoolNodeConfigKubeletConfigArgs:
15321
15915
  cpu_cfs_quota: Optional[pulumi.Input[_builtins.bool]] = None,
15322
15916
  cpu_cfs_quota_period: Optional[pulumi.Input[_builtins.str]] = None,
15323
15917
  cpu_manager_policy: Optional[pulumi.Input[_builtins.str]] = None,
15918
+ eviction_max_pod_grace_period_seconds: Optional[pulumi.Input[_builtins.int]] = None,
15919
+ eviction_minimum_reclaim: Optional[pulumi.Input['ClusterNodePoolNodeConfigKubeletConfigEvictionMinimumReclaimArgs']] = None,
15920
+ eviction_soft: Optional[pulumi.Input['ClusterNodePoolNodeConfigKubeletConfigEvictionSoftArgs']] = None,
15921
+ eviction_soft_grace_period: Optional[pulumi.Input['ClusterNodePoolNodeConfigKubeletConfigEvictionSoftGracePeriodArgs']] = None,
15324
15922
  image_gc_high_threshold_percent: Optional[pulumi.Input[_builtins.int]] = None,
15325
15923
  image_gc_low_threshold_percent: Optional[pulumi.Input[_builtins.int]] = None,
15326
15924
  image_maximum_gc_age: Optional[pulumi.Input[_builtins.str]] = None,
15327
15925
  image_minimum_gc_age: Optional[pulumi.Input[_builtins.str]] = None,
15328
15926
  insecure_kubelet_readonly_port_enabled: Optional[pulumi.Input[_builtins.str]] = None,
15927
+ max_parallel_image_pulls: Optional[pulumi.Input[_builtins.int]] = None,
15329
15928
  pod_pids_limit: Optional[pulumi.Input[_builtins.int]] = None,
15330
15929
  single_process_oom_kill: Optional[pulumi.Input[_builtins.bool]] = None):
15331
15930
  """
@@ -15347,11 +15946,16 @@ class ClusterNodePoolNodeConfigKubeletConfigArgs:
15347
15946
  One of `"none"` or `"static"`. If unset (or set to the empty string `""`), the API will treat the field as if set to "none".
15348
15947
  Prior to the 6.4.0 this field was marked as required. The workaround for the required field
15349
15948
  is setting the empty string `""`, which will function identically to not setting this field.
15949
+ :param pulumi.Input[_builtins.int] eviction_max_pod_grace_period_seconds: Defines the maximum allowed grace period (in seconds) to use when terminating pods in response to a soft eviction threshold being met. The integer must be positive and not exceed 300.
15950
+ :param pulumi.Input['ClusterNodePoolNodeConfigKubeletConfigEvictionMinimumReclaimArgs'] eviction_minimum_reclaim: Defines a map of signal names to percentage that defines minimum reclaims. It describes the minimum amount of a given resource the kubelet will reclaim when performing a pod eviction. Structure is documented below.
15951
+ :param pulumi.Input['ClusterNodePoolNodeConfigKubeletConfigEvictionSoftArgs'] eviction_soft: Defines a map of signal names to quantities or percentage that defines soft eviction thresholds. Structure is documented below.
15952
+ :param pulumi.Input['ClusterNodePoolNodeConfigKubeletConfigEvictionSoftGracePeriodArgs'] eviction_soft_grace_period: Defines a map of signal names to durations that defines grace periods for soft eviction thresholds. Each soft eviction threshold must have a corresponding grace period. Structure is documented below.
15350
15953
  :param pulumi.Input[_builtins.int] image_gc_high_threshold_percent: Defines the percent of disk usage after which image garbage collection is always run. The integer must be between 10 and 85, inclusive.
15351
15954
  :param pulumi.Input[_builtins.int] image_gc_low_threshold_percent: Defines the percent of disk usage before which image garbage collection is never run. Lowest disk usage to garbage collect to. The integer must be between 10 and 85, inclusive.
15352
15955
  :param pulumi.Input[_builtins.str] image_maximum_gc_age: Defines the maximum age an image can be unused before it is garbage collected. Specified as a sequence of decimal numbers, each with optional fraction and a unit suffix, such as `"300s"`, `"1.5m"`, and `"2h45m"`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". The value must be a positive duration.
15353
15956
  :param pulumi.Input[_builtins.str] image_minimum_gc_age: Defines the minimum age for an unused image before it is garbage collected. Specified as a sequence of decimal numbers, each with optional fraction and a unit suffix, such as `"300s"`, `"1.5m"`. The value cannot be greater than "2m".
15354
15957
  :param pulumi.Input[_builtins.str] insecure_kubelet_readonly_port_enabled: Controls whether the kubelet read-only port is enabled. It is strongly recommended to set this to `FALSE`. Possible values: `TRUE`, `FALSE`.
15958
+ :param pulumi.Input[_builtins.int] max_parallel_image_pulls: Set the maximum number of image pulls in parallel. The integer must be between 2 and 5, inclusive.
15355
15959
  :param pulumi.Input[_builtins.int] pod_pids_limit: Controls the maximum number of processes allowed to run in a pod. The value must be greater than or equal to 1024 and less than 4194304.
15356
15960
  :param pulumi.Input[_builtins.bool] single_process_oom_kill: Defines whether to enable single process OOM killer. If true, the processes in the container will be OOM killed individually instead of as a group.
15357
15961
  """
@@ -15367,6 +15971,14 @@ class ClusterNodePoolNodeConfigKubeletConfigArgs:
15367
15971
  pulumi.set(__self__, "cpu_cfs_quota_period", cpu_cfs_quota_period)
15368
15972
  if cpu_manager_policy is not None:
15369
15973
  pulumi.set(__self__, "cpu_manager_policy", cpu_manager_policy)
15974
+ if eviction_max_pod_grace_period_seconds is not None:
15975
+ pulumi.set(__self__, "eviction_max_pod_grace_period_seconds", eviction_max_pod_grace_period_seconds)
15976
+ if eviction_minimum_reclaim is not None:
15977
+ pulumi.set(__self__, "eviction_minimum_reclaim", eviction_minimum_reclaim)
15978
+ if eviction_soft is not None:
15979
+ pulumi.set(__self__, "eviction_soft", eviction_soft)
15980
+ if eviction_soft_grace_period is not None:
15981
+ pulumi.set(__self__, "eviction_soft_grace_period", eviction_soft_grace_period)
15370
15982
  if image_gc_high_threshold_percent is not None:
15371
15983
  pulumi.set(__self__, "image_gc_high_threshold_percent", image_gc_high_threshold_percent)
15372
15984
  if image_gc_low_threshold_percent is not None:
@@ -15377,6 +15989,8 @@ class ClusterNodePoolNodeConfigKubeletConfigArgs:
15377
15989
  pulumi.set(__self__, "image_minimum_gc_age", image_minimum_gc_age)
15378
15990
  if insecure_kubelet_readonly_port_enabled is not None:
15379
15991
  pulumi.set(__self__, "insecure_kubelet_readonly_port_enabled", insecure_kubelet_readonly_port_enabled)
15992
+ if max_parallel_image_pulls is not None:
15993
+ pulumi.set(__self__, "max_parallel_image_pulls", max_parallel_image_pulls)
15380
15994
  if pod_pids_limit is not None:
15381
15995
  pulumi.set(__self__, "pod_pids_limit", pod_pids_limit)
15382
15996
  if single_process_oom_kill is not None:
@@ -15466,6 +16080,54 @@ class ClusterNodePoolNodeConfigKubeletConfigArgs:
15466
16080
  def cpu_manager_policy(self, value: Optional[pulumi.Input[_builtins.str]]):
15467
16081
  pulumi.set(self, "cpu_manager_policy", value)
15468
16082
 
16083
+ @_builtins.property
16084
+ @pulumi.getter(name="evictionMaxPodGracePeriodSeconds")
16085
+ def eviction_max_pod_grace_period_seconds(self) -> Optional[pulumi.Input[_builtins.int]]:
16086
+ """
16087
+ Defines the maximum allowed grace period (in seconds) to use when terminating pods in response to a soft eviction threshold being met. The integer must be positive and not exceed 300.
16088
+ """
16089
+ return pulumi.get(self, "eviction_max_pod_grace_period_seconds")
16090
+
16091
+ @eviction_max_pod_grace_period_seconds.setter
16092
+ def eviction_max_pod_grace_period_seconds(self, value: Optional[pulumi.Input[_builtins.int]]):
16093
+ pulumi.set(self, "eviction_max_pod_grace_period_seconds", value)
16094
+
16095
+ @_builtins.property
16096
+ @pulumi.getter(name="evictionMinimumReclaim")
16097
+ def eviction_minimum_reclaim(self) -> Optional[pulumi.Input['ClusterNodePoolNodeConfigKubeletConfigEvictionMinimumReclaimArgs']]:
16098
+ """
16099
+ Defines a map of signal names to percentage that defines minimum reclaims. It describes the minimum amount of a given resource the kubelet will reclaim when performing a pod eviction. Structure is documented below.
16100
+ """
16101
+ return pulumi.get(self, "eviction_minimum_reclaim")
16102
+
16103
+ @eviction_minimum_reclaim.setter
16104
+ def eviction_minimum_reclaim(self, value: Optional[pulumi.Input['ClusterNodePoolNodeConfigKubeletConfigEvictionMinimumReclaimArgs']]):
16105
+ pulumi.set(self, "eviction_minimum_reclaim", value)
16106
+
16107
+ @_builtins.property
16108
+ @pulumi.getter(name="evictionSoft")
16109
+ def eviction_soft(self) -> Optional[pulumi.Input['ClusterNodePoolNodeConfigKubeletConfigEvictionSoftArgs']]:
16110
+ """
16111
+ Defines a map of signal names to quantities or percentage that defines soft eviction thresholds. Structure is documented below.
16112
+ """
16113
+ return pulumi.get(self, "eviction_soft")
16114
+
16115
+ @eviction_soft.setter
16116
+ def eviction_soft(self, value: Optional[pulumi.Input['ClusterNodePoolNodeConfigKubeletConfigEvictionSoftArgs']]):
16117
+ pulumi.set(self, "eviction_soft", value)
16118
+
16119
+ @_builtins.property
16120
+ @pulumi.getter(name="evictionSoftGracePeriod")
16121
+ def eviction_soft_grace_period(self) -> Optional[pulumi.Input['ClusterNodePoolNodeConfigKubeletConfigEvictionSoftGracePeriodArgs']]:
16122
+ """
16123
+ Defines a map of signal names to durations that defines grace periods for soft eviction thresholds. Each soft eviction threshold must have a corresponding grace period. Structure is documented below.
16124
+ """
16125
+ return pulumi.get(self, "eviction_soft_grace_period")
16126
+
16127
+ @eviction_soft_grace_period.setter
16128
+ def eviction_soft_grace_period(self, value: Optional[pulumi.Input['ClusterNodePoolNodeConfigKubeletConfigEvictionSoftGracePeriodArgs']]):
16129
+ pulumi.set(self, "eviction_soft_grace_period", value)
16130
+
15469
16131
  @_builtins.property
15470
16132
  @pulumi.getter(name="imageGcHighThresholdPercent")
15471
16133
  def image_gc_high_threshold_percent(self) -> Optional[pulumi.Input[_builtins.int]]:
@@ -15510,45 +16172,453 @@ class ClusterNodePoolNodeConfigKubeletConfigArgs:
15510
16172
  """
15511
16173
  return pulumi.get(self, "image_minimum_gc_age")
15512
16174
 
15513
- @image_minimum_gc_age.setter
15514
- def image_minimum_gc_age(self, value: Optional[pulumi.Input[_builtins.str]]):
15515
- pulumi.set(self, "image_minimum_gc_age", value)
16175
+ @image_minimum_gc_age.setter
16176
+ def image_minimum_gc_age(self, value: Optional[pulumi.Input[_builtins.str]]):
16177
+ pulumi.set(self, "image_minimum_gc_age", value)
16178
+
16179
+ @_builtins.property
16180
+ @pulumi.getter(name="insecureKubeletReadonlyPortEnabled")
16181
+ def insecure_kubelet_readonly_port_enabled(self) -> Optional[pulumi.Input[_builtins.str]]:
16182
+ """
16183
+ Controls whether the kubelet read-only port is enabled. It is strongly recommended to set this to `FALSE`. Possible values: `TRUE`, `FALSE`.
16184
+ """
16185
+ return pulumi.get(self, "insecure_kubelet_readonly_port_enabled")
16186
+
16187
+ @insecure_kubelet_readonly_port_enabled.setter
16188
+ def insecure_kubelet_readonly_port_enabled(self, value: Optional[pulumi.Input[_builtins.str]]):
16189
+ pulumi.set(self, "insecure_kubelet_readonly_port_enabled", value)
16190
+
16191
+ @_builtins.property
16192
+ @pulumi.getter(name="maxParallelImagePulls")
16193
+ def max_parallel_image_pulls(self) -> Optional[pulumi.Input[_builtins.int]]:
16194
+ """
16195
+ Set the maximum number of image pulls in parallel. The integer must be between 2 and 5, inclusive.
16196
+ """
16197
+ return pulumi.get(self, "max_parallel_image_pulls")
16198
+
16199
+ @max_parallel_image_pulls.setter
16200
+ def max_parallel_image_pulls(self, value: Optional[pulumi.Input[_builtins.int]]):
16201
+ pulumi.set(self, "max_parallel_image_pulls", value)
16202
+
16203
+ @_builtins.property
16204
+ @pulumi.getter(name="podPidsLimit")
16205
+ def pod_pids_limit(self) -> Optional[pulumi.Input[_builtins.int]]:
16206
+ """
16207
+ Controls the maximum number of processes allowed to run in a pod. The value must be greater than or equal to 1024 and less than 4194304.
16208
+ """
16209
+ return pulumi.get(self, "pod_pids_limit")
16210
+
16211
+ @pod_pids_limit.setter
16212
+ def pod_pids_limit(self, value: Optional[pulumi.Input[_builtins.int]]):
16213
+ pulumi.set(self, "pod_pids_limit", value)
16214
+
16215
+ @_builtins.property
16216
+ @pulumi.getter(name="singleProcessOomKill")
16217
+ def single_process_oom_kill(self) -> Optional[pulumi.Input[_builtins.bool]]:
16218
+ """
16219
+ Defines whether to enable single process OOM killer. If true, the processes in the container will be OOM killed individually instead of as a group.
16220
+ """
16221
+ return pulumi.get(self, "single_process_oom_kill")
16222
+
16223
+ @single_process_oom_kill.setter
16224
+ def single_process_oom_kill(self, value: Optional[pulumi.Input[_builtins.bool]]):
16225
+ pulumi.set(self, "single_process_oom_kill", value)
16226
+
16227
+
16228
+ if not MYPY:
16229
+ class ClusterNodePoolNodeConfigKubeletConfigEvictionMinimumReclaimArgsDict(TypedDict):
16230
+ imagefs_available: NotRequired[pulumi.Input[_builtins.str]]
16231
+ """
16232
+ Defines percentage of minimum reclaim for imagefs.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
16233
+ """
16234
+ imagefs_inodes_free: NotRequired[pulumi.Input[_builtins.str]]
16235
+ """
16236
+ Defines percentage of minimum reclaim for imagefs.inodesFree. The value must be a percentage no more than `"10%"`, such as `"5%"`.
16237
+ """
16238
+ memory_available: NotRequired[pulumi.Input[_builtins.str]]
16239
+ """
16240
+ Defines percentage of minimum reclaim for memory.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
16241
+ """
16242
+ nodefs_available: NotRequired[pulumi.Input[_builtins.str]]
16243
+ """
16244
+ Defines percentage of minimum reclaim for nodefs.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
16245
+ """
16246
+ nodefs_inodes_free: NotRequired[pulumi.Input[_builtins.str]]
16247
+ """
16248
+ Defines percentage of minimum reclaim for nodefs.inodesFree. The value must be a percentage no more than `"10%"`, such as `"5%"`.
16249
+ """
16250
+ pid_available: NotRequired[pulumi.Input[_builtins.str]]
16251
+ """
16252
+ Defines percentage of minimum reclaim for pid.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
16253
+ """
16254
+ elif False:
16255
+ ClusterNodePoolNodeConfigKubeletConfigEvictionMinimumReclaimArgsDict: TypeAlias = Mapping[str, Any]
16256
+
16257
+ @pulumi.input_type
16258
+ class ClusterNodePoolNodeConfigKubeletConfigEvictionMinimumReclaimArgs:
16259
+ def __init__(__self__, *,
16260
+ imagefs_available: Optional[pulumi.Input[_builtins.str]] = None,
16261
+ imagefs_inodes_free: Optional[pulumi.Input[_builtins.str]] = None,
16262
+ memory_available: Optional[pulumi.Input[_builtins.str]] = None,
16263
+ nodefs_available: Optional[pulumi.Input[_builtins.str]] = None,
16264
+ nodefs_inodes_free: Optional[pulumi.Input[_builtins.str]] = None,
16265
+ pid_available: Optional[pulumi.Input[_builtins.str]] = None):
16266
+ """
16267
+ :param pulumi.Input[_builtins.str] imagefs_available: Defines percentage of minimum reclaim for imagefs.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
16268
+ :param pulumi.Input[_builtins.str] imagefs_inodes_free: Defines percentage of minimum reclaim for imagefs.inodesFree. The value must be a percentage no more than `"10%"`, such as `"5%"`.
16269
+ :param pulumi.Input[_builtins.str] memory_available: Defines percentage of minimum reclaim for memory.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
16270
+ :param pulumi.Input[_builtins.str] nodefs_available: Defines percentage of minimum reclaim for nodefs.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
16271
+ :param pulumi.Input[_builtins.str] nodefs_inodes_free: Defines percentage of minimum reclaim for nodefs.inodesFree. The value must be a percentage no more than `"10%"`, such as `"5%"`.
16272
+ :param pulumi.Input[_builtins.str] pid_available: Defines percentage of minimum reclaim for pid.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
16273
+ """
16274
+ if imagefs_available is not None:
16275
+ pulumi.set(__self__, "imagefs_available", imagefs_available)
16276
+ if imagefs_inodes_free is not None:
16277
+ pulumi.set(__self__, "imagefs_inodes_free", imagefs_inodes_free)
16278
+ if memory_available is not None:
16279
+ pulumi.set(__self__, "memory_available", memory_available)
16280
+ if nodefs_available is not None:
16281
+ pulumi.set(__self__, "nodefs_available", nodefs_available)
16282
+ if nodefs_inodes_free is not None:
16283
+ pulumi.set(__self__, "nodefs_inodes_free", nodefs_inodes_free)
16284
+ if pid_available is not None:
16285
+ pulumi.set(__self__, "pid_available", pid_available)
16286
+
16287
+ @_builtins.property
16288
+ @pulumi.getter(name="imagefsAvailable")
16289
+ def imagefs_available(self) -> Optional[pulumi.Input[_builtins.str]]:
16290
+ """
16291
+ Defines percentage of minimum reclaim for imagefs.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
16292
+ """
16293
+ return pulumi.get(self, "imagefs_available")
16294
+
16295
+ @imagefs_available.setter
16296
+ def imagefs_available(self, value: Optional[pulumi.Input[_builtins.str]]):
16297
+ pulumi.set(self, "imagefs_available", value)
16298
+
16299
+ @_builtins.property
16300
+ @pulumi.getter(name="imagefsInodesFree")
16301
+ def imagefs_inodes_free(self) -> Optional[pulumi.Input[_builtins.str]]:
16302
+ """
16303
+ Defines percentage of minimum reclaim for imagefs.inodesFree. The value must be a percentage no more than `"10%"`, such as `"5%"`.
16304
+ """
16305
+ return pulumi.get(self, "imagefs_inodes_free")
16306
+
16307
+ @imagefs_inodes_free.setter
16308
+ def imagefs_inodes_free(self, value: Optional[pulumi.Input[_builtins.str]]):
16309
+ pulumi.set(self, "imagefs_inodes_free", value)
16310
+
16311
+ @_builtins.property
16312
+ @pulumi.getter(name="memoryAvailable")
16313
+ def memory_available(self) -> Optional[pulumi.Input[_builtins.str]]:
16314
+ """
16315
+ Defines percentage of minimum reclaim for memory.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
16316
+ """
16317
+ return pulumi.get(self, "memory_available")
16318
+
16319
+ @memory_available.setter
16320
+ def memory_available(self, value: Optional[pulumi.Input[_builtins.str]]):
16321
+ pulumi.set(self, "memory_available", value)
16322
+
16323
+ @_builtins.property
16324
+ @pulumi.getter(name="nodefsAvailable")
16325
+ def nodefs_available(self) -> Optional[pulumi.Input[_builtins.str]]:
16326
+ """
16327
+ Defines percentage of minimum reclaim for nodefs.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
16328
+ """
16329
+ return pulumi.get(self, "nodefs_available")
16330
+
16331
+ @nodefs_available.setter
16332
+ def nodefs_available(self, value: Optional[pulumi.Input[_builtins.str]]):
16333
+ pulumi.set(self, "nodefs_available", value)
16334
+
16335
+ @_builtins.property
16336
+ @pulumi.getter(name="nodefsInodesFree")
16337
+ def nodefs_inodes_free(self) -> Optional[pulumi.Input[_builtins.str]]:
16338
+ """
16339
+ Defines percentage of minimum reclaim for nodefs.inodesFree. The value must be a percentage no more than `"10%"`, such as `"5%"`.
16340
+ """
16341
+ return pulumi.get(self, "nodefs_inodes_free")
16342
+
16343
+ @nodefs_inodes_free.setter
16344
+ def nodefs_inodes_free(self, value: Optional[pulumi.Input[_builtins.str]]):
16345
+ pulumi.set(self, "nodefs_inodes_free", value)
16346
+
16347
+ @_builtins.property
16348
+ @pulumi.getter(name="pidAvailable")
16349
+ def pid_available(self) -> Optional[pulumi.Input[_builtins.str]]:
16350
+ """
16351
+ Defines percentage of minimum reclaim for pid.available. The value must be a percentage no more than `"10%"`, such as `"5%"`.
16352
+ """
16353
+ return pulumi.get(self, "pid_available")
16354
+
16355
+ @pid_available.setter
16356
+ def pid_available(self, value: Optional[pulumi.Input[_builtins.str]]):
16357
+ pulumi.set(self, "pid_available", value)
16358
+
16359
+
16360
+ if not MYPY:
16361
+ class ClusterNodePoolNodeConfigKubeletConfigEvictionSoftArgsDict(TypedDict):
16362
+ imagefs_available: NotRequired[pulumi.Input[_builtins.str]]
16363
+ """
16364
+ Defines percentage of soft eviction threshold for imagefs.available. The value must be a percentage between `15%` and `50%`, such as `"20%"`.
16365
+ """
16366
+ imagefs_inodes_free: NotRequired[pulumi.Input[_builtins.str]]
16367
+ """
16368
+ Defines percentage of soft eviction threshold for imagefs.inodesFree. The value must be a percentage between `5%` and `50%`, such as `"20%"`.
16369
+ """
16370
+ memory_available: NotRequired[pulumi.Input[_builtins.str]]
16371
+ """
16372
+ Defines quantity of soft eviction threshold for memory.available. The value must be a quantity, such as `"100Mi"`. The value must be greater than or equal to the GKE default hard eviction threshold of `"100Mi"` and less than 50% of machine memory.
16373
+ """
16374
+ nodefs_available: NotRequired[pulumi.Input[_builtins.str]]
16375
+ """
16376
+ Defines percentage of soft eviction threshold for nodefs.available. The value must be a percentage between `10%` and `50%`, such as `"20%"`.
16377
+ """
16378
+ nodefs_inodes_free: NotRequired[pulumi.Input[_builtins.str]]
16379
+ """
16380
+ Defines percentage of soft eviction threshold for nodefs.inodesFree. The value must be a percentage between `5%` and `50%`, such as `"20%"`.
16381
+ """
16382
+ pid_available: NotRequired[pulumi.Input[_builtins.str]]
16383
+ """
16384
+ Defines percentage of soft eviction threshold for pid.available. The value must be a percentage between `10%` and `50%`, such as `"20%"`.
16385
+ """
16386
+ elif False:
16387
+ ClusterNodePoolNodeConfigKubeletConfigEvictionSoftArgsDict: TypeAlias = Mapping[str, Any]
16388
+
16389
+ @pulumi.input_type
16390
+ class ClusterNodePoolNodeConfigKubeletConfigEvictionSoftArgs:
16391
+ def __init__(__self__, *,
16392
+ imagefs_available: Optional[pulumi.Input[_builtins.str]] = None,
16393
+ imagefs_inodes_free: Optional[pulumi.Input[_builtins.str]] = None,
16394
+ memory_available: Optional[pulumi.Input[_builtins.str]] = None,
16395
+ nodefs_available: Optional[pulumi.Input[_builtins.str]] = None,
16396
+ nodefs_inodes_free: Optional[pulumi.Input[_builtins.str]] = None,
16397
+ pid_available: Optional[pulumi.Input[_builtins.str]] = None):
16398
+ """
16399
+ :param pulumi.Input[_builtins.str] imagefs_available: Defines percentage of soft eviction threshold for imagefs.available. The value must be a percentage between `15%` and `50%`, such as `"20%"`.
16400
+ :param pulumi.Input[_builtins.str] imagefs_inodes_free: Defines percentage of soft eviction threshold for imagefs.inodesFree. The value must be a percentage between `5%` and `50%`, such as `"20%"`.
16401
+ :param pulumi.Input[_builtins.str] memory_available: Defines quantity of soft eviction threshold for memory.available. The value must be a quantity, such as `"100Mi"`. The value must be greater than or equal to the GKE default hard eviction threshold of `"100Mi"` and less than 50% of machine memory.
16402
+ :param pulumi.Input[_builtins.str] nodefs_available: Defines percentage of soft eviction threshold for nodefs.available. The value must be a percentage between `10%` and `50%`, such as `"20%"`.
16403
+ :param pulumi.Input[_builtins.str] nodefs_inodes_free: Defines percentage of soft eviction threshold for nodefs.inodesFree. The value must be a percentage between `5%` and `50%`, such as `"20%"`.
16404
+ :param pulumi.Input[_builtins.str] pid_available: Defines percentage of soft eviction threshold for pid.available. The value must be a percentage between `10%` and `50%`, such as `"20%"`.
16405
+ """
16406
+ if imagefs_available is not None:
16407
+ pulumi.set(__self__, "imagefs_available", imagefs_available)
16408
+ if imagefs_inodes_free is not None:
16409
+ pulumi.set(__self__, "imagefs_inodes_free", imagefs_inodes_free)
16410
+ if memory_available is not None:
16411
+ pulumi.set(__self__, "memory_available", memory_available)
16412
+ if nodefs_available is not None:
16413
+ pulumi.set(__self__, "nodefs_available", nodefs_available)
16414
+ if nodefs_inodes_free is not None:
16415
+ pulumi.set(__self__, "nodefs_inodes_free", nodefs_inodes_free)
16416
+ if pid_available is not None:
16417
+ pulumi.set(__self__, "pid_available", pid_available)
16418
+
16419
+ @_builtins.property
16420
+ @pulumi.getter(name="imagefsAvailable")
16421
+ def imagefs_available(self) -> Optional[pulumi.Input[_builtins.str]]:
16422
+ """
16423
+ Defines percentage of soft eviction threshold for imagefs.available. The value must be a percentage between `15%` and `50%`, such as `"20%"`.
16424
+ """
16425
+ return pulumi.get(self, "imagefs_available")
16426
+
16427
+ @imagefs_available.setter
16428
+ def imagefs_available(self, value: Optional[pulumi.Input[_builtins.str]]):
16429
+ pulumi.set(self, "imagefs_available", value)
16430
+
16431
+ @_builtins.property
16432
+ @pulumi.getter(name="imagefsInodesFree")
16433
+ def imagefs_inodes_free(self) -> Optional[pulumi.Input[_builtins.str]]:
16434
+ """
16435
+ Defines percentage of soft eviction threshold for imagefs.inodesFree. The value must be a percentage between `5%` and `50%`, such as `"20%"`.
16436
+ """
16437
+ return pulumi.get(self, "imagefs_inodes_free")
16438
+
16439
+ @imagefs_inodes_free.setter
16440
+ def imagefs_inodes_free(self, value: Optional[pulumi.Input[_builtins.str]]):
16441
+ pulumi.set(self, "imagefs_inodes_free", value)
16442
+
16443
+ @_builtins.property
16444
+ @pulumi.getter(name="memoryAvailable")
16445
+ def memory_available(self) -> Optional[pulumi.Input[_builtins.str]]:
16446
+ """
16447
+ Defines quantity of soft eviction threshold for memory.available. The value must be a quantity, such as `"100Mi"`. The value must be greater than or equal to the GKE default hard eviction threshold of `"100Mi"` and less than 50% of machine memory.
16448
+ """
16449
+ return pulumi.get(self, "memory_available")
16450
+
16451
+ @memory_available.setter
16452
+ def memory_available(self, value: Optional[pulumi.Input[_builtins.str]]):
16453
+ pulumi.set(self, "memory_available", value)
16454
+
16455
+ @_builtins.property
16456
+ @pulumi.getter(name="nodefsAvailable")
16457
+ def nodefs_available(self) -> Optional[pulumi.Input[_builtins.str]]:
16458
+ """
16459
+ Defines percentage of soft eviction threshold for nodefs.available. The value must be a percentage between `10%` and `50%`, such as `"20%"`.
16460
+ """
16461
+ return pulumi.get(self, "nodefs_available")
16462
+
16463
+ @nodefs_available.setter
16464
+ def nodefs_available(self, value: Optional[pulumi.Input[_builtins.str]]):
16465
+ pulumi.set(self, "nodefs_available", value)
16466
+
16467
+ @_builtins.property
16468
+ @pulumi.getter(name="nodefsInodesFree")
16469
+ def nodefs_inodes_free(self) -> Optional[pulumi.Input[_builtins.str]]:
16470
+ """
16471
+ Defines percentage of soft eviction threshold for nodefs.inodesFree. The value must be a percentage between `5%` and `50%`, such as `"20%"`.
16472
+ """
16473
+ return pulumi.get(self, "nodefs_inodes_free")
16474
+
16475
+ @nodefs_inodes_free.setter
16476
+ def nodefs_inodes_free(self, value: Optional[pulumi.Input[_builtins.str]]):
16477
+ pulumi.set(self, "nodefs_inodes_free", value)
16478
+
16479
+ @_builtins.property
16480
+ @pulumi.getter(name="pidAvailable")
16481
+ def pid_available(self) -> Optional[pulumi.Input[_builtins.str]]:
16482
+ """
16483
+ Defines percentage of soft eviction threshold for pid.available. The value must be a percentage between `10%` and `50%`, such as `"20%"`.
16484
+ """
16485
+ return pulumi.get(self, "pid_available")
16486
+
16487
+ @pid_available.setter
16488
+ def pid_available(self, value: Optional[pulumi.Input[_builtins.str]]):
16489
+ pulumi.set(self, "pid_available", value)
16490
+
16491
+
16492
+ if not MYPY:
16493
+ class ClusterNodePoolNodeConfigKubeletConfigEvictionSoftGracePeriodArgsDict(TypedDict):
16494
+ imagefs_available: NotRequired[pulumi.Input[_builtins.str]]
16495
+ """
16496
+ Defines grace period for the imagefs.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
16497
+ """
16498
+ imagefs_inodes_free: NotRequired[pulumi.Input[_builtins.str]]
16499
+ """
16500
+ Defines grace period for the imagefs.inodesFree soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
16501
+ """
16502
+ memory_available: NotRequired[pulumi.Input[_builtins.str]]
16503
+ """
16504
+ Defines grace period for the memory.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`, such as `"30s"`, `"1m30s"`, `"2.5m"`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".
16505
+ """
16506
+ nodefs_available: NotRequired[pulumi.Input[_builtins.str]]
16507
+ """
16508
+ Defines grace period for the nodefs.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
16509
+ """
16510
+ nodefs_inodes_free: NotRequired[pulumi.Input[_builtins.str]]
16511
+ """
16512
+ Defines grace period for the nodefs.inodesFree soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
16513
+ """
16514
+ pid_available: NotRequired[pulumi.Input[_builtins.str]]
16515
+ """
16516
+ Defines grace period for the pid.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
16517
+ """
16518
+ elif False:
16519
+ ClusterNodePoolNodeConfigKubeletConfigEvictionSoftGracePeriodArgsDict: TypeAlias = Mapping[str, Any]
16520
+
16521
+ @pulumi.input_type
16522
+ class ClusterNodePoolNodeConfigKubeletConfigEvictionSoftGracePeriodArgs:
16523
+ def __init__(__self__, *,
16524
+ imagefs_available: Optional[pulumi.Input[_builtins.str]] = None,
16525
+ imagefs_inodes_free: Optional[pulumi.Input[_builtins.str]] = None,
16526
+ memory_available: Optional[pulumi.Input[_builtins.str]] = None,
16527
+ nodefs_available: Optional[pulumi.Input[_builtins.str]] = None,
16528
+ nodefs_inodes_free: Optional[pulumi.Input[_builtins.str]] = None,
16529
+ pid_available: Optional[pulumi.Input[_builtins.str]] = None):
16530
+ """
16531
+ :param pulumi.Input[_builtins.str] imagefs_available: Defines grace period for the imagefs.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
16532
+ :param pulumi.Input[_builtins.str] imagefs_inodes_free: Defines grace period for the imagefs.inodesFree soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
16533
+ :param pulumi.Input[_builtins.str] memory_available: Defines grace period for the memory.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`, such as `"30s"`, `"1m30s"`, `"2.5m"`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".
16534
+ :param pulumi.Input[_builtins.str] nodefs_available: Defines grace period for the nodefs.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
16535
+ :param pulumi.Input[_builtins.str] nodefs_inodes_free: Defines grace period for the nodefs.inodesFree soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
16536
+ :param pulumi.Input[_builtins.str] pid_available: Defines grace period for the pid.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
16537
+ """
16538
+ if imagefs_available is not None:
16539
+ pulumi.set(__self__, "imagefs_available", imagefs_available)
16540
+ if imagefs_inodes_free is not None:
16541
+ pulumi.set(__self__, "imagefs_inodes_free", imagefs_inodes_free)
16542
+ if memory_available is not None:
16543
+ pulumi.set(__self__, "memory_available", memory_available)
16544
+ if nodefs_available is not None:
16545
+ pulumi.set(__self__, "nodefs_available", nodefs_available)
16546
+ if nodefs_inodes_free is not None:
16547
+ pulumi.set(__self__, "nodefs_inodes_free", nodefs_inodes_free)
16548
+ if pid_available is not None:
16549
+ pulumi.set(__self__, "pid_available", pid_available)
16550
+
16551
+ @_builtins.property
16552
+ @pulumi.getter(name="imagefsAvailable")
16553
+ def imagefs_available(self) -> Optional[pulumi.Input[_builtins.str]]:
16554
+ """
16555
+ Defines grace period for the imagefs.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
16556
+ """
16557
+ return pulumi.get(self, "imagefs_available")
16558
+
16559
+ @imagefs_available.setter
16560
+ def imagefs_available(self, value: Optional[pulumi.Input[_builtins.str]]):
16561
+ pulumi.set(self, "imagefs_available", value)
16562
+
16563
+ @_builtins.property
16564
+ @pulumi.getter(name="imagefsInodesFree")
16565
+ def imagefs_inodes_free(self) -> Optional[pulumi.Input[_builtins.str]]:
16566
+ """
16567
+ Defines grace period for the imagefs.inodesFree soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
16568
+ """
16569
+ return pulumi.get(self, "imagefs_inodes_free")
16570
+
16571
+ @imagefs_inodes_free.setter
16572
+ def imagefs_inodes_free(self, value: Optional[pulumi.Input[_builtins.str]]):
16573
+ pulumi.set(self, "imagefs_inodes_free", value)
16574
+
16575
+ @_builtins.property
16576
+ @pulumi.getter(name="memoryAvailable")
16577
+ def memory_available(self) -> Optional[pulumi.Input[_builtins.str]]:
16578
+ """
16579
+ Defines grace period for the memory.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`, such as `"30s"`, `"1m30s"`, `"2.5m"`. Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h".
16580
+ """
16581
+ return pulumi.get(self, "memory_available")
16582
+
16583
+ @memory_available.setter
16584
+ def memory_available(self, value: Optional[pulumi.Input[_builtins.str]]):
16585
+ pulumi.set(self, "memory_available", value)
15516
16586
 
15517
16587
  @_builtins.property
15518
- @pulumi.getter(name="insecureKubeletReadonlyPortEnabled")
15519
- def insecure_kubelet_readonly_port_enabled(self) -> Optional[pulumi.Input[_builtins.str]]:
16588
+ @pulumi.getter(name="nodefsAvailable")
16589
+ def nodefs_available(self) -> Optional[pulumi.Input[_builtins.str]]:
15520
16590
  """
15521
- Controls whether the kubelet read-only port is enabled. It is strongly recommended to set this to `FALSE`. Possible values: `TRUE`, `FALSE`.
16591
+ Defines grace period for the nodefs.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
15522
16592
  """
15523
- return pulumi.get(self, "insecure_kubelet_readonly_port_enabled")
16593
+ return pulumi.get(self, "nodefs_available")
15524
16594
 
15525
- @insecure_kubelet_readonly_port_enabled.setter
15526
- def insecure_kubelet_readonly_port_enabled(self, value: Optional[pulumi.Input[_builtins.str]]):
15527
- pulumi.set(self, "insecure_kubelet_readonly_port_enabled", value)
16595
+ @nodefs_available.setter
16596
+ def nodefs_available(self, value: Optional[pulumi.Input[_builtins.str]]):
16597
+ pulumi.set(self, "nodefs_available", value)
15528
16598
 
15529
16599
  @_builtins.property
15530
- @pulumi.getter(name="podPidsLimit")
15531
- def pod_pids_limit(self) -> Optional[pulumi.Input[_builtins.int]]:
16600
+ @pulumi.getter(name="nodefsInodesFree")
16601
+ def nodefs_inodes_free(self) -> Optional[pulumi.Input[_builtins.str]]:
15532
16602
  """
15533
- Controls the maximum number of processes allowed to run in a pod. The value must be greater than or equal to 1024 and less than 4194304.
16603
+ Defines grace period for the nodefs.inodesFree soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
15534
16604
  """
15535
- return pulumi.get(self, "pod_pids_limit")
16605
+ return pulumi.get(self, "nodefs_inodes_free")
15536
16606
 
15537
- @pod_pids_limit.setter
15538
- def pod_pids_limit(self, value: Optional[pulumi.Input[_builtins.int]]):
15539
- pulumi.set(self, "pod_pids_limit", value)
16607
+ @nodefs_inodes_free.setter
16608
+ def nodefs_inodes_free(self, value: Optional[pulumi.Input[_builtins.str]]):
16609
+ pulumi.set(self, "nodefs_inodes_free", value)
15540
16610
 
15541
16611
  @_builtins.property
15542
- @pulumi.getter(name="singleProcessOomKill")
15543
- def single_process_oom_kill(self) -> Optional[pulumi.Input[_builtins.bool]]:
16612
+ @pulumi.getter(name="pidAvailable")
16613
+ def pid_available(self) -> Optional[pulumi.Input[_builtins.str]]:
15544
16614
  """
15545
- Defines whether to enable single process OOM killer. If true, the processes in the container will be OOM killed individually instead of as a group.
16615
+ Defines grace period for the pid.available soft eviction threshold. The value must be a positive duration string no more than `"5m"`.
15546
16616
  """
15547
- return pulumi.get(self, "single_process_oom_kill")
16617
+ return pulumi.get(self, "pid_available")
15548
16618
 
15549
- @single_process_oom_kill.setter
15550
- def single_process_oom_kill(self, value: Optional[pulumi.Input[_builtins.bool]]):
15551
- pulumi.set(self, "single_process_oom_kill", value)
16619
+ @pid_available.setter
16620
+ def pid_available(self, value: Optional[pulumi.Input[_builtins.str]]):
16621
+ pulumi.set(self, "pid_available", value)
15552
16622
 
15553
16623
 
15554
16624
  if not MYPY:
@@ -15572,6 +16642,14 @@ if not MYPY:
15572
16642
  `net.core.wmem_max`, to a string value. Currently supported attributes can be found [here](https://cloud.google.com/sdk/gcloud/reference/beta/container/node-pools/create#--system-config-from-file).
15573
16643
  Note that validations happen all server side. All attributes are optional.
15574
16644
  """
16645
+ transparent_hugepage_defrag: NotRequired[pulumi.Input[_builtins.str]]
16646
+ """
16647
+ The Linux kernel transparent hugepage defrag setting.
16648
+ """
16649
+ transparent_hugepage_enabled: NotRequired[pulumi.Input[_builtins.str]]
16650
+ """
16651
+ The Linux kernel transparent hugepage setting.
16652
+ """
15575
16653
  elif False:
15576
16654
  ClusterNodePoolNodeConfigLinuxNodeConfigArgsDict: TypeAlias = Mapping[str, Any]
15577
16655
 
@@ -15580,7 +16658,9 @@ class ClusterNodePoolNodeConfigLinuxNodeConfigArgs:
15580
16658
  def __init__(__self__, *,
15581
16659
  cgroup_mode: Optional[pulumi.Input[_builtins.str]] = None,
15582
16660
  hugepages_config: Optional[pulumi.Input['ClusterNodePoolNodeConfigLinuxNodeConfigHugepagesConfigArgs']] = None,
15583
- sysctls: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None):
16661
+ sysctls: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
16662
+ transparent_hugepage_defrag: Optional[pulumi.Input[_builtins.str]] = None,
16663
+ transparent_hugepage_enabled: Optional[pulumi.Input[_builtins.str]] = None):
15584
16664
  """
15585
16665
  :param pulumi.Input[_builtins.str] cgroup_mode: Possible cgroup modes that can be used.
15586
16666
  Accepted values are:
@@ -15592,6 +16672,8 @@ class ClusterNodePoolNodeConfigLinuxNodeConfigArgs:
15592
16672
  and all pods running on the nodes. Specified as a map from the key, such as
15593
16673
  `net.core.wmem_max`, to a string value. Currently supported attributes can be found [here](https://cloud.google.com/sdk/gcloud/reference/beta/container/node-pools/create#--system-config-from-file).
15594
16674
  Note that validations happen all server side. All attributes are optional.
16675
+ :param pulumi.Input[_builtins.str] transparent_hugepage_defrag: The Linux kernel transparent hugepage defrag setting.
16676
+ :param pulumi.Input[_builtins.str] transparent_hugepage_enabled: The Linux kernel transparent hugepage setting.
15595
16677
  """
15596
16678
  if cgroup_mode is not None:
15597
16679
  pulumi.set(__self__, "cgroup_mode", cgroup_mode)
@@ -15599,6 +16681,10 @@ class ClusterNodePoolNodeConfigLinuxNodeConfigArgs:
15599
16681
  pulumi.set(__self__, "hugepages_config", hugepages_config)
15600
16682
  if sysctls is not None:
15601
16683
  pulumi.set(__self__, "sysctls", sysctls)
16684
+ if transparent_hugepage_defrag is not None:
16685
+ pulumi.set(__self__, "transparent_hugepage_defrag", transparent_hugepage_defrag)
16686
+ if transparent_hugepage_enabled is not None:
16687
+ pulumi.set(__self__, "transparent_hugepage_enabled", transparent_hugepage_enabled)
15602
16688
 
15603
16689
  @_builtins.property
15604
16690
  @pulumi.getter(name="cgroupMode")
@@ -15643,6 +16729,30 @@ class ClusterNodePoolNodeConfigLinuxNodeConfigArgs:
15643
16729
  def sysctls(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
15644
16730
  pulumi.set(self, "sysctls", value)
15645
16731
 
16732
+ @_builtins.property
16733
+ @pulumi.getter(name="transparentHugepageDefrag")
16734
+ def transparent_hugepage_defrag(self) -> Optional[pulumi.Input[_builtins.str]]:
16735
+ """
16736
+ The Linux kernel transparent hugepage defrag setting.
16737
+ """
16738
+ return pulumi.get(self, "transparent_hugepage_defrag")
16739
+
16740
+ @transparent_hugepage_defrag.setter
16741
+ def transparent_hugepage_defrag(self, value: Optional[pulumi.Input[_builtins.str]]):
16742
+ pulumi.set(self, "transparent_hugepage_defrag", value)
16743
+
16744
+ @_builtins.property
16745
+ @pulumi.getter(name="transparentHugepageEnabled")
16746
+ def transparent_hugepage_enabled(self) -> Optional[pulumi.Input[_builtins.str]]:
16747
+ """
16748
+ The Linux kernel transparent hugepage setting.
16749
+ """
16750
+ return pulumi.get(self, "transparent_hugepage_enabled")
16751
+
16752
+ @transparent_hugepage_enabled.setter
16753
+ def transparent_hugepage_enabled(self, value: Optional[pulumi.Input[_builtins.str]]):
16754
+ pulumi.set(self, "transparent_hugepage_enabled", value)
16755
+
15646
16756
 
15647
16757
  if not MYPY:
15648
16758
  class ClusterNodePoolNodeConfigLinuxNodeConfigHugepagesConfigArgsDict(TypedDict):
@@ -15978,7 +17088,11 @@ if not MYPY:
15978
17088
  class ClusterNodePoolNodeConfigSoleTenantConfigArgsDict(TypedDict):
15979
17089
  node_affinities: pulumi.Input[Sequence[pulumi.Input['ClusterNodePoolNodeConfigSoleTenantConfigNodeAffinityArgsDict']]]
15980
17090
  """
15981
- .
17091
+ The node affinity settings for the sole tenant node pool. Structure is documented below.
17092
+ """
17093
+ min_node_cpus: NotRequired[pulumi.Input[_builtins.int]]
17094
+ """
17095
+ Specifies the minimum number of vCPUs that each sole tenant node must have to use CPU overcommit. If not specified, the CPU overcommit feeature is disabled. The value should be greater than or equal to half of the machine type's CPU count.
15982
17096
  """
15983
17097
  elif False:
15984
17098
  ClusterNodePoolNodeConfigSoleTenantConfigArgsDict: TypeAlias = Mapping[str, Any]
@@ -15986,17 +17100,21 @@ elif False:
15986
17100
  @pulumi.input_type
15987
17101
  class ClusterNodePoolNodeConfigSoleTenantConfigArgs:
15988
17102
  def __init__(__self__, *,
15989
- node_affinities: pulumi.Input[Sequence[pulumi.Input['ClusterNodePoolNodeConfigSoleTenantConfigNodeAffinityArgs']]]):
17103
+ node_affinities: pulumi.Input[Sequence[pulumi.Input['ClusterNodePoolNodeConfigSoleTenantConfigNodeAffinityArgs']]],
17104
+ min_node_cpus: Optional[pulumi.Input[_builtins.int]] = None):
15990
17105
  """
15991
- :param pulumi.Input[Sequence[pulumi.Input['ClusterNodePoolNodeConfigSoleTenantConfigNodeAffinityArgs']]] node_affinities: .
17106
+ :param pulumi.Input[Sequence[pulumi.Input['ClusterNodePoolNodeConfigSoleTenantConfigNodeAffinityArgs']]] node_affinities: The node affinity settings for the sole tenant node pool. Structure is documented below.
17107
+ :param pulumi.Input[_builtins.int] min_node_cpus: Specifies the minimum number of vCPUs that each sole tenant node must have to use CPU overcommit. If not specified, the CPU overcommit feeature is disabled. The value should be greater than or equal to half of the machine type's CPU count.
15992
17108
  """
15993
17109
  pulumi.set(__self__, "node_affinities", node_affinities)
17110
+ if min_node_cpus is not None:
17111
+ pulumi.set(__self__, "min_node_cpus", min_node_cpus)
15994
17112
 
15995
17113
  @_builtins.property
15996
17114
  @pulumi.getter(name="nodeAffinities")
15997
17115
  def node_affinities(self) -> pulumi.Input[Sequence[pulumi.Input['ClusterNodePoolNodeConfigSoleTenantConfigNodeAffinityArgs']]]:
15998
17116
  """
15999
- .
17117
+ The node affinity settings for the sole tenant node pool. Structure is documented below.
16000
17118
  """
16001
17119
  return pulumi.get(self, "node_affinities")
16002
17120
 
@@ -16004,6 +17122,18 @@ class ClusterNodePoolNodeConfigSoleTenantConfigArgs:
16004
17122
  def node_affinities(self, value: pulumi.Input[Sequence[pulumi.Input['ClusterNodePoolNodeConfigSoleTenantConfigNodeAffinityArgs']]]):
16005
17123
  pulumi.set(self, "node_affinities", value)
16006
17124
 
17125
+ @_builtins.property
17126
+ @pulumi.getter(name="minNodeCpus")
17127
+ def min_node_cpus(self) -> Optional[pulumi.Input[_builtins.int]]:
17128
+ """
17129
+ Specifies the minimum number of vCPUs that each sole tenant node must have to use CPU overcommit. If not specified, the CPU overcommit feeature is disabled. The value should be greater than or equal to half of the machine type's CPU count.
17130
+ """
17131
+ return pulumi.get(self, "min_node_cpus")
17132
+
17133
+ @min_node_cpus.setter
17134
+ def min_node_cpus(self, value: Optional[pulumi.Input[_builtins.int]]):
17135
+ pulumi.set(self, "min_node_cpus", value)
17136
+
16007
17137
 
16008
17138
  if not MYPY:
16009
17139
  class ClusterNodePoolNodeConfigSoleTenantConfigNodeAffinityArgsDict(TypedDict):
@@ -20220,6 +21350,22 @@ if not MYPY:
20220
21350
  """
20221
21351
  Control the CPU management policy on the node.
20222
21352
  """
21353
+ eviction_max_pod_grace_period_seconds: NotRequired[pulumi.Input[_builtins.int]]
21354
+ """
21355
+ Defines the maximum allowed grace period (in seconds) to use when terminating pods in response to a soft eviction threshold being met.
21356
+ """
21357
+ eviction_minimum_reclaim: NotRequired[pulumi.Input['NodePoolNodeConfigKubeletConfigEvictionMinimumReclaimArgsDict']]
21358
+ """
21359
+ Defines a map of signal names to percentage that defines minimum reclaims. It describes the minimum amount of a given resource the kubelet will reclaim when performing a pod eviction.
21360
+ """
21361
+ eviction_soft: NotRequired[pulumi.Input['NodePoolNodeConfigKubeletConfigEvictionSoftArgsDict']]
21362
+ """
21363
+ Defines a map of signal names to quantities or percentage that defines soft eviction thresholds.
21364
+ """
21365
+ eviction_soft_grace_period: NotRequired[pulumi.Input['NodePoolNodeConfigKubeletConfigEvictionSoftGracePeriodArgsDict']]
21366
+ """
21367
+ Defines a map of signal names to durations that defines grace periods for soft eviction thresholds. Each soft eviction threshold must have a corresponding grace period.
21368
+ """
20223
21369
  image_gc_high_threshold_percent: NotRequired[pulumi.Input[_builtins.int]]
20224
21370
  """
20225
21371
  Defines the percent of disk usage after which image garbage collection is always run.
@@ -20240,6 +21386,10 @@ if not MYPY:
20240
21386
  """
20241
21387
  Controls whether the kubelet read-only port is enabled. It is strongly recommended to set this to `FALSE`. Possible values: `TRUE`, `FALSE`.
20242
21388
  """
21389
+ max_parallel_image_pulls: NotRequired[pulumi.Input[_builtins.int]]
21390
+ """
21391
+ Set the maximum number of image pulls in parallel.
21392
+ """
20243
21393
  pod_pids_limit: NotRequired[pulumi.Input[_builtins.int]]
20244
21394
  """
20245
21395
  Controls the maximum number of processes allowed to run in a pod.
@@ -20260,11 +21410,16 @@ class NodePoolNodeConfigKubeletConfigArgs:
20260
21410
  cpu_cfs_quota: Optional[pulumi.Input[_builtins.bool]] = None,
20261
21411
  cpu_cfs_quota_period: Optional[pulumi.Input[_builtins.str]] = None,
20262
21412
  cpu_manager_policy: Optional[pulumi.Input[_builtins.str]] = None,
21413
+ eviction_max_pod_grace_period_seconds: Optional[pulumi.Input[_builtins.int]] = None,
21414
+ eviction_minimum_reclaim: Optional[pulumi.Input['NodePoolNodeConfigKubeletConfigEvictionMinimumReclaimArgs']] = None,
21415
+ eviction_soft: Optional[pulumi.Input['NodePoolNodeConfigKubeletConfigEvictionSoftArgs']] = None,
21416
+ eviction_soft_grace_period: Optional[pulumi.Input['NodePoolNodeConfigKubeletConfigEvictionSoftGracePeriodArgs']] = None,
20263
21417
  image_gc_high_threshold_percent: Optional[pulumi.Input[_builtins.int]] = None,
20264
21418
  image_gc_low_threshold_percent: Optional[pulumi.Input[_builtins.int]] = None,
20265
21419
  image_maximum_gc_age: Optional[pulumi.Input[_builtins.str]] = None,
20266
21420
  image_minimum_gc_age: Optional[pulumi.Input[_builtins.str]] = None,
20267
21421
  insecure_kubelet_readonly_port_enabled: Optional[pulumi.Input[_builtins.str]] = None,
21422
+ max_parallel_image_pulls: Optional[pulumi.Input[_builtins.int]] = None,
20268
21423
  pod_pids_limit: Optional[pulumi.Input[_builtins.int]] = None,
20269
21424
  single_process_oom_kill: Optional[pulumi.Input[_builtins.bool]] = None):
20270
21425
  """
@@ -20274,11 +21429,16 @@ class NodePoolNodeConfigKubeletConfigArgs:
20274
21429
  :param pulumi.Input[_builtins.bool] cpu_cfs_quota: Enable CPU CFS quota enforcement for containers that specify CPU limits.
20275
21430
  :param pulumi.Input[_builtins.str] cpu_cfs_quota_period: Set the CPU CFS quota period value 'cpu.cfs_period_us'.
20276
21431
  :param pulumi.Input[_builtins.str] cpu_manager_policy: Control the CPU management policy on the node.
21432
+ :param pulumi.Input[_builtins.int] eviction_max_pod_grace_period_seconds: Defines the maximum allowed grace period (in seconds) to use when terminating pods in response to a soft eviction threshold being met.
21433
+ :param pulumi.Input['NodePoolNodeConfigKubeletConfigEvictionMinimumReclaimArgs'] eviction_minimum_reclaim: Defines a map of signal names to percentage that defines minimum reclaims. It describes the minimum amount of a given resource the kubelet will reclaim when performing a pod eviction.
21434
+ :param pulumi.Input['NodePoolNodeConfigKubeletConfigEvictionSoftArgs'] eviction_soft: Defines a map of signal names to quantities or percentage that defines soft eviction thresholds.
21435
+ :param pulumi.Input['NodePoolNodeConfigKubeletConfigEvictionSoftGracePeriodArgs'] eviction_soft_grace_period: Defines a map of signal names to durations that defines grace periods for soft eviction thresholds. Each soft eviction threshold must have a corresponding grace period.
20277
21436
  :param pulumi.Input[_builtins.int] image_gc_high_threshold_percent: Defines the percent of disk usage after which image garbage collection is always run.
20278
21437
  :param pulumi.Input[_builtins.int] image_gc_low_threshold_percent: Defines the percent of disk usage before which image garbage collection is never run. Lowest disk usage to garbage collect to.
20279
21438
  :param pulumi.Input[_builtins.str] image_maximum_gc_age: Defines the maximum age an image can be unused before it is garbage collected.
20280
21439
  :param pulumi.Input[_builtins.str] image_minimum_gc_age: Defines the minimum age for an unused image before it is garbage collected.
20281
21440
  :param pulumi.Input[_builtins.str] insecure_kubelet_readonly_port_enabled: Controls whether the kubelet read-only port is enabled. It is strongly recommended to set this to `FALSE`. Possible values: `TRUE`, `FALSE`.
21441
+ :param pulumi.Input[_builtins.int] max_parallel_image_pulls: Set the maximum number of image pulls in parallel.
20282
21442
  :param pulumi.Input[_builtins.int] pod_pids_limit: Controls the maximum number of processes allowed to run in a pod.
20283
21443
  :param pulumi.Input[_builtins.bool] single_process_oom_kill: Defines whether to enable single process OOM killer.
20284
21444
  """
@@ -20294,6 +21454,14 @@ class NodePoolNodeConfigKubeletConfigArgs:
20294
21454
  pulumi.set(__self__, "cpu_cfs_quota_period", cpu_cfs_quota_period)
20295
21455
  if cpu_manager_policy is not None:
20296
21456
  pulumi.set(__self__, "cpu_manager_policy", cpu_manager_policy)
21457
+ if eviction_max_pod_grace_period_seconds is not None:
21458
+ pulumi.set(__self__, "eviction_max_pod_grace_period_seconds", eviction_max_pod_grace_period_seconds)
21459
+ if eviction_minimum_reclaim is not None:
21460
+ pulumi.set(__self__, "eviction_minimum_reclaim", eviction_minimum_reclaim)
21461
+ if eviction_soft is not None:
21462
+ pulumi.set(__self__, "eviction_soft", eviction_soft)
21463
+ if eviction_soft_grace_period is not None:
21464
+ pulumi.set(__self__, "eviction_soft_grace_period", eviction_soft_grace_period)
20297
21465
  if image_gc_high_threshold_percent is not None:
20298
21466
  pulumi.set(__self__, "image_gc_high_threshold_percent", image_gc_high_threshold_percent)
20299
21467
  if image_gc_low_threshold_percent is not None:
@@ -20304,6 +21472,8 @@ class NodePoolNodeConfigKubeletConfigArgs:
20304
21472
  pulumi.set(__self__, "image_minimum_gc_age", image_minimum_gc_age)
20305
21473
  if insecure_kubelet_readonly_port_enabled is not None:
20306
21474
  pulumi.set(__self__, "insecure_kubelet_readonly_port_enabled", insecure_kubelet_readonly_port_enabled)
21475
+ if max_parallel_image_pulls is not None:
21476
+ pulumi.set(__self__, "max_parallel_image_pulls", max_parallel_image_pulls)
20307
21477
  if pod_pids_limit is not None:
20308
21478
  pulumi.set(__self__, "pod_pids_limit", pod_pids_limit)
20309
21479
  if single_process_oom_kill is not None:
@@ -20381,6 +21551,54 @@ class NodePoolNodeConfigKubeletConfigArgs:
20381
21551
  def cpu_manager_policy(self, value: Optional[pulumi.Input[_builtins.str]]):
20382
21552
  pulumi.set(self, "cpu_manager_policy", value)
20383
21553
 
21554
+ @_builtins.property
21555
+ @pulumi.getter(name="evictionMaxPodGracePeriodSeconds")
21556
+ def eviction_max_pod_grace_period_seconds(self) -> Optional[pulumi.Input[_builtins.int]]:
21557
+ """
21558
+ Defines the maximum allowed grace period (in seconds) to use when terminating pods in response to a soft eviction threshold being met.
21559
+ """
21560
+ return pulumi.get(self, "eviction_max_pod_grace_period_seconds")
21561
+
21562
+ @eviction_max_pod_grace_period_seconds.setter
21563
+ def eviction_max_pod_grace_period_seconds(self, value: Optional[pulumi.Input[_builtins.int]]):
21564
+ pulumi.set(self, "eviction_max_pod_grace_period_seconds", value)
21565
+
21566
+ @_builtins.property
21567
+ @pulumi.getter(name="evictionMinimumReclaim")
21568
+ def eviction_minimum_reclaim(self) -> Optional[pulumi.Input['NodePoolNodeConfigKubeletConfigEvictionMinimumReclaimArgs']]:
21569
+ """
21570
+ Defines a map of signal names to percentage that defines minimum reclaims. It describes the minimum amount of a given resource the kubelet will reclaim when performing a pod eviction.
21571
+ """
21572
+ return pulumi.get(self, "eviction_minimum_reclaim")
21573
+
21574
+ @eviction_minimum_reclaim.setter
21575
+ def eviction_minimum_reclaim(self, value: Optional[pulumi.Input['NodePoolNodeConfigKubeletConfigEvictionMinimumReclaimArgs']]):
21576
+ pulumi.set(self, "eviction_minimum_reclaim", value)
21577
+
21578
+ @_builtins.property
21579
+ @pulumi.getter(name="evictionSoft")
21580
+ def eviction_soft(self) -> Optional[pulumi.Input['NodePoolNodeConfigKubeletConfigEvictionSoftArgs']]:
21581
+ """
21582
+ Defines a map of signal names to quantities or percentage that defines soft eviction thresholds.
21583
+ """
21584
+ return pulumi.get(self, "eviction_soft")
21585
+
21586
+ @eviction_soft.setter
21587
+ def eviction_soft(self, value: Optional[pulumi.Input['NodePoolNodeConfigKubeletConfigEvictionSoftArgs']]):
21588
+ pulumi.set(self, "eviction_soft", value)
21589
+
21590
+ @_builtins.property
21591
+ @pulumi.getter(name="evictionSoftGracePeriod")
21592
+ def eviction_soft_grace_period(self) -> Optional[pulumi.Input['NodePoolNodeConfigKubeletConfigEvictionSoftGracePeriodArgs']]:
21593
+ """
21594
+ Defines a map of signal names to durations that defines grace periods for soft eviction thresholds. Each soft eviction threshold must have a corresponding grace period.
21595
+ """
21596
+ return pulumi.get(self, "eviction_soft_grace_period")
21597
+
21598
+ @eviction_soft_grace_period.setter
21599
+ def eviction_soft_grace_period(self, value: Optional[pulumi.Input['NodePoolNodeConfigKubeletConfigEvictionSoftGracePeriodArgs']]):
21600
+ pulumi.set(self, "eviction_soft_grace_period", value)
21601
+
20384
21602
  @_builtins.property
20385
21603
  @pulumi.getter(name="imageGcHighThresholdPercent")
20386
21604
  def image_gc_high_threshold_percent(self) -> Optional[pulumi.Input[_builtins.int]]:
@@ -20441,6 +21659,18 @@ class NodePoolNodeConfigKubeletConfigArgs:
20441
21659
  def insecure_kubelet_readonly_port_enabled(self, value: Optional[pulumi.Input[_builtins.str]]):
20442
21660
  pulumi.set(self, "insecure_kubelet_readonly_port_enabled", value)
20443
21661
 
21662
+ @_builtins.property
21663
+ @pulumi.getter(name="maxParallelImagePulls")
21664
+ def max_parallel_image_pulls(self) -> Optional[pulumi.Input[_builtins.int]]:
21665
+ """
21666
+ Set the maximum number of image pulls in parallel.
21667
+ """
21668
+ return pulumi.get(self, "max_parallel_image_pulls")
21669
+
21670
+ @max_parallel_image_pulls.setter
21671
+ def max_parallel_image_pulls(self, value: Optional[pulumi.Input[_builtins.int]]):
21672
+ pulumi.set(self, "max_parallel_image_pulls", value)
21673
+
20444
21674
  @_builtins.property
20445
21675
  @pulumi.getter(name="podPidsLimit")
20446
21676
  def pod_pids_limit(self) -> Optional[pulumi.Input[_builtins.int]]:
@@ -20466,6 +21696,402 @@ class NodePoolNodeConfigKubeletConfigArgs:
20466
21696
  pulumi.set(self, "single_process_oom_kill", value)
20467
21697
 
20468
21698
 
21699
+ if not MYPY:
21700
+ class NodePoolNodeConfigKubeletConfigEvictionMinimumReclaimArgsDict(TypedDict):
21701
+ imagefs_available: NotRequired[pulumi.Input[_builtins.str]]
21702
+ """
21703
+ Defines percentage of minimum reclaim for imagefs.available.
21704
+ """
21705
+ imagefs_inodes_free: NotRequired[pulumi.Input[_builtins.str]]
21706
+ """
21707
+ Defines percentage of minimum reclaim for imagefs.inodesFree.
21708
+ """
21709
+ memory_available: NotRequired[pulumi.Input[_builtins.str]]
21710
+ """
21711
+ Defines percentage of minimum reclaim for memory.available.
21712
+ """
21713
+ nodefs_available: NotRequired[pulumi.Input[_builtins.str]]
21714
+ """
21715
+ Defines percentage of minimum reclaim for nodefs.available.
21716
+ """
21717
+ nodefs_inodes_free: NotRequired[pulumi.Input[_builtins.str]]
21718
+ """
21719
+ Defines percentage of minimum reclaim for nodefs.inodesFree.
21720
+ """
21721
+ pid_available: NotRequired[pulumi.Input[_builtins.str]]
21722
+ """
21723
+ Defines percentage of minimum reclaim for pid.available.
21724
+ """
21725
+ elif False:
21726
+ NodePoolNodeConfigKubeletConfigEvictionMinimumReclaimArgsDict: TypeAlias = Mapping[str, Any]
21727
+
21728
+ @pulumi.input_type
21729
+ class NodePoolNodeConfigKubeletConfigEvictionMinimumReclaimArgs:
21730
+ def __init__(__self__, *,
21731
+ imagefs_available: Optional[pulumi.Input[_builtins.str]] = None,
21732
+ imagefs_inodes_free: Optional[pulumi.Input[_builtins.str]] = None,
21733
+ memory_available: Optional[pulumi.Input[_builtins.str]] = None,
21734
+ nodefs_available: Optional[pulumi.Input[_builtins.str]] = None,
21735
+ nodefs_inodes_free: Optional[pulumi.Input[_builtins.str]] = None,
21736
+ pid_available: Optional[pulumi.Input[_builtins.str]] = None):
21737
+ """
21738
+ :param pulumi.Input[_builtins.str] imagefs_available: Defines percentage of minimum reclaim for imagefs.available.
21739
+ :param pulumi.Input[_builtins.str] imagefs_inodes_free: Defines percentage of minimum reclaim for imagefs.inodesFree.
21740
+ :param pulumi.Input[_builtins.str] memory_available: Defines percentage of minimum reclaim for memory.available.
21741
+ :param pulumi.Input[_builtins.str] nodefs_available: Defines percentage of minimum reclaim for nodefs.available.
21742
+ :param pulumi.Input[_builtins.str] nodefs_inodes_free: Defines percentage of minimum reclaim for nodefs.inodesFree.
21743
+ :param pulumi.Input[_builtins.str] pid_available: Defines percentage of minimum reclaim for pid.available.
21744
+ """
21745
+ if imagefs_available is not None:
21746
+ pulumi.set(__self__, "imagefs_available", imagefs_available)
21747
+ if imagefs_inodes_free is not None:
21748
+ pulumi.set(__self__, "imagefs_inodes_free", imagefs_inodes_free)
21749
+ if memory_available is not None:
21750
+ pulumi.set(__self__, "memory_available", memory_available)
21751
+ if nodefs_available is not None:
21752
+ pulumi.set(__self__, "nodefs_available", nodefs_available)
21753
+ if nodefs_inodes_free is not None:
21754
+ pulumi.set(__self__, "nodefs_inodes_free", nodefs_inodes_free)
21755
+ if pid_available is not None:
21756
+ pulumi.set(__self__, "pid_available", pid_available)
21757
+
21758
+ @_builtins.property
21759
+ @pulumi.getter(name="imagefsAvailable")
21760
+ def imagefs_available(self) -> Optional[pulumi.Input[_builtins.str]]:
21761
+ """
21762
+ Defines percentage of minimum reclaim for imagefs.available.
21763
+ """
21764
+ return pulumi.get(self, "imagefs_available")
21765
+
21766
+ @imagefs_available.setter
21767
+ def imagefs_available(self, value: Optional[pulumi.Input[_builtins.str]]):
21768
+ pulumi.set(self, "imagefs_available", value)
21769
+
21770
+ @_builtins.property
21771
+ @pulumi.getter(name="imagefsInodesFree")
21772
+ def imagefs_inodes_free(self) -> Optional[pulumi.Input[_builtins.str]]:
21773
+ """
21774
+ Defines percentage of minimum reclaim for imagefs.inodesFree.
21775
+ """
21776
+ return pulumi.get(self, "imagefs_inodes_free")
21777
+
21778
+ @imagefs_inodes_free.setter
21779
+ def imagefs_inodes_free(self, value: Optional[pulumi.Input[_builtins.str]]):
21780
+ pulumi.set(self, "imagefs_inodes_free", value)
21781
+
21782
+ @_builtins.property
21783
+ @pulumi.getter(name="memoryAvailable")
21784
+ def memory_available(self) -> Optional[pulumi.Input[_builtins.str]]:
21785
+ """
21786
+ Defines percentage of minimum reclaim for memory.available.
21787
+ """
21788
+ return pulumi.get(self, "memory_available")
21789
+
21790
+ @memory_available.setter
21791
+ def memory_available(self, value: Optional[pulumi.Input[_builtins.str]]):
21792
+ pulumi.set(self, "memory_available", value)
21793
+
21794
+ @_builtins.property
21795
+ @pulumi.getter(name="nodefsAvailable")
21796
+ def nodefs_available(self) -> Optional[pulumi.Input[_builtins.str]]:
21797
+ """
21798
+ Defines percentage of minimum reclaim for nodefs.available.
21799
+ """
21800
+ return pulumi.get(self, "nodefs_available")
21801
+
21802
+ @nodefs_available.setter
21803
+ def nodefs_available(self, value: Optional[pulumi.Input[_builtins.str]]):
21804
+ pulumi.set(self, "nodefs_available", value)
21805
+
21806
+ @_builtins.property
21807
+ @pulumi.getter(name="nodefsInodesFree")
21808
+ def nodefs_inodes_free(self) -> Optional[pulumi.Input[_builtins.str]]:
21809
+ """
21810
+ Defines percentage of minimum reclaim for nodefs.inodesFree.
21811
+ """
21812
+ return pulumi.get(self, "nodefs_inodes_free")
21813
+
21814
+ @nodefs_inodes_free.setter
21815
+ def nodefs_inodes_free(self, value: Optional[pulumi.Input[_builtins.str]]):
21816
+ pulumi.set(self, "nodefs_inodes_free", value)
21817
+
21818
+ @_builtins.property
21819
+ @pulumi.getter(name="pidAvailable")
21820
+ def pid_available(self) -> Optional[pulumi.Input[_builtins.str]]:
21821
+ """
21822
+ Defines percentage of minimum reclaim for pid.available.
21823
+ """
21824
+ return pulumi.get(self, "pid_available")
21825
+
21826
+ @pid_available.setter
21827
+ def pid_available(self, value: Optional[pulumi.Input[_builtins.str]]):
21828
+ pulumi.set(self, "pid_available", value)
21829
+
21830
+
21831
+ if not MYPY:
21832
+ class NodePoolNodeConfigKubeletConfigEvictionSoftArgsDict(TypedDict):
21833
+ imagefs_available: NotRequired[pulumi.Input[_builtins.str]]
21834
+ """
21835
+ Defines percentage of soft eviction threshold for imagefs.available.
21836
+ """
21837
+ imagefs_inodes_free: NotRequired[pulumi.Input[_builtins.str]]
21838
+ """
21839
+ Defines percentage of soft eviction threshold for imagefs.inodesFree.
21840
+ """
21841
+ memory_available: NotRequired[pulumi.Input[_builtins.str]]
21842
+ """
21843
+ Defines quantity of soft eviction threshold for memory.available.
21844
+ """
21845
+ nodefs_available: NotRequired[pulumi.Input[_builtins.str]]
21846
+ """
21847
+ Defines percentage of soft eviction threshold for nodefs.available.
21848
+ """
21849
+ nodefs_inodes_free: NotRequired[pulumi.Input[_builtins.str]]
21850
+ """
21851
+ Defines percentage of soft eviction threshold for nodefs.inodesFree.
21852
+ """
21853
+ pid_available: NotRequired[pulumi.Input[_builtins.str]]
21854
+ """
21855
+ Defines percentage of soft eviction threshold for pid.available.
21856
+ """
21857
+ elif False:
21858
+ NodePoolNodeConfigKubeletConfigEvictionSoftArgsDict: TypeAlias = Mapping[str, Any]
21859
+
21860
+ @pulumi.input_type
21861
+ class NodePoolNodeConfigKubeletConfigEvictionSoftArgs:
21862
+ def __init__(__self__, *,
21863
+ imagefs_available: Optional[pulumi.Input[_builtins.str]] = None,
21864
+ imagefs_inodes_free: Optional[pulumi.Input[_builtins.str]] = None,
21865
+ memory_available: Optional[pulumi.Input[_builtins.str]] = None,
21866
+ nodefs_available: Optional[pulumi.Input[_builtins.str]] = None,
21867
+ nodefs_inodes_free: Optional[pulumi.Input[_builtins.str]] = None,
21868
+ pid_available: Optional[pulumi.Input[_builtins.str]] = None):
21869
+ """
21870
+ :param pulumi.Input[_builtins.str] imagefs_available: Defines percentage of soft eviction threshold for imagefs.available.
21871
+ :param pulumi.Input[_builtins.str] imagefs_inodes_free: Defines percentage of soft eviction threshold for imagefs.inodesFree.
21872
+ :param pulumi.Input[_builtins.str] memory_available: Defines quantity of soft eviction threshold for memory.available.
21873
+ :param pulumi.Input[_builtins.str] nodefs_available: Defines percentage of soft eviction threshold for nodefs.available.
21874
+ :param pulumi.Input[_builtins.str] nodefs_inodes_free: Defines percentage of soft eviction threshold for nodefs.inodesFree.
21875
+ :param pulumi.Input[_builtins.str] pid_available: Defines percentage of soft eviction threshold for pid.available.
21876
+ """
21877
+ if imagefs_available is not None:
21878
+ pulumi.set(__self__, "imagefs_available", imagefs_available)
21879
+ if imagefs_inodes_free is not None:
21880
+ pulumi.set(__self__, "imagefs_inodes_free", imagefs_inodes_free)
21881
+ if memory_available is not None:
21882
+ pulumi.set(__self__, "memory_available", memory_available)
21883
+ if nodefs_available is not None:
21884
+ pulumi.set(__self__, "nodefs_available", nodefs_available)
21885
+ if nodefs_inodes_free is not None:
21886
+ pulumi.set(__self__, "nodefs_inodes_free", nodefs_inodes_free)
21887
+ if pid_available is not None:
21888
+ pulumi.set(__self__, "pid_available", pid_available)
21889
+
21890
+ @_builtins.property
21891
+ @pulumi.getter(name="imagefsAvailable")
21892
+ def imagefs_available(self) -> Optional[pulumi.Input[_builtins.str]]:
21893
+ """
21894
+ Defines percentage of soft eviction threshold for imagefs.available.
21895
+ """
21896
+ return pulumi.get(self, "imagefs_available")
21897
+
21898
+ @imagefs_available.setter
21899
+ def imagefs_available(self, value: Optional[pulumi.Input[_builtins.str]]):
21900
+ pulumi.set(self, "imagefs_available", value)
21901
+
21902
+ @_builtins.property
21903
+ @pulumi.getter(name="imagefsInodesFree")
21904
+ def imagefs_inodes_free(self) -> Optional[pulumi.Input[_builtins.str]]:
21905
+ """
21906
+ Defines percentage of soft eviction threshold for imagefs.inodesFree.
21907
+ """
21908
+ return pulumi.get(self, "imagefs_inodes_free")
21909
+
21910
+ @imagefs_inodes_free.setter
21911
+ def imagefs_inodes_free(self, value: Optional[pulumi.Input[_builtins.str]]):
21912
+ pulumi.set(self, "imagefs_inodes_free", value)
21913
+
21914
+ @_builtins.property
21915
+ @pulumi.getter(name="memoryAvailable")
21916
+ def memory_available(self) -> Optional[pulumi.Input[_builtins.str]]:
21917
+ """
21918
+ Defines quantity of soft eviction threshold for memory.available.
21919
+ """
21920
+ return pulumi.get(self, "memory_available")
21921
+
21922
+ @memory_available.setter
21923
+ def memory_available(self, value: Optional[pulumi.Input[_builtins.str]]):
21924
+ pulumi.set(self, "memory_available", value)
21925
+
21926
+ @_builtins.property
21927
+ @pulumi.getter(name="nodefsAvailable")
21928
+ def nodefs_available(self) -> Optional[pulumi.Input[_builtins.str]]:
21929
+ """
21930
+ Defines percentage of soft eviction threshold for nodefs.available.
21931
+ """
21932
+ return pulumi.get(self, "nodefs_available")
21933
+
21934
+ @nodefs_available.setter
21935
+ def nodefs_available(self, value: Optional[pulumi.Input[_builtins.str]]):
21936
+ pulumi.set(self, "nodefs_available", value)
21937
+
21938
+ @_builtins.property
21939
+ @pulumi.getter(name="nodefsInodesFree")
21940
+ def nodefs_inodes_free(self) -> Optional[pulumi.Input[_builtins.str]]:
21941
+ """
21942
+ Defines percentage of soft eviction threshold for nodefs.inodesFree.
21943
+ """
21944
+ return pulumi.get(self, "nodefs_inodes_free")
21945
+
21946
+ @nodefs_inodes_free.setter
21947
+ def nodefs_inodes_free(self, value: Optional[pulumi.Input[_builtins.str]]):
21948
+ pulumi.set(self, "nodefs_inodes_free", value)
21949
+
21950
+ @_builtins.property
21951
+ @pulumi.getter(name="pidAvailable")
21952
+ def pid_available(self) -> Optional[pulumi.Input[_builtins.str]]:
21953
+ """
21954
+ Defines percentage of soft eviction threshold for pid.available.
21955
+ """
21956
+ return pulumi.get(self, "pid_available")
21957
+
21958
+ @pid_available.setter
21959
+ def pid_available(self, value: Optional[pulumi.Input[_builtins.str]]):
21960
+ pulumi.set(self, "pid_available", value)
21961
+
21962
+
21963
+ if not MYPY:
21964
+ class NodePoolNodeConfigKubeletConfigEvictionSoftGracePeriodArgsDict(TypedDict):
21965
+ imagefs_available: NotRequired[pulumi.Input[_builtins.str]]
21966
+ """
21967
+ Defines grace period for the imagefs.available soft eviction threshold
21968
+ """
21969
+ imagefs_inodes_free: NotRequired[pulumi.Input[_builtins.str]]
21970
+ """
21971
+ Defines grace period for the imagefs.inodesFree soft eviction threshold.
21972
+ """
21973
+ memory_available: NotRequired[pulumi.Input[_builtins.str]]
21974
+ """
21975
+ Defines grace period for the memory.available soft eviction threshold.
21976
+ """
21977
+ nodefs_available: NotRequired[pulumi.Input[_builtins.str]]
21978
+ """
21979
+ Defines grace period for the nodefs.available soft eviction threshold.
21980
+ """
21981
+ nodefs_inodes_free: NotRequired[pulumi.Input[_builtins.str]]
21982
+ """
21983
+ Defines grace period for the nodefs.inodesFree soft eviction threshold.
21984
+ """
21985
+ pid_available: NotRequired[pulumi.Input[_builtins.str]]
21986
+ """
21987
+ Defines grace period for the pid.available soft eviction threshold.
21988
+ """
21989
+ elif False:
21990
+ NodePoolNodeConfigKubeletConfigEvictionSoftGracePeriodArgsDict: TypeAlias = Mapping[str, Any]
21991
+
21992
+ @pulumi.input_type
21993
+ class NodePoolNodeConfigKubeletConfigEvictionSoftGracePeriodArgs:
21994
+ def __init__(__self__, *,
21995
+ imagefs_available: Optional[pulumi.Input[_builtins.str]] = None,
21996
+ imagefs_inodes_free: Optional[pulumi.Input[_builtins.str]] = None,
21997
+ memory_available: Optional[pulumi.Input[_builtins.str]] = None,
21998
+ nodefs_available: Optional[pulumi.Input[_builtins.str]] = None,
21999
+ nodefs_inodes_free: Optional[pulumi.Input[_builtins.str]] = None,
22000
+ pid_available: Optional[pulumi.Input[_builtins.str]] = None):
22001
+ """
22002
+ :param pulumi.Input[_builtins.str] imagefs_available: Defines grace period for the imagefs.available soft eviction threshold
22003
+ :param pulumi.Input[_builtins.str] imagefs_inodes_free: Defines grace period for the imagefs.inodesFree soft eviction threshold.
22004
+ :param pulumi.Input[_builtins.str] memory_available: Defines grace period for the memory.available soft eviction threshold.
22005
+ :param pulumi.Input[_builtins.str] nodefs_available: Defines grace period for the nodefs.available soft eviction threshold.
22006
+ :param pulumi.Input[_builtins.str] nodefs_inodes_free: Defines grace period for the nodefs.inodesFree soft eviction threshold.
22007
+ :param pulumi.Input[_builtins.str] pid_available: Defines grace period for the pid.available soft eviction threshold.
22008
+ """
22009
+ if imagefs_available is not None:
22010
+ pulumi.set(__self__, "imagefs_available", imagefs_available)
22011
+ if imagefs_inodes_free is not None:
22012
+ pulumi.set(__self__, "imagefs_inodes_free", imagefs_inodes_free)
22013
+ if memory_available is not None:
22014
+ pulumi.set(__self__, "memory_available", memory_available)
22015
+ if nodefs_available is not None:
22016
+ pulumi.set(__self__, "nodefs_available", nodefs_available)
22017
+ if nodefs_inodes_free is not None:
22018
+ pulumi.set(__self__, "nodefs_inodes_free", nodefs_inodes_free)
22019
+ if pid_available is not None:
22020
+ pulumi.set(__self__, "pid_available", pid_available)
22021
+
22022
+ @_builtins.property
22023
+ @pulumi.getter(name="imagefsAvailable")
22024
+ def imagefs_available(self) -> Optional[pulumi.Input[_builtins.str]]:
22025
+ """
22026
+ Defines grace period for the imagefs.available soft eviction threshold
22027
+ """
22028
+ return pulumi.get(self, "imagefs_available")
22029
+
22030
+ @imagefs_available.setter
22031
+ def imagefs_available(self, value: Optional[pulumi.Input[_builtins.str]]):
22032
+ pulumi.set(self, "imagefs_available", value)
22033
+
22034
+ @_builtins.property
22035
+ @pulumi.getter(name="imagefsInodesFree")
22036
+ def imagefs_inodes_free(self) -> Optional[pulumi.Input[_builtins.str]]:
22037
+ """
22038
+ Defines grace period for the imagefs.inodesFree soft eviction threshold.
22039
+ """
22040
+ return pulumi.get(self, "imagefs_inodes_free")
22041
+
22042
+ @imagefs_inodes_free.setter
22043
+ def imagefs_inodes_free(self, value: Optional[pulumi.Input[_builtins.str]]):
22044
+ pulumi.set(self, "imagefs_inodes_free", value)
22045
+
22046
+ @_builtins.property
22047
+ @pulumi.getter(name="memoryAvailable")
22048
+ def memory_available(self) -> Optional[pulumi.Input[_builtins.str]]:
22049
+ """
22050
+ Defines grace period for the memory.available soft eviction threshold.
22051
+ """
22052
+ return pulumi.get(self, "memory_available")
22053
+
22054
+ @memory_available.setter
22055
+ def memory_available(self, value: Optional[pulumi.Input[_builtins.str]]):
22056
+ pulumi.set(self, "memory_available", value)
22057
+
22058
+ @_builtins.property
22059
+ @pulumi.getter(name="nodefsAvailable")
22060
+ def nodefs_available(self) -> Optional[pulumi.Input[_builtins.str]]:
22061
+ """
22062
+ Defines grace period for the nodefs.available soft eviction threshold.
22063
+ """
22064
+ return pulumi.get(self, "nodefs_available")
22065
+
22066
+ @nodefs_available.setter
22067
+ def nodefs_available(self, value: Optional[pulumi.Input[_builtins.str]]):
22068
+ pulumi.set(self, "nodefs_available", value)
22069
+
22070
+ @_builtins.property
22071
+ @pulumi.getter(name="nodefsInodesFree")
22072
+ def nodefs_inodes_free(self) -> Optional[pulumi.Input[_builtins.str]]:
22073
+ """
22074
+ Defines grace period for the nodefs.inodesFree soft eviction threshold.
22075
+ """
22076
+ return pulumi.get(self, "nodefs_inodes_free")
22077
+
22078
+ @nodefs_inodes_free.setter
22079
+ def nodefs_inodes_free(self, value: Optional[pulumi.Input[_builtins.str]]):
22080
+ pulumi.set(self, "nodefs_inodes_free", value)
22081
+
22082
+ @_builtins.property
22083
+ @pulumi.getter(name="pidAvailable")
22084
+ def pid_available(self) -> Optional[pulumi.Input[_builtins.str]]:
22085
+ """
22086
+ Defines grace period for the pid.available soft eviction threshold.
22087
+ """
22088
+ return pulumi.get(self, "pid_available")
22089
+
22090
+ @pid_available.setter
22091
+ def pid_available(self, value: Optional[pulumi.Input[_builtins.str]]):
22092
+ pulumi.set(self, "pid_available", value)
22093
+
22094
+
20469
22095
  if not MYPY:
20470
22096
  class NodePoolNodeConfigLinuxNodeConfigArgsDict(TypedDict):
20471
22097
  cgroup_mode: NotRequired[pulumi.Input[_builtins.str]]
@@ -20480,6 +22106,14 @@ if not MYPY:
20480
22106
  """
20481
22107
  The Linux kernel parameters to be applied to the nodes and all pods running on the nodes.
20482
22108
  """
22109
+ transparent_hugepage_defrag: NotRequired[pulumi.Input[_builtins.str]]
22110
+ """
22111
+ The Linux kernel transparent hugepage defrag setting.
22112
+ """
22113
+ transparent_hugepage_enabled: NotRequired[pulumi.Input[_builtins.str]]
22114
+ """
22115
+ The Linux kernel transparent hugepage setting.
22116
+ """
20483
22117
  elif False:
20484
22118
  NodePoolNodeConfigLinuxNodeConfigArgsDict: TypeAlias = Mapping[str, Any]
20485
22119
 
@@ -20488,11 +22122,15 @@ class NodePoolNodeConfigLinuxNodeConfigArgs:
20488
22122
  def __init__(__self__, *,
20489
22123
  cgroup_mode: Optional[pulumi.Input[_builtins.str]] = None,
20490
22124
  hugepages_config: Optional[pulumi.Input['NodePoolNodeConfigLinuxNodeConfigHugepagesConfigArgs']] = None,
20491
- sysctls: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None):
22125
+ sysctls: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
22126
+ transparent_hugepage_defrag: Optional[pulumi.Input[_builtins.str]] = None,
22127
+ transparent_hugepage_enabled: Optional[pulumi.Input[_builtins.str]] = None):
20492
22128
  """
20493
22129
  :param pulumi.Input[_builtins.str] cgroup_mode: cgroupMode specifies the cgroup mode to be used on the node.
20494
22130
  :param pulumi.Input['NodePoolNodeConfigLinuxNodeConfigHugepagesConfigArgs'] hugepages_config: Amounts for 2M and 1G hugepages.
20495
22131
  :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] sysctls: The Linux kernel parameters to be applied to the nodes and all pods running on the nodes.
22132
+ :param pulumi.Input[_builtins.str] transparent_hugepage_defrag: The Linux kernel transparent hugepage defrag setting.
22133
+ :param pulumi.Input[_builtins.str] transparent_hugepage_enabled: The Linux kernel transparent hugepage setting.
20496
22134
  """
20497
22135
  if cgroup_mode is not None:
20498
22136
  pulumi.set(__self__, "cgroup_mode", cgroup_mode)
@@ -20500,6 +22138,10 @@ class NodePoolNodeConfigLinuxNodeConfigArgs:
20500
22138
  pulumi.set(__self__, "hugepages_config", hugepages_config)
20501
22139
  if sysctls is not None:
20502
22140
  pulumi.set(__self__, "sysctls", sysctls)
22141
+ if transparent_hugepage_defrag is not None:
22142
+ pulumi.set(__self__, "transparent_hugepage_defrag", transparent_hugepage_defrag)
22143
+ if transparent_hugepage_enabled is not None:
22144
+ pulumi.set(__self__, "transparent_hugepage_enabled", transparent_hugepage_enabled)
20503
22145
 
20504
22146
  @_builtins.property
20505
22147
  @pulumi.getter(name="cgroupMode")
@@ -20537,6 +22179,30 @@ class NodePoolNodeConfigLinuxNodeConfigArgs:
20537
22179
  def sysctls(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
20538
22180
  pulumi.set(self, "sysctls", value)
20539
22181
 
22182
+ @_builtins.property
22183
+ @pulumi.getter(name="transparentHugepageDefrag")
22184
+ def transparent_hugepage_defrag(self) -> Optional[pulumi.Input[_builtins.str]]:
22185
+ """
22186
+ The Linux kernel transparent hugepage defrag setting.
22187
+ """
22188
+ return pulumi.get(self, "transparent_hugepage_defrag")
22189
+
22190
+ @transparent_hugepage_defrag.setter
22191
+ def transparent_hugepage_defrag(self, value: Optional[pulumi.Input[_builtins.str]]):
22192
+ pulumi.set(self, "transparent_hugepage_defrag", value)
22193
+
22194
+ @_builtins.property
22195
+ @pulumi.getter(name="transparentHugepageEnabled")
22196
+ def transparent_hugepage_enabled(self) -> Optional[pulumi.Input[_builtins.str]]:
22197
+ """
22198
+ The Linux kernel transparent hugepage setting.
22199
+ """
22200
+ return pulumi.get(self, "transparent_hugepage_enabled")
22201
+
22202
+ @transparent_hugepage_enabled.setter
22203
+ def transparent_hugepage_enabled(self, value: Optional[pulumi.Input[_builtins.str]]):
22204
+ pulumi.set(self, "transparent_hugepage_enabled", value)
22205
+
20540
22206
 
20541
22207
  if not MYPY:
20542
22208
  class NodePoolNodeConfigLinuxNodeConfigHugepagesConfigArgsDict(TypedDict):
@@ -20850,17 +22516,25 @@ if not MYPY:
20850
22516
  """
20851
22517
  .
20852
22518
  """
22519
+ min_node_cpus: NotRequired[pulumi.Input[_builtins.int]]
22520
+ """
22521
+ Specifies the minimum number of vCPUs that each sole tenant node must have to use CPU overcommit. If not specified, the CPU overcommit feature is disabled.
22522
+ """
20853
22523
  elif False:
20854
22524
  NodePoolNodeConfigSoleTenantConfigArgsDict: TypeAlias = Mapping[str, Any]
20855
22525
 
20856
22526
  @pulumi.input_type
20857
22527
  class NodePoolNodeConfigSoleTenantConfigArgs:
20858
22528
  def __init__(__self__, *,
20859
- node_affinities: pulumi.Input[Sequence[pulumi.Input['NodePoolNodeConfigSoleTenantConfigNodeAffinityArgs']]]):
22529
+ node_affinities: pulumi.Input[Sequence[pulumi.Input['NodePoolNodeConfigSoleTenantConfigNodeAffinityArgs']]],
22530
+ min_node_cpus: Optional[pulumi.Input[_builtins.int]] = None):
20860
22531
  """
20861
22532
  :param pulumi.Input[Sequence[pulumi.Input['NodePoolNodeConfigSoleTenantConfigNodeAffinityArgs']]] node_affinities: .
22533
+ :param pulumi.Input[_builtins.int] min_node_cpus: Specifies the minimum number of vCPUs that each sole tenant node must have to use CPU overcommit. If not specified, the CPU overcommit feature is disabled.
20862
22534
  """
20863
22535
  pulumi.set(__self__, "node_affinities", node_affinities)
22536
+ if min_node_cpus is not None:
22537
+ pulumi.set(__self__, "min_node_cpus", min_node_cpus)
20864
22538
 
20865
22539
  @_builtins.property
20866
22540
  @pulumi.getter(name="nodeAffinities")
@@ -20874,6 +22548,18 @@ class NodePoolNodeConfigSoleTenantConfigArgs:
20874
22548
  def node_affinities(self, value: pulumi.Input[Sequence[pulumi.Input['NodePoolNodeConfigSoleTenantConfigNodeAffinityArgs']]]):
20875
22549
  pulumi.set(self, "node_affinities", value)
20876
22550
 
22551
+ @_builtins.property
22552
+ @pulumi.getter(name="minNodeCpus")
22553
+ def min_node_cpus(self) -> Optional[pulumi.Input[_builtins.int]]:
22554
+ """
22555
+ Specifies the minimum number of vCPUs that each sole tenant node must have to use CPU overcommit. If not specified, the CPU overcommit feature is disabled.
22556
+ """
22557
+ return pulumi.get(self, "min_node_cpus")
22558
+
22559
+ @min_node_cpus.setter
22560
+ def min_node_cpus(self, value: Optional[pulumi.Input[_builtins.int]]):
22561
+ pulumi.set(self, "min_node_cpus", value)
22562
+
20877
22563
 
20878
22564
  if not MYPY:
20879
22565
  class NodePoolNodeConfigSoleTenantConfigNodeAffinityArgsDict(TypedDict):