Add forwarding rules to an existing Load Balancer
import { DigitalOcean } from 'digitalocean-js';
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);
Create a new Load Balancer
import { DigitalOcean } from 'digitalocean-js';
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);
Delete an existing Load Balancer
import { DigitalOcean } from 'digitalocean-js';
const client = new DigitalOcean('your-api-key');
await client.loadBalancers.deleteLoadBalancer('load-balancer-id');
Get all existing Load Balancers
import { DigitalOcean } from 'digitalocean-js';
const client = new DigitalOcean('your-api-key');
const loadBalancers = await client.loadBalancers.getAllLoadBalancers();
Get an existing Load Balancer
import { DigitalOcean } from 'digitalocean-js';
const client = new DigitalOcean('your-api-key');
const loadBalancer = await client.loadBalancers.getExistingLoadBalancer('load-balancer-id');
Remove droplets from a Load Balancer
import { DigitalOcean } from 'digitalocean-js';
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);
Remove forwarding rules from an existing Load Balancer
import { DigitalOcean } from 'digitalocean-js';
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);
Update an existing Load Balancer
import { DigitalOcean } from 'digitalocean-js';
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);
Generated using TypeDoc
Add droplets to a Load Balancer
Example