Class RegionBackendServiceArgs.Builder

  • Enclosing class:
    RegionBackendServiceArgs

    public static final class RegionBackendServiceArgs.Builder
    extends java.lang.Object
    • Method Detail

      • affinityCookieTtlSec

        public RegionBackendServiceArgs.Builder affinityCookieTtlSec​(@Nullable
                                                                     com.pulumi.core.Output<java.lang.Integer> affinityCookieTtlSec)
        Parameters:
        affinityCookieTtlSec - Lifetime of cookies in seconds if session_affinity is GENERATED_COOKIE. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value for TTL is one day. When the load balancing scheme is INTERNAL, this field is not used.
        Returns:
        builder
      • affinityCookieTtlSec

        public RegionBackendServiceArgs.Builder affinityCookieTtlSec​(java.lang.Integer affinityCookieTtlSec)
        Parameters:
        affinityCookieTtlSec - Lifetime of cookies in seconds if session_affinity is GENERATED_COOKIE. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value for TTL is one day. When the load balancing scheme is INTERNAL, this field is not used.
        Returns:
        builder
      • circuitBreakers

        public RegionBackendServiceArgs.Builder circuitBreakers​(@Nullable
                                                                com.pulumi.core.Output<RegionBackendServiceCircuitBreakersArgs> circuitBreakers)
        Parameters:
        circuitBreakers - Settings controlling the volume of connections to a backend service. This field is applicable only when the `load_balancing_scheme` is set to INTERNAL_MANAGED and the `protocol` is set to HTTP, HTTPS, or HTTP2. Structure is documented below.
        Returns:
        builder
      • circuitBreakers

        public RegionBackendServiceArgs.Builder circuitBreakers​(RegionBackendServiceCircuitBreakersArgs circuitBreakers)
        Parameters:
        circuitBreakers - Settings controlling the volume of connections to a backend service. This field is applicable only when the `load_balancing_scheme` is set to INTERNAL_MANAGED and the `protocol` is set to HTTP, HTTPS, or HTTP2. Structure is documented below.
        Returns:
        builder
      • connectionDrainingTimeoutSec

        public RegionBackendServiceArgs.Builder connectionDrainingTimeoutSec​(@Nullable
                                                                             com.pulumi.core.Output<java.lang.Integer> connectionDrainingTimeoutSec)
        Parameters:
        connectionDrainingTimeoutSec - Time for which instance will be drained (not accept new connections, but still work to finish started).
        Returns:
        builder
      • connectionDrainingTimeoutSec

        public RegionBackendServiceArgs.Builder connectionDrainingTimeoutSec​(java.lang.Integer connectionDrainingTimeoutSec)
        Parameters:
        connectionDrainingTimeoutSec - Time for which instance will be drained (not accept new connections, but still work to finish started).
        Returns:
        builder
      • connectionTrackingPolicy

        public RegionBackendServiceArgs.Builder connectionTrackingPolicy​(@Nullable
                                                                         com.pulumi.core.Output<RegionBackendServiceConnectionTrackingPolicyArgs> connectionTrackingPolicy)
        Parameters:
        connectionTrackingPolicy - Connection Tracking configuration for this BackendService. This is available only for Layer 4 Internal Load Balancing and Network Load Balancing. Structure is documented below.
        Returns:
        builder
      • connectionTrackingPolicy

        public RegionBackendServiceArgs.Builder connectionTrackingPolicy​(RegionBackendServiceConnectionTrackingPolicyArgs connectionTrackingPolicy)
        Parameters:
        connectionTrackingPolicy - Connection Tracking configuration for this BackendService. This is available only for Layer 4 Internal Load Balancing and Network Load Balancing. Structure is documented below.
        Returns:
        builder
      • consistentHash

        public RegionBackendServiceArgs.Builder consistentHash​(@Nullable
                                                               com.pulumi.core.Output<RegionBackendServiceConsistentHashArgs> consistentHash)
        Parameters:
        consistentHash - Consistent Hash-based load balancing can be used to provide soft session affinity based on HTTP headers, cookies or other properties. This load balancing policy is applicable only for HTTP connections. The affinity to a particular destination host will be lost when one or more hosts are added/removed from the destination service. This field specifies parameters that control consistent hashing. This field only applies when all of the following are true -
        Returns:
        builder
      • consistentHash

        public RegionBackendServiceArgs.Builder consistentHash​(RegionBackendServiceConsistentHashArgs consistentHash)
        Parameters:
        consistentHash - Consistent Hash-based load balancing can be used to provide soft session affinity based on HTTP headers, cookies or other properties. This load balancing policy is applicable only for HTTP connections. The affinity to a particular destination host will be lost when one or more hosts are added/removed from the destination service. This field specifies parameters that control consistent hashing. This field only applies when all of the following are true -
        Returns:
        builder
      • description

        public RegionBackendServiceArgs.Builder description​(@Nullable
                                                            com.pulumi.core.Output<java.lang.String> description)
        Parameters:
        description - An optional description of this resource.
        Returns:
        builder
      • description

        public RegionBackendServiceArgs.Builder description​(java.lang.String description)
        Parameters:
        description - An optional description of this resource.
        Returns:
        builder
      • enableCdn

        public RegionBackendServiceArgs.Builder enableCdn​(@Nullable
                                                          com.pulumi.core.Output<java.lang.Boolean> enableCdn)
        Parameters:
        enableCdn - If true, enable Cloud CDN for this RegionBackendService.
        Returns:
        builder
      • enableCdn

        public RegionBackendServiceArgs.Builder enableCdn​(java.lang.Boolean enableCdn)
        Parameters:
        enableCdn - If true, enable Cloud CDN for this RegionBackendService.
        Returns:
        builder
      • healthChecks

        public RegionBackendServiceArgs.Builder healthChecks​(@Nullable
                                                             com.pulumi.core.Output<java.lang.String> healthChecks)
        Parameters:
        healthChecks - The set of URLs to HealthCheck resources for health checking this RegionBackendService. Currently at most one health check can be specified. A health check must be specified unless the backend service uses an internet or serverless NEG as a backend.
        Returns:
        builder
      • healthChecks

        public RegionBackendServiceArgs.Builder healthChecks​(java.lang.String healthChecks)
        Parameters:
        healthChecks - The set of URLs to HealthCheck resources for health checking this RegionBackendService. Currently at most one health check can be specified. A health check must be specified unless the backend service uses an internet or serverless NEG as a backend.
        Returns:
        builder
      • loadBalancingScheme

        public RegionBackendServiceArgs.Builder loadBalancingScheme​(@Nullable
                                                                    com.pulumi.core.Output<java.lang.String> loadBalancingScheme)
        Parameters:
        loadBalancingScheme - Indicates what kind of load balancing this regional backend service will be used for. A backend service created for one type of load balancing cannot be used with the other(s). For more information, refer to [Choosing a load balancer](https://cloud.google.com/load-balancing/docs/backend-service). Default value is `INTERNAL`. Possible values are: `EXTERNAL`, `EXTERNAL_MANAGED`, `INTERNAL`, `INTERNAL_MANAGED`.
        Returns:
        builder
      • loadBalancingScheme

        public RegionBackendServiceArgs.Builder loadBalancingScheme​(java.lang.String loadBalancingScheme)
        Parameters:
        loadBalancingScheme - Indicates what kind of load balancing this regional backend service will be used for. A backend service created for one type of load balancing cannot be used with the other(s). For more information, refer to [Choosing a load balancer](https://cloud.google.com/load-balancing/docs/backend-service). Default value is `INTERNAL`. Possible values are: `EXTERNAL`, `EXTERNAL_MANAGED`, `INTERNAL`, `INTERNAL_MANAGED`.
        Returns:
        builder
      • localityLbPolicy

        public RegionBackendServiceArgs.Builder localityLbPolicy​(@Nullable
                                                                 com.pulumi.core.Output<java.lang.String> localityLbPolicy)
        Parameters:
        localityLbPolicy - The load balancing algorithm used within the scope of the locality. The possible values are:
        Returns:
        builder
      • localityLbPolicy

        public RegionBackendServiceArgs.Builder localityLbPolicy​(java.lang.String localityLbPolicy)
        Parameters:
        localityLbPolicy - The load balancing algorithm used within the scope of the locality. The possible values are:
        Returns:
        builder
      • logConfig

        public RegionBackendServiceArgs.Builder logConfig​(@Nullable
                                                          com.pulumi.core.Output<RegionBackendServiceLogConfigArgs> logConfig)
        Parameters:
        logConfig - This field denotes the logging options for the load balancer traffic served by this backend service. If logging is enabled, logs will be exported to Stackdriver. Structure is documented below.
        Returns:
        builder
      • logConfig

        public RegionBackendServiceArgs.Builder logConfig​(RegionBackendServiceLogConfigArgs logConfig)
        Parameters:
        logConfig - This field denotes the logging options for the load balancer traffic served by this backend service. If logging is enabled, logs will be exported to Stackdriver. Structure is documented below.
        Returns:
        builder
      • name

        public RegionBackendServiceArgs.Builder name​(@Nullable
                                                     com.pulumi.core.Output<java.lang.String> name)
        Parameters:
        name - Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `a-z?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. ***
        Returns:
        builder
      • name

        public RegionBackendServiceArgs.Builder name​(java.lang.String name)
        Parameters:
        name - Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression `a-z?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. ***
        Returns:
        builder
      • network

        public RegionBackendServiceArgs.Builder network​(@Nullable
                                                        com.pulumi.core.Output<java.lang.String> network)
        Parameters:
        network - The URL of the network to which this backend service belongs. This field can only be specified when the load balancing scheme is set to INTERNAL.
        Returns:
        builder
      • network

        public RegionBackendServiceArgs.Builder network​(java.lang.String network)
        Parameters:
        network - The URL of the network to which this backend service belongs. This field can only be specified when the load balancing scheme is set to INTERNAL.
        Returns:
        builder
      • outlierDetection

        public RegionBackendServiceArgs.Builder outlierDetection​(@Nullable
                                                                 com.pulumi.core.Output<RegionBackendServiceOutlierDetectionArgs> outlierDetection)
        Parameters:
        outlierDetection - Settings controlling eviction of unhealthy hosts from the load balancing pool. This field is applicable only when the `load_balancing_scheme` is set to INTERNAL_MANAGED and the `protocol` is set to HTTP, HTTPS, or HTTP2. Structure is documented below.
        Returns:
        builder
      • outlierDetection

        public RegionBackendServiceArgs.Builder outlierDetection​(RegionBackendServiceOutlierDetectionArgs outlierDetection)
        Parameters:
        outlierDetection - Settings controlling eviction of unhealthy hosts from the load balancing pool. This field is applicable only when the `load_balancing_scheme` is set to INTERNAL_MANAGED and the `protocol` is set to HTTP, HTTPS, or HTTP2. Structure is documented below.
        Returns:
        builder
      • portName

        public RegionBackendServiceArgs.Builder portName​(@Nullable
                                                         com.pulumi.core.Output<java.lang.String> portName)
        Parameters:
        portName - A named port on a backend instance group representing the port for communication to the backend VMs in that group. Required when the loadBalancingScheme is EXTERNAL, EXTERNAL_MANAGED, INTERNAL_MANAGED, or INTERNAL_SELF_MANAGED and the backends are instance groups. The named port must be defined on each backend instance group. This parameter has no meaning if the backends are NEGs. API sets a default of "http" if not given. Must be omitted when the loadBalancingScheme is INTERNAL (Internal TCP/UDP Load Balancing).
        Returns:
        builder
      • portName

        public RegionBackendServiceArgs.Builder portName​(java.lang.String portName)
        Parameters:
        portName - A named port on a backend instance group representing the port for communication to the backend VMs in that group. Required when the loadBalancingScheme is EXTERNAL, EXTERNAL_MANAGED, INTERNAL_MANAGED, or INTERNAL_SELF_MANAGED and the backends are instance groups. The named port must be defined on each backend instance group. This parameter has no meaning if the backends are NEGs. API sets a default of "http" if not given. Must be omitted when the loadBalancingScheme is INTERNAL (Internal TCP/UDP Load Balancing).
        Returns:
        builder
      • project

        public RegionBackendServiceArgs.Builder project​(@Nullable
                                                        com.pulumi.core.Output<java.lang.String> project)
        Parameters:
        project - The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
        Returns:
        builder
      • project

        public RegionBackendServiceArgs.Builder project​(java.lang.String project)
        Parameters:
        project - The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
        Returns:
        builder
      • protocol

        public RegionBackendServiceArgs.Builder protocol​(@Nullable
                                                         com.pulumi.core.Output<java.lang.String> protocol)
        Parameters:
        protocol - The protocol this RegionBackendService uses to communicate with backends. The default is HTTP. **NOTE**: HTTP2 is only valid for beta HTTP/2 load balancer types and may result in errors if used with the GA API. Possible values are: `HTTP`, `HTTPS`, `HTTP2`, `SSL`, `TCP`, `UDP`, `GRPC`, `UNSPECIFIED`.
        Returns:
        builder
      • protocol

        public RegionBackendServiceArgs.Builder protocol​(java.lang.String protocol)
        Parameters:
        protocol - The protocol this RegionBackendService uses to communicate with backends. The default is HTTP. **NOTE**: HTTP2 is only valid for beta HTTP/2 load balancer types and may result in errors if used with the GA API. Possible values are: `HTTP`, `HTTPS`, `HTTP2`, `SSL`, `TCP`, `UDP`, `GRPC`, `UNSPECIFIED`.
        Returns:
        builder
      • region

        public RegionBackendServiceArgs.Builder region​(@Nullable
                                                       com.pulumi.core.Output<java.lang.String> region)
        Parameters:
        region - The Region in which the created backend service should reside. If it is not provided, the provider region is used.
        Returns:
        builder
      • region

        public RegionBackendServiceArgs.Builder region​(java.lang.String region)
        Parameters:
        region - The Region in which the created backend service should reside. If it is not provided, the provider region is used.
        Returns:
        builder
      • securityPolicy

        public RegionBackendServiceArgs.Builder securityPolicy​(@Nullable
                                                               com.pulumi.core.Output<java.lang.String> securityPolicy)
        Parameters:
        securityPolicy - The security policy associated with this backend service.
        Returns:
        builder
      • securityPolicy

        public RegionBackendServiceArgs.Builder securityPolicy​(java.lang.String securityPolicy)
        Parameters:
        securityPolicy - The security policy associated with this backend service.
        Returns:
        builder
      • sessionAffinity

        public RegionBackendServiceArgs.Builder sessionAffinity​(@Nullable
                                                                com.pulumi.core.Output<java.lang.String> sessionAffinity)
        Parameters:
        sessionAffinity - Type of session affinity to use. The default is NONE. Session affinity is not applicable if the protocol is UDP. Possible values are: `NONE`, `CLIENT_IP`, `CLIENT_IP_PORT_PROTO`, `CLIENT_IP_PROTO`, `GENERATED_COOKIE`, `HEADER_FIELD`, `HTTP_COOKIE`, `CLIENT_IP_NO_DESTINATION`.
        Returns:
        builder
      • sessionAffinity

        public RegionBackendServiceArgs.Builder sessionAffinity​(java.lang.String sessionAffinity)
        Parameters:
        sessionAffinity - Type of session affinity to use. The default is NONE. Session affinity is not applicable if the protocol is UDP. Possible values are: `NONE`, `CLIENT_IP`, `CLIENT_IP_PORT_PROTO`, `CLIENT_IP_PROTO`, `GENERATED_COOKIE`, `HEADER_FIELD`, `HTTP_COOKIE`, `CLIENT_IP_NO_DESTINATION`.
        Returns:
        builder
      • subsetting

        public RegionBackendServiceArgs.Builder subsetting​(@Nullable
                                                           com.pulumi.core.Output<RegionBackendServiceSubsettingArgs> subsetting)
        Parameters:
        subsetting - Subsetting configuration for this BackendService. Currently this is applicable only for Internal TCP/UDP load balancing and Internal HTTP(S) load balancing.
        Returns:
        builder
      • timeoutSec

        public RegionBackendServiceArgs.Builder timeoutSec​(@Nullable
                                                           com.pulumi.core.Output<java.lang.Integer> timeoutSec)
        Parameters:
        timeoutSec - How many seconds to wait for the backend before considering it a failed request. Default is 30 seconds. Valid range is [1, 86400].
        Returns:
        builder
      • timeoutSec

        public RegionBackendServiceArgs.Builder timeoutSec​(java.lang.Integer timeoutSec)
        Parameters:
        timeoutSec - How many seconds to wait for the backend before considering it a failed request. Default is 30 seconds. Valid range is [1, 86400].
        Returns:
        builder