Class LoadBalancer
The properties that define a load balancer. For more information, see
Managing a Load Balancer.
To use any of the API operations, you must be authorized in an IAM policy. If you're not authorized,
talk to an administrator. If you're an administrator who needs to write policies to give users access, see
Getting Started with Policies.
For information about endpoints and signing API requests, see
About the API. For information about available SDKs and tools, see
SDKS and Other Tools.
Assembly: OCI.DotNetSDK.Loadbalancer.dll
Syntax
public class LoadBalancer
Properties
BackendSets
Declaration
[JsonProperty(PropertyName = "backendSets")]
public Dictionary<string, BackendSet> BackendSets { get; set; }
Property Value
Certificates
Declaration
[JsonProperty(PropertyName = "certificates")]
public Dictionary<string, Certificate> Certificates { get; set; }
Property Value
CompartmentId
Declaration
[Required(ErrorMessage = "CompartmentId is required.")]
[JsonProperty(PropertyName = "compartmentId")]
public string CompartmentId { get; set; }
Property Value
Type |
Description |
string |
The OCID of the compartment containing the load balancer.
|
Declaration
[JsonProperty(PropertyName = "definedTags")]
public Dictionary<string, Dictionary<string, object>> DefinedTags { get; set; }
Property Value
DisplayName
Declaration
[Required(ErrorMessage = "DisplayName is required.")]
[JsonProperty(PropertyName = "displayName")]
public string DisplayName { get; set; }
Property Value
Type |
Description |
string |
A user-friendly name. It does not have to be unique, and it is changeable.
Example: example_load_balancer
|
Declaration
[JsonProperty(PropertyName = "freeformTags")]
public Dictionary<string, string> FreeformTags { get; set; }
Property Value
Type |
Description |
Dictionary<string, string> |
Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace.
For more information, see Resource Tags.
Example: {"Department": "Finance"}
|
Hostnames
Declaration
[JsonProperty(PropertyName = "hostnames")]
public Dictionary<string, Hostname> Hostnames { get; set; }
Property Value
Id
Declaration
[Required(ErrorMessage = "Id is required.")]
[JsonProperty(PropertyName = "id")]
public string Id { get; set; }
Property Value
Type |
Description |
string |
The OCID of the load balancer.
|
IpAddresses
Declaration
[JsonProperty(PropertyName = "ipAddresses")]
public List<IpAddress> IpAddresses { get; set; }
Property Value
IsDeleteProtectionEnabled
Declaration
[JsonProperty(PropertyName = "isDeleteProtectionEnabled")]
public bool? IsDeleteProtectionEnabled { get; set; }
Property Value
Type |
Description |
bool? |
Whether or not the load balancer has delete protection enabled.
If "true", the loadbalancer will be protected against deletion if configured to accept traffic.
If "false", the loadbalancer will not be protected against deletion.
Delete protection is not be enabled unless this field is set to "true".
Example: true
|
IsPrivate
Declaration
[JsonProperty(PropertyName = "isPrivate")]
public bool? IsPrivate { get; set; }
Property Value
Type |
Description |
bool? |
Whether the load balancer has a VCN-local (private) IP address.
If "true", the service assigns a private IP address to the load balancer.
If "false", the service assigns a public IP address to the load balancer.
A public load balancer is accessible from the internet, depending on your VCN's
security list rules. For more information about public and
private load balancers, see How Load Balancing Works.
Example: true
|
IsRequestIdEnabled
Declaration
[JsonProperty(PropertyName = "isRequestIdEnabled")]
public bool? IsRequestIdEnabled { get; set; }
Property Value
Type |
Description |
bool? |
Whether or not the load balancer has the Request Id feature enabled for HTTP listeners.
If "true", the load balancer will attach a unique request id header to every request
passed through from the load balancer to load balancer backends. This same request id
header also will be added to the response the lb received from the backend handling
the request before the load balancer returns the response to the requestor. The name
of the unique request id header is set the by value of requestIdHeader.
If "false", the loadbalancer not add this unique request id header to either the request
passed through to the load balancer backends nor to the reponse returned to the user.
Example: true
|
LifecycleState
Declaration
[Required(ErrorMessage = "LifecycleState is required.")]
[JsonProperty(PropertyName = "lifecycleState")]
[JsonConverter(typeof(ResponseEnumConverter))]
public LoadBalancer.LifecycleStateEnum? LifecycleState { get; set; }
Property Value
Listeners
Declaration
[JsonProperty(PropertyName = "listeners")]
public Dictionary<string, Listener> Listeners { get; set; }
Property Value
NetworkSecurityGroupIds
Declaration
[JsonProperty(PropertyName = "networkSecurityGroupIds")]
public List<string> NetworkSecurityGroupIds { get; set; }
Property Value
Type |
Description |
List<string> |
An array of NSG OCIDs associated with the load
balancer.
During the load balancer's creation, the service adds the new load balancer to the specified NSGs.
The benefits of associating the load balancer with NSGs include:
- NSGs define network security rules to govern ingress and egress traffic for the load balancer.
- The network security rules of other resources can reference the NSGs associated with the load balancer
to ensure access.
Example: ["ocid1.nsg.oc1.phx.unique_ID"]
|
PathRouteSets
Declaration
[JsonProperty(PropertyName = "pathRouteSets")]
public Dictionary<string, PathRouteSet> PathRouteSets { get; set; }
Property Value
Declaration
[JsonProperty(PropertyName = "requestIdHeader")]
public string RequestIdHeader { get; set; }
Property Value
Type |
Description |
string |
If isRequestIdEnabled is true then this field contains the name of the header field
that contains the unique request id that is attached to every request from
the load balancer to the load balancer backends and to every response from the load
balancer.
If a request to the load balancer already contains a header with same name as specified
in requestIdHeader then the load balancer will not change the value of that field.
If this field is set to "" this field defaults to X-Request-Id.
|
RoutingPolicies
Declaration
[JsonProperty(PropertyName = "routingPolicies")]
public Dictionary<string, RoutingPolicy> RoutingPolicies { get; set; }
Property Value
RuleSets
Declaration
[JsonProperty(PropertyName = "ruleSets")]
public Dictionary<string, RuleSet> RuleSets { get; set; }
Property Value
ShapeDetails
Declaration
[JsonProperty(PropertyName = "shapeDetails")]
public ShapeDetails ShapeDetails { get; set; }
Property Value
ShapeName
Declaration
[Required(ErrorMessage = "ShapeName is required.")]
[JsonProperty(PropertyName = "shapeName")]
public string ShapeName { get; set; }
Property Value
Type |
Description |
string |
A template that determines the total pre-provisioned bandwidth (ingress plus egress).
To get a list of available shapes, use the {@link #listShapes(ListShapesRequest) listShapes}
operation.
Example: 100Mbps
|
SslCipherSuites
Declaration
[JsonProperty(PropertyName = "sslCipherSuites")]
public Dictionary<string, SSLCipherSuite> SslCipherSuites { get; set; }
Property Value
SubnetIds
Declaration
[JsonProperty(PropertyName = "subnetIds")]
public List<string> SubnetIds { get; set; }
Property Value
Declaration
[JsonProperty(PropertyName = "systemTags")]
public Dictionary<string, Dictionary<string, object>> SystemTags { get; set; }
Property Value
Type |
Description |
Dictionary<string, Dictionary<string, object>> |
System tags for this resource. Each key is predefined and scoped to a namespace.
For more information, see Resource Tags.
System tags can be viewed by users, but can only be created by the system.
Example: {"orcl-cloud": {"free-tier-retained": "true"}}
|
TimeCreated
Declaration
[Required(ErrorMessage = "TimeCreated is required.")]
[JsonProperty(PropertyName = "timeCreated")]
public DateTime? TimeCreated { get; set; }
Property Value
Type |
Description |
DateTime? |
The date and time the load balancer was created, in the format defined by RFC3339.
Example: 2016-08-25T21:10:29.600Z
|
Declaration
[JsonProperty(PropertyName = "zprTags")]
public Dictionary<string, Dictionary<string, object>> ZprTags { get; set; }
Property Value
Type |
Description |
Dictionary<string, Dictionary<string, object>> |
Extended Defined tags for ZPR for this resource. Each key is predefined and scoped to a namespace.
Example: {"Oracle-ZPR": {"MaxEgressCount": {"value":"42","mode":"audit", "usagetype" : "zpr"}}}
|