Skip to content

fm load-balancer ​

Reference for the fm load-balancer command group (auto-generated from fm load-balancer --help).

fm load-balancer ​

text
Manage load balancers, listeners, pools, members, and health monitors.

Type decision tree:
  l7 (default)      - HTTP/HTTPS/TLS termination, header insertion,
                      PROXY protocol. Runs on a managed data-plane VM.
  l4                - TCP/UDP/SCTP only. No HTTP/HTTPS listeners, no header
                      insertion, no TLS termination, no PROXY protocol. Zero VM
                      overhead, source-IP preserving.

  There is no in-place type migration: destroy and recreate to switch.

Listener allowed-cidr:
  Listener access is deny-by-default. You MUST pass --allowed-cidr at least once.
  To allow all sources explicitly, pass --allowed-cidr 0.0.0.0/0.
  On an l4 load balancer 0.0.0.0/0 is the only accepted value: it cannot
  restrict sources at the listener. The client IP is preserved, so restrict
  sources in the backend members' security group instead.

PROXY protocol caveat:
  When a pool sets --proxy-protocol v1|v2, the backend members MUST be configured
  to accept PROXY protocol headers or traffic will break. Acknowledge with
  --proxy-protocol-ack (or confirm interactively).

Examples:
  fm lb create --name web-lb --vpc vpc-123 --subnet subnet-456
  fm lb create --name l4-lb --vpc vpc-123 --subnet subnet-456 --type l4
  fm lb list
  fm lb get web-lb
  fm lb listener create --lb web-lb --name https --protocol https --port 443 --allowed-cidr 0.0.0.0/0
  fm lb pool create --lb web-lb --name web-pool --protocol http --algorithm round_robin
  fm lb member create --pool pool-789 --address 10.0.1.10 --port 8080
  fm lb delete web-lb

Usage:
  fm load-balancer [command]

Aliases:
  load-balancer, lb, loadbalancer, lbs

Available Commands:
  create         Create a load balancer
  delete         Delete a load balancer
  get            Get load balancer details
  health-monitor Manage pool health monitors
  list           List load balancers
  listener       Manage load balancer listeners
  member         Manage pool members
  pool           Manage load balancer pools
  tags           Read and replace a load balancer's tags
  update         Update a load balancer

Flags:
  -h, --help   help for load-balancer

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

Use "fm load-balancer [command] --help" for more information about a command.

fm load-balancer create ​

text
Create a new load balancer.

The load balancer is provisioned asynchronously and can take a few minutes. By
default the command waits until it becomes active. Use --no-wait to return
immediately.

Type:
  l7 (default)      - HTTP/HTTPS/TLS, header insertion, PROXY protocol.
  l4                - TCP/UDP/SCTP only, source-IP preserving, lower overhead.

Scheme:
  internal (default) - private VIP only, reachable within the VPC.
  public             - attach a pre-allocated public IP (--public-ip) to
                       the VIP for external reachability.

Examples:
  fm lb create --name web-lb --vpc vpc-123 --subnet subnet-456
  fm lb create --name l4-lb --vpc vpc-123 --subnet subnet-456 --type l4
  fm lb create --name pub-lb --vpc vpc-123 --subnet subnet-456 --scheme public --public-ip pip-789
  fm lb create --name web-lb --vpc vpc-123 --subnet subnet-456 --flavor lb-large --no-wait

Usage:
  fm load-balancer create [flags]

Flags:
      --description string   load balancer description
      --flavor string        load-balancer flavor ID (type l7 only)
  -h, --help                 help for create
      --name string          load balancer name (required)
      --no-wait              return immediately instead of waiting for provisioning
      --public-ip string     ID of a pre-allocated public IP to attach (required when --scheme public)
      --scheme string        reachability: internal (private VIP only) or public (attach a public IP) (default "internal")
      --subnet string        subnet ID (required)
      --tag strings          tags in key=value format
      --type string          load-balancer type: l7 (default) or l4 (default "l7")
      --vip-address string   requested VIP address
      --vpc string           VPC ID (required)

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer delete ​

