Options
All
  • Public
  • Public/Protected
  • All
Menu

Class LoadBalancerService

Hierarchy

  • LoadBalancerService

Index

Constructors

constructor

Methods

addDropletsToLoadBalancer

  • addDropletsToLoadBalancer(id: string, dropletIds: number[]): Promise<void>
  • Add droplets to a Load Balancer

    Example

    import { DigitalOcean } from 'digitalocean-deno';
    
    const client = new DigitalOcean('your-api-key');
    const dropletIds = [
      'droplet-id-1',
      'droplet-id-2',
      'droplet-id-3',
    ];
    await client.loadBalancers.addDropletsToLoadBalancer(dropletIds);

    Parameters

    • id: string
    • dropletIds: number[]

    Returns Promise<void>

addForwardingRulesToLoadBalancer

  • addForwardingRulesToLoadBalancer(id: string, rules: ForwardingRule[]): Promise<void>
  • Add forwarding rules to an existing Load Balancer

    Example

    import { DigitalOcean } from 'digitalocean-deno';
    
    const client = new DigitalOcean('your-api-key');
    const rules = [
      {
        "entry_protocol": "tcp",
        "entry_port": 3306,
        "target_protocol": "tcp",
        "target_port": 3306
      }
    ];
    await client.loadBalancers
       .addForwardingRulesToLoadBalancer('load-balancer-id', rules);

    Parameters

    Returns Promise<void>

createLoadBalancer

  • Create a new Load Balancer

    Example

    import { DigitalOcean } from 'digitalocean-deno';
    
    const client = new DigitalOcean('your-api-key');
    
    const lb = {
      "name": "example-lb-01",
      "region": "nyc3",
      "forwarding_rules": [
        {
          "entry_protocol": "http",
          "entry_port": 80,
          "target_protocol": "http",
          "target_port": 80,
          "certificate_id": "",
          "tls_passthrough": false
        },
        {
          "entry_protocol": "https",
          "entry_port": 444,
          "target_protocol": "https",
          "target_port": 443,
          "tls_passthrough": true
        }
      ],
      "health_check": {
        "protocol": "http",
        "port": 80,
        "path": "/",
        "check_interval_seconds": 10,
        "response_timeout_seconds": 5,
        "healthy_threshold": 5,
        "unhealthy_threshold": 3
      },
      "sticky_sessions": {
        "type": "none"
      },
      "droplet_ids": [
        3164444,
        3164445
      ]
    };
    
    const loadBalancer = await client.loadBalancers.createLoadBalancer(lb);

    Parameters

    Returns Promise<LoadBalancer>

deleteLoadBalancer

  • deleteLoadBalancer(id: string): Promise<void>
  • Delete an existing Load Balancer

    Example

    import { DigitalOcean } from 'digitalocean-deno';
    
    const client = new DigitalOcean('your-api-key');
    await client.loadBalancers.deleteLoadBalancer('load-balancer-id');

    Parameters

    • id: string

    Returns Promise<void>

getAllLoadBalancers

getExistingLoadBalancer

  • getExistingLoadBalancer(id: string): Promise<LoadBalancer>
  • Get an existing Load Balancer

    Example

    import { DigitalOcean } from 'digitalocean-deno';
    
    const client = new DigitalOcean('your-api-key');
    const loadBalancer = await client.loadBalancers.getExistingLoadBalancer('load-balancer-id');

    Parameters

    • id: string

    Returns Promise<LoadBalancer>

removeDropletsFromLoadBalancer

  • removeDropletsFromLoadBalancer(id: string, dropletIds: number[]): Promise<void>
  • Remove droplets from a Load Balancer

    Example

    import { DigitalOcean } from 'digitalocean-deno';
    
    const client = new DigitalOcean('your-api-key');
    const dropletIds = [
      'droplet-id-1',
      'droplet-id-2',
      'droplet-id-3',
    ];
    await client.loadBalancers.removeDropletsFromLoadBalancer('load-balancer-id', dropletIds);

    Parameters

    • id: string
    • dropletIds: number[]

    Returns Promise<void>

removeForwardingRulesFromLoadBalancer

  • removeForwardingRulesFromLoadBalancer(id: string, rules: ForwardingRule[]): Promise<void>
  • Remove forwarding rules from an existing Load Balancer

    Example

    import { DigitalOcean } from 'digitalocean-deno';
    
    const client = new DigitalOcean('your-api-key');
    const rules = [
      {
        "entry_protocol": "tcp",
        "entry_port": 3306,
        "target_protocol": "tcp",
        "target_port": 3306
      }
    ];
    await client.loadBalancers
       .removeForwardingRulesFromLoadBalancer('load-balancer-id', rules);

    Parameters

    Returns Promise<void>

updateLoadBalancer

  • Update an existing Load Balancer

    Example

    import { DigitalOcean } from 'digitalocean-deno';
    
    const client = new DigitalOcean('your-api-key');
    
    const lb = {
      "name": "example-lb-01",
      "region": "nyc3",
      "algorithm": "least_connections",
      "forwarding_rules": [
        {
          "entry_protocol": "http",
          "entry_port": 80,
          "target_protocol": "http",
          "target_port": 80
        },
        {
          "entry_protocol": "https",
          "entry_port": 444,
          "target_protocol": "https",
          "target_port": 443,
          "tls_passthrough": true
        }
      ],
      "health_check": {
        "protocol": "http",
        "port": 80,
        "path": "/",
        "check_interval_seconds": 10,
        "response_timeout_seconds": 5,
        "healthy_threshold": 5,
        "unhealthy_threshold": 3
      },
      "sticky_sessions": {
        "type": "cookies",
        "cookie_name": "DO_LB",
        "cookie_ttl_seconds": 300
      },
      "droplet_ids": [
        3164444,
        3164445
      ]
    };
    
    const loadBalancer = await client.loadBalancers.updateLoadBalancer(lb);

    Parameters

    Returns Promise<LoadBalancer>

Generated using TypeDoc