text
Delete a load balancer.

Deletion cascades to all listeners, pools, and members. The
delete is asynchronous; by default the command waits until the load balancer is
gone. Use --no-wait to return immediately.

Examples:
  fm lb delete lb-123
  fm lb delete lb-123 --force --no-wait

Usage:
  fm load-balancer delete <load-balancer-id> [flags]

Flags:
      --force     skip confirmation prompt
  -h, --help      help for delete
      --no-wait   return immediately instead of waiting for deletion

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer get ​

text
Get detailed information about a specific load balancer.

Usage:
  fm load-balancer get <load-balancer-id> [flags]

Flags:
  -h, --help   help for get

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer health-monitor ​

text
Manage the health monitor of a load balancer pool.

A pool has at most one health monitor. It is scoped to a pool via --pool; the
owning load balancer is resolved automatically, or pass --lb to target it
directly and skip the lookup.

Examples:
  fm lb health-monitor create --pool pool-1 --type http --url-path /healthz
  fm lb health-monitor create --pool pool-1 --type tcp --delay 5 --timeout 3 --max-retries 3
  fm lb health-monitor create --lb lb-123 --pool pool-1 --type tcp
  fm lb health-monitor create --pool pool-1 --type tcp --tag env=prod
  fm lb health-monitor get --pool pool-1
  fm lb health-monitor tags get --pool pool-1
  fm lb health-monitor delete --pool pool-1

Usage:
  fm load-balancer health-monitor [command]

Aliases:
  health-monitor, health-monitors, hm, healthmonitor

Available Commands:
  create      Create a health monitor
  delete      Delete the pool health monitor
  get         Get the pool health monitor
  tags        Read and replace a health monitor's tags
  update      Update the pool health monitor

Flags:
  -h, --help          help for health-monitor
      --lb string     load balancer ID that owns the pool (optional; skips the owning-LB lookup)
      --pool string   pool ID (required)

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

Use "fm load-balancer health-monitor [command] --help" for more information about a command.

fm load-balancer health-monitor create ​

text
Create a health monitor on a pool.

Usage:
  fm load-balancer health-monitor create [flags]

Flags:
      --delay int            seconds between health checks (default 5)
  -h, --help                 help for create
      --http-method string   HTTP method to use for probing
      --max-retries int      failed checks before marking a member down (default 3)
      --name string          health monitor name
      --no-wait              return once the request is accepted instead of waiting for it to complete
      --tag strings          tags in key=value format (repeatable)
      --timeout int          seconds to wait for a response (default 3)
      --type string          health check type: tcp, http, https (required)
      --url-path string      HTTP URL path to probe

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID that owns the pool (optional; skips the owning-LB lookup)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
      --pool string     pool ID (required)
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer health-monitor delete ​

text
Delete the health monitor of a pool.

Usage:
  fm load-balancer health-monitor delete [flags]

Flags:
  -h, --help   help for delete

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID that owns the pool (optional; skips the owning-LB lookup)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
      --pool string     pool ID (required)
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer health-monitor get ​

text
Get the health monitor of a pool.

Usage:
  fm load-balancer health-monitor get [flags]

Flags:
  -h, --help   help for get

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID that owns the pool (optional; skips the owning-LB lookup)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
      --pool string     pool ID (required)
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer health-monitor tags ​

text
Read and replace a health monitor's tags

Usage:
  fm load-balancer health-monitor tags [command]

Aliases:
  tags, tag

Available Commands:
  get         Show a health monitor's tags
  set         Replace a health monitor's tags

Flags:
  -h, --help   help for tags

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID that owns the pool (optional; skips the owning-LB lookup)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
      --pool string     pool ID (required)
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

Use "fm load-balancer health-monitor tags [command] --help" for more information about a command.
fm load-balancer health-monitor tags get ​
text
Show a health monitor's tags

Usage:
  fm load-balancer health-monitor tags get [flags]

Flags:
  -h, --help   help for get

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID that owns the pool (optional; skips the owning-LB lookup)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
      --pool string     pool ID (required)
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)
fm load-balancer health-monitor tags set ​
text
Replace a pool health monitor's tags in place with exactly the given
set (replace semantics — any tag not listed is removed).

The set you pass IS the resulting set. To ADD one tag without disturbing the
others, read the current ones first with 'fm lb health-monitor tags get' and
pass them all back.

Use --clear to remove every tag.

These are the health monitor's OWN tags. Its pool and the load balancer carry
their own and are untouched.

The write is asynchronous — it is accepted immediately and applied by a
workflow, so a following 'tags get' may briefly still show the old set.

Examples:
  fm lb health-monitor tags set --pool pool-1 --tag env=prod --tag owner=team-a
  fm lb health-monitor tags set --pool pool-1 --clear

Usage:
  fm load-balancer health-monitor tags set --pool <pool-id> --tag <key=value> [--tag <key=value> ...] [flags]

Flags:
      --clear         remove ALL tags (mutually exclusive with --tag)
  -h, --help          help for set
      --tag strings   tag in key=value format (repeatable; replace semantics)

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID that owns the pool (optional; skips the owning-LB lookup)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
      --pool string     pool ID (required)
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer health-monitor update ​

text
Update the health monitor of a pool.

Usage:
  fm load-balancer health-monitor update [flags]

Flags:
      --delay int            seconds between health checks
  -h, --help                 help for update
      --http-method string   HTTP method to use for probing
      --max-retries int      failed checks before marking a member down
      --name string          new name
      --no-wait              return once the request is accepted instead of waiting for it to complete
      --timeout int          seconds to wait for a response
      --url-path string      HTTP URL path to probe

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID that owns the pool (optional; skips the owning-LB lookup)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
      --pool string     pool ID (required)
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer list ​

text
List all load balancers.

Examples:
  fm lb list
  fm lb list --name web-lb

Usage:
  fm load-balancer list [flags]

Flags:
  -h, --help          help for list
      --name string   filter by name

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer listener ​

text
Manage load balancer listeners.

Listener access is deny-by-default: you MUST pass --allowed-cidr at least once on
create. To allow all sources explicitly, pass --allowed-cidr 0.0.0.0/0. On an l4
load balancer 0.0.0.0/0 is the only accepted value; restrict sources in the
backend members' security group instead (the client IP is preserved).

L7 protocols (http, https, terminated_https), --insert-header and
--tls-certificate require the l7 type. They are rejected on l4 load
balancers, which are L4-only (tcp, udp, sctp).

Examples:
  fm lb listener create --lb lb-123 --name https --protocol https --port 443 --allowed-cidr 0.0.0.0/0
  fm lb listener create --lb l7-lb-123 --name tcp --protocol tcp --port 5432 --allowed-cidr 10.0.0.0/8   # restricting sources needs an l7 LB
  fm lb listener list --lb lb-123
  fm lb listener delete --lb lb-123 listener-1

Usage:
  fm load-balancer listener [command]

Aliases:
  listener, listeners

Available Commands:
  create      Create a listener
  delete      Delete a listener
  get         Get listener details
  list        List listeners
  update      Update a listener

Flags:
  -h, --help        help for listener
      --lb string   load balancer ID (required)

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

Use "fm load-balancer listener [command] --help" for more information about a command.

fm load-balancer listener create ​

text
Create a listener on a load balancer.

You MUST pass --allowed-cidr at least once (deny-by-default). Pass
--allowed-cidr 0.0.0.0/0 to allow all sources explicitly. On an l4 load
balancer 0.0.0.0/0 is the only accepted value; restrict sources in the
backend members' security group instead (the client IP is preserved).

Usage:
  fm load-balancer listener create [flags]

Flags:
      --allowed-cidr strings     allowed source CIDR (required, repeatable; use 0.0.0.0/0 to allow all)
      --default-pool string      default pool ID
      --description string       listener description
  -h, --help                     help for create
      --insert-header strings    headers to insert in key=value format (type l7 only)
      --name string              listener name (required)
      --no-wait                  return once the request is accepted instead of waiting for it to complete
      --port int                 listener port (required)
      --protocol string          protocol: tcp, udp, http, https, terminated_https, sctp (required)
      --tls-certificate string   TLS certificate ID (type l7 only)

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID (required)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer listener delete ​

text
Delete a listener from a load balancer.

Usage:
  fm load-balancer listener delete <listener-id> [flags]

Flags:
  -h, --help   help for delete

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID (required)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer listener get ​

text
Get detailed information about a specific listener.

Usage:
  fm load-balancer listener get <listener-id> [flags]

Flags:
  -h, --help   help for get

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID (required)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer listener list ​

text
List the listeners of a load balancer.

Usage:
  fm load-balancer listener list [flags]

Flags:
  -h, --help   help for list

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID (required)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer listener update ​

text
Update a listener's name or description.

Usage:
  fm load-balancer listener update <listener-id> [flags]

Flags:
      --allowed-cidr strings   replace allowed source CIDRs
      --description string     new description
  -h, --help                   help for update
      --name string            new name
      --no-wait                return once the request is accepted instead of waiting for it to complete

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID (required)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer member ​

text
Manage members of a load balancer pool.

Members are scoped to a pool via --pool. The owning load balancer is resolved
automatically from the pool; pass --lb to target it directly and skip the lookup.

Examples:
  fm lb member create --pool pool-1 --address 10.0.1.10 --port 8080
  fm lb member create --lb lb-123 --pool pool-1 --address 10.0.1.10 --port 8080
  fm lb member create --pool pool-1 --address 10.0.2.10 --port 8080 --weight 2
  fm lb member create --pool pool-1 --address 192.168.9.5 --port 8080 --cross-vpc
  fm lb member list --pool pool-1
  fm lb member delete --pool pool-1 member-1

Usage:
  fm load-balancer member [command]

Aliases:
  member, members

Available Commands:
  create      Create a pool member
  delete      Delete a pool member
  get         Get pool member details
  list        List pool members
  update      Update a pool member

Flags:
  -h, --help          help for member
      --lb string     load balancer ID that owns the pool (optional; skips the owning-LB lookup)
      --pool string   pool ID (required)

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

Use "fm load-balancer member [command] --help" for more information about a command.

fm load-balancer member create ​

text
Create a member on a pool.

Usage:
  fm load-balancer member create [flags]

Flags:
      --address string   member IP address (required)
      --cross-vpc        acknowledge the member is outside the load balancer's VPC subnet
  -h, --help             help for create
      --name string      member name
      --no-wait          return once the request is accepted instead of waiting for it to complete
      --port int         member port (required)
      --subnet string    member subnet ID
      --weight int       member weight

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID that owns the pool (optional; skips the owning-LB lookup)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
      --pool string     pool ID (required)
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer member delete ​

text
Delete a member from a pool.

Usage:
  fm load-balancer member delete <member-id> [flags]

Flags:
  -h, --help   help for delete

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID that owns the pool (optional; skips the owning-LB lookup)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
      --pool string     pool ID (required)
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer member get ​

text
Get detailed information about a specific pool member.

Usage:
  fm load-balancer member get <member-id> [flags]

Flags:
  -h, --help   help for get

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID that owns the pool (optional; skips the owning-LB lookup)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
      --pool string     pool ID (required)
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer member list ​

text
List the members of a pool.

Usage:
  fm load-balancer member list [flags]

Flags:
  -h, --help   help for list

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID that owns the pool (optional; skips the owning-LB lookup)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
      --pool string     pool ID (required)
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer member update ​

text
Update a pool member's name or weight.

Usage:
  fm load-balancer member update <member-id> [flags]

Flags:
  -h, --help          help for update
      --name string   new name
      --no-wait       return once the request is accepted instead of waiting for it to complete
      --weight int    new weight

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID that owns the pool (optional; skips the owning-LB lookup)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
      --pool string     pool ID (required)
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer pool ​

text
Manage load balancer pools of backend members.

PROXY protocol (--proxy-protocol v1|v2) makes the load balancer prepend a PROXY
header so members see the real client source IP. The backend members MUST be
configured to accept it or traffic will break - acknowledge with
--proxy-protocol-ack. PROXY protocol requires type l7; it is
rejected on l4 load balancers.

Examples:
  fm lb pool create --lb lb-123 --name web --protocol http --algorithm round_robin
  fm lb pool create --lb lb-123 --listener listener-1 --name web --protocol http --algorithm least_connections
  fm lb pool create --lb lb-123 --name proxied --protocol tcp --algorithm source_ip --proxy-protocol v2 --proxy-protocol-ack
  fm lb pool create --lb lb-123 --name web --protocol http --algorithm round_robin --tag env=prod
  fm lb pool list --lb lb-123
  fm lb pool tags get --lb lb-123 pool-1
  fm lb pool delete --lb lb-123 pool-1

Usage:
  fm load-balancer pool [command]

Aliases:
  pool, pools

Available Commands:
  create      Create a pool
  delete      Delete a pool
  get         Get pool details
  list        List pools
  tags        Read and replace a pool's tags
  update      Update a pool

Flags:
  -h, --help        help for pool
      --lb string   load balancer ID (required)

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

Use "fm load-balancer pool [command] --help" for more information about a command.

fm load-balancer pool create ​

text
Create a pool on a load balancer.

Usage:
  fm load-balancer pool create [flags]

Flags:
      --algorithm string        algorithm: round_robin, least_connections, source_ip, source_ip_port (required)
      --description string      pool description
  -h, --help                    help for create
      --listener string         listener ID to attach the pool to
      --name string             pool name (required)
      --no-wait                 return once the request is accepted instead of waiting for it to complete
      --protocol string         protocol: tcp, udp, http, https, terminated_https, sctp (required)
      --proxy-protocol string   PROXY protocol: none, v1, v2 (type l7 only) (default "none")
      --proxy-protocol-ack      acknowledge that members accept PROXY protocol
      --tag strings             tags in key=value format (repeatable)

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID (required)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer pool delete ​

text
Delete a pool from a load balancer.

Usage:
  fm load-balancer pool delete <pool-id> [flags]

Flags:
  -h, --help   help for delete

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID (required)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer pool get ​

text
Get detailed information about a specific pool.

Usage:
  fm load-balancer pool get <pool-id> [flags]

Flags:
  -h, --help   help for get

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID (required)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer pool list ​

text
List the pools of a load balancer.

Usage:
  fm load-balancer pool list [flags]

Flags:
  -h, --help   help for list

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID (required)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer pool tags ​

text
Read and replace a pool's tags

Usage:
  fm load-balancer pool tags [command]

Aliases:
  tags, tag

Available Commands:
  get         Show a pool's tags
  set         Replace a pool's tags

Flags:
  -h, --help   help for tags

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID (required)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

Use "fm load-balancer pool tags [command] --help" for more information about a command.
fm load-balancer pool tags get ​
text
Show a pool's tags

Usage:
  fm load-balancer pool tags get <pool-id> [flags]

Flags:
  -h, --help   help for get

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID (required)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)
fm load-balancer pool tags set ​
text
Replace a pool's tags in place with exactly the given set (replace
semantics — any tag not listed is removed).

The set you pass IS the resulting set. To ADD one tag without disturbing the
others, read the current ones first with 'fm lb pool tags get' and pass them
all back.

Use --clear to remove every tag.

These are the pool's OWN tags. The load balancer, its listeners, its members
and the pool's health monitor carry their own and are untouched.

The write is asynchronous — it is accepted immediately and applied by a
workflow, so a following 'tags get' may briefly still show the old set.

Examples:
  fm lb pool tags set --lb lb-123 pool-1 --tag env=prod --tag owner=team-a
  fm lb pool tags set --lb lb-123 pool-1 --clear

Usage:
  fm load-balancer pool tags set <pool-id> --tag <key=value> [--tag <key=value> ...] [flags]

Flags:
      --clear         remove ALL tags (mutually exclusive with --tag)
  -h, --help          help for set
      --tag strings   tag in key=value format (repeatable; replace semantics)

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID (required)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer pool update ​

text
Update a pool's name, description, or algorithm.

Usage:
  fm load-balancer pool update <pool-id> [flags]

Flags:
      --algorithm string     new algorithm: round_robin, least_connections, source_ip, source_ip_port
      --description string   new description
  -h, --help                 help for update
      --name string          new name
      --no-wait              return once the request is accepted instead of waiting for it to complete

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --lb string       load balancer ID (required)
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer tags ​

text
Read and replace a load balancer's tags

Usage:
  fm load-balancer tags [command]

Aliases:
  tags, tag

Available Commands:
  get         Show a load balancer's tags
  set         Replace a load balancer's tags

Flags:
  -h, --help   help for tags

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

Use "fm load-balancer tags [command] --help" for more information about a command.

fm load-balancer tags get ​

text
Show the resource's tags: yours one key=value per line, then any keys the
platform manages, listed separately as read-only. Those are kept when you
replace your tags, so they are not part of the set to pass to 'tags set'.

Under -o json or -o yaml only your own tags are printed — exactly the set 'tags
set' accepts, so the output can be fed back to it. Pass --include-platform to
print every key instead, the platform's included.

A key or value that contains a comma, '=', a quote, leading, trailing or
repeated spaces, or any unusual character is shown quoted, and one longer than
256 characters is cut short with '…'.

Usage:
  fm load-balancer tags get <load-balancer-id> [flags]

Flags:
  -h, --help               help for get
      --include-platform   under -o json/yaml, print every key, the platform's included (default: only yours, the set 'tags set' accepts)

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer tags set ​

text
Replace a load balancer's tags in place with exactly the given set
(replace semantics — any tag not listed is removed).

The set you pass IS the resulting set. To ADD one tag without disturbing the
others, read the current ones first with 'fm lb tags get' and pass them all
back.

Use --clear to remove every tag.

Keys in the platform's frostmoln_ namespace are Frostmoln's, not yours:
'tags get' lists them apart from your tags, the API refuses a --tag that sets
one, and the replace keeps them. Leave them out; --clear removes only your own
tags.

These are the load balancer's OWN tags. Listeners, pools, members and health
monitors carry their own and are untouched — see 'fm lb pool tags' and
'fm lb health-monitor tags'.

Examples:
  fm lb tags set lb-123 --tag env=prod --tag owner=team-a
  fm lb tags set lb-123 --clear

Usage:
  fm load-balancer tags set <load-balancer-id> --tag <key=value> [--tag <key=value> ...] [flags]

Flags:
      --clear         remove ALL tags (mutually exclusive with --tag)
  -h, --help          help for set
      --tag strings   tag in key=value format (repeatable; replace semantics)

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)

fm load-balancer update ​

text
Update a load balancer's name or description.

Examples:
  fm lb update lb-123 --name new-name
  fm lb update lb-123 --description "Production frontend"

Usage:
  fm load-balancer update <load-balancer-id> [flags]

Flags:
      --description string   new description
  -h, --help                 help for update
      --name string          new name

Global Flags:
      --config string   config file (default is $HOME/.fm/config.yaml)
  -d, --debug           enable debug/verbose output
      --no-color        disable colored output
  -o, --output string   output format: table, json, yaml, wide (default "table")
  -q, --quiet           suppress non-essential output
      --tenant string   tenant ID to operate on (overrides the active/default tenant; also FM_TENANT